Heater Decoupled since updating to latest firmware

This is for general discussions. Also FAQ can be found here.

Moderator: speedake95

Post Reply
seaton
Posts: 291
Joined: Tue May 14, 2013 9:04 am
Location: Bunbury, Western Australia
Contact:

Heater Decoupled since updating to latest firmware

Post by seaton »

Hi All,

Since updating the latest firmware from the site, my printer will now randomly decouples the heaters through a print job, last time happened about 90% through a 27hour print and 3/4 of a spool was wasted, so was not impressed. Of course I have to reset the printer and will work for another day or so before happening again. Extruders and thermistors are relatively new.

Whats the theory in terms of this new firmware function and can I desensitise it a bit. If I go back to previous firmware then all is working fine.

Stephen....
Stephen...

Felix 2.0 -> Felix 3.0 dual
Simplify3D Slicer, Kisslicer
Have you added your Felix to the Map? http://goo.gl/maps/HajnZ

http://blog.strobotics.com.au

User avatar
DDME-Marc
Posts: 71
Joined: Sun Nov 24, 2013 11:04 pm
Location: New Zealand

Post by DDME-Marc »

Hi Stephen,

My understanding from the Firmware Extruder.ccp file is that during 'Printer::isPowerOn' it will seek the minimum temperature rise (see attached), which in our case is set in the Configuration.h file parameter:

#define DECOUPLING_TEST_MIN_TEMP_RISE 1

My understanding is that if the reading between the last recorded reading and the new reading is less than 1 degree it reads this as a fault.

Although I have left my setting at 1 degree you could try lowering this value to reduce sensitivity.

As an alternative I adjusted the length of time over which to record the temperature rise:

http://forum.felixprinters.com/viewtopic.php?f=4&t=1074

On a separate note also I assume you are still running ABS which like the PET+ I like to use is ideally extruded at much higher temperature of 230~260 degrees (compared to PLA). I have found personally that the new firmware settings for the extruder PID P, I, and D values cause bigger temperature fluctuation at the higher temperatures so I have reset values as per the 0.91 firmware (also found in configuration.h):

#define EXT0_PID_PGAIN_OR_DEAD_TIME 41
#define EXT0_PID_I 0.1
#define EXT0_PID_D 260

So going back to the old settings here might also help.

Cheers,

Marc
Attachments
Extruder-cpp.jpg
Felix 3.0 Dual Head * E3D Titan V6 * Repetier-Host V2.1.3 * Repetier-Firmware 0.92.9 (01/08/17 - Modified) * KISSlicer Pro - 1.6.3 * Arduino 1.8.5 *

kerog
Posts: 117
Joined: Mon Jun 09, 2014 1:54 am

Post by kerog »

This is interesting. I was working with ABS at 225-235, getting a temperature plot that started out clean and got progressively noisier over time. With the new firmware, this would quickly cause decoupling. Incidentally, the decoupling would turn off the heaters, but wouldn't kill the job, which was annoying. Should be a better response.

Anyway, even with the old firmware the noise was there, it just didn't cause an abort. I recently swapped out hot ends to use PLA, leaving the thermistor wiring in place. Now, printing at 195, the noise seems to take much longer to manifest. A number of short prints looked totally clean, and I'm only just now starting to see noise on a long print. Sounds like you're suggesting this is a gain issue in the temperature controller? As a controls engineer, I'm quite curious. Maybe I'll have to start poking around in the firmware controller.

Guillaume suggested that there might be some sort of static buildup from the cable bundle rubbing against the aluminum frame that could affect the thermistor signal.

User avatar
DDME-Marc
Posts: 71
Joined: Sun Nov 24, 2013 11:04 pm
Location: New Zealand

Post by DDME-Marc »

Hi Kerog,

Correct me if I'm wrong here but I personally think the primary cause of the decoupling error in this instance is not noise, rather this error is associated with the fluctuation of temperature. During large temperature fluctuation you will observe a full power cycle (randomly) initiate with the extruder during a print. Any time full power for the extruder is activated the firmware will seeks to satisfy the decoupled test requirements, and if it fails to do so in the allotted time frame will trip out.

This is where I believe the PID values from the extruder come into play and if less than ideal can potentially wreak havoc, as in Stephen's 17 hour lost print (gutted to read about that).

Although ideal PID values can be automatically found by running the M303 command (in my case M303 P0 S250), this test is done with the extruder under no thermal loading (from running the filament).

If you input the resulting P, I, and D values from the test you will find that the extruder will struggle to hold temperature during normal printing operation. My test result suggested P=7, I =0.38, and D=33. This is a big difference from the original P=125, I=0.5, and D=650 in the original 0.92 firmware.

So I ran some manual tests (again at 250 degrees) observing the extruder under load, and after many meters of filament found nominal PID values of P=20, I=0.4, and D=46 which did not initiate a full power cycle under normal operating conditions, yet could hold a reasonably steady extruder temperature.

Cheers,

Marc
Attachments
Output_extruder.jpg
Felix 3.0 Dual Head * E3D Titan V6 * Repetier-Host V2.1.3 * Repetier-Firmware 0.92.9 (01/08/17 - Modified) * KISSlicer Pro - 1.6.3 * Arduino 1.8.5 *

seaton
Posts: 291
Joined: Tue May 14, 2013 9:04 am
Location: Bunbury, Western Australia
Contact:

Post by seaton »

I have noticed that with the firmware update the Higher Temperatures seems less stable and was thinking of tuning it for ABS, and as Marc has surmised I tend to agree that these fluctuations have probably caused my problems, although I will also look at extending the time to 30secs as Marc has done.


Has anyone looked at the Deadtime control in the Repetier firmware as per Repetiers post on the subject http://www.repetier.com/dead-time-control/

Stephen...
Stephen...

Felix 2.0 -> Felix 3.0 dual
Simplify3D Slicer, Kisslicer
Have you added your Felix to the Map? http://goo.gl/maps/HajnZ

http://blog.strobotics.com.au

User avatar
gfeliksdal
Site Admin
Posts: 405
Joined: Sat Feb 25, 2012 10:40 pm
Location: Netherlands
Contact:

Post by gfeliksdal »

@DDE-Marc, the pid values you write, work very well in terms of keeping a stable tem, also the power output is much less spikey then the current and previous firmware values. The only downside is the overshoot when just reaching setpoint.

Although spikey, the latest firmware values were working well on the printers we have here, my experience was that the old values had difficulty to keep their setpoint at higher temperatures. I found that previous values did not work as good as I wanted for the following cases:

- Recovering from temperature drop, (in case you turn off heater and then turn it back on), so this would cause a heater decoupled as well.
- Keeping steady setpoint at higher temperatures.

Will do some more testing with your values on more printers, but so far so good.
I need to find values which satisfy these cases:
- Steady setpoint, at full temperature range
- Minimum amount of overshoot
- Fast recovery when changing temperatures, especially for dual head.
- Stable as possible temp during extrusion and/or printing.

Also some boundaries are the following:
- heater decoupled must be enabled in case of:
1. Thermistor falls out of heaterblock
2. Heater cartridge falls out of heaterblock
3. Thermistor or heater cartridge defect
Situation 2 is the most dangerous, because the heater cartridge can heat up to glowing hot in about 18 seconds (I don't know the temperature, but it must be in excess of 400degC). So this is basically a decouple time you want to stay below, to prevent potential fire.

The 10 seconds extra safety used in the first firmware appeared to be a too tight margin to cope with all variations of the printers in the field, especially in cases of temperature variation. For instance when turning off the heater and then turning it back on. This was the reason of increasing this value to 15 seconds.

What do you mean by power cycle? Do you mean the control board turns off?

@seaton, the deadtime control works very well for the heated bed and is the standard type of control. For the hot-ends I couldn't get very good results. If I'm correct, the ideal situation for this type of controller is where the heating element cools at the same rate as it heats up. For the hot-ends to get this, we have to limit the power of the heaters.

User avatar
DDME-Marc
Posts: 71
Joined: Sun Nov 24, 2013 11:04 pm
Location: New Zealand

Post by DDME-Marc »

Hi Guillaume,

I just completed another successful print free of decoupling errors using updated PID values, complete with the decoupling (time) parameter set down to 20 seconds.

As mentioned in my last post these new values cause even less overshoot compared to earlier PID values I reported to the forum. Initial observations show they remain more stable too at around the 250 degrees working temperature.

The extra stability I believe has been achieved by also using the PID intergral drive values, which effectively limits the longer deviations from the target temperature.
Configuration-h.jpg
This run (as with previous runs recently) included extruder swap over. Attached is a 60 minute snap shot which includes the extruder swap over. The swap over was smooth and temperatures and extruder power load settled very quickly. For reference the second extruder was being kept warm at 200 degrees prior to swap over.
Output_extruder_1.jpg
In reference to what I meant by the extruder power cycle, I understand from the firmware that P, I, and D values only become active once you fall within the parameter value of the 'PID control range'. effectively any temperature value which fall outside this PID control range then permits the extruder to request maximum (or in other word full) power.

I will keep dropping the decoupling parameter value with my current PID values over the next few prints, however I am desperately low on white PET+ filament requested (after earlier decoupling failures). Although filament were despatched earlier today from the US I don't expect delivery until the end of this week, so my contributions to this problem (from this point )will be somewhat limited

Cheers,

Marc
Felix 3.0 Dual Head * E3D Titan V6 * Repetier-Host V2.1.3 * Repetier-Firmware 0.92.9 (01/08/17 - Modified) * KISSlicer Pro - 1.6.3 * Arduino 1.8.5 *

Ondra
Posts: 4
Joined: Sat Oct 18, 2014 8:13 pm

Post by Ondra »

Hello everybody,
I have the same problem with error " One heater seems decoupled from thermistor - disabling all for safety! " with Felix 3.0 single extruder, 0.92 firmware, DIY. This kit is 3 weeks old and first around 20 hour works fine. After this start my problems with decoupling of heater and now I can print anything to end without problem. I tried change P,I,D values as described Marc, I tried change Test max hold variance also downgrade firmware to 0.91 but I still have the same problem. Any idea what can I do? Picture of temperature with error attach.
Thank you
Attachments
Screenshot 2014-10-21 18.09.04.png

Ondra
Posts: 4
Joined: Sat Oct 18, 2014 8:13 pm

Post by Ondra »

Last thing what I discovered you can see on graph below. I laboured with PID regulation value and still not perfect but when I tried print interested me that when extruder print closer to 0 on X axis the noise from temperature sensor was bigger and bigger. You can see on graph. Only thing what changing were position of top (extruder) cables. Closer to zero of X axis cables laid closer to aluminium frame and shape looks more as electric coil. I tried lift the cables and on graph you can see that increasing noise disappear. I don't know if this is solution of my problem but signal from temperature sensor looks much better. For upgrade I used small piece of rubber rope... :-)
Attachments
20141021_193446.jpg
Screenshot 2014-10-21 19.28.54.png

Dreide
Posts: 176
Joined: Sun Sep 29, 2013 12:32 am
Location: Lausanne, Switzerland

Post by Dreide »

Ondra wrote:Last thing what I discovered you can see on graph below. [...] For upgrade I used small piece of rubber rope... :-)
The temperature curve indeed looks erratic, so possibly a half broken cable which, for some mechanical reason, gives better contact as the X carriage moves further away from X=0. However, IMHO, your rubber rope "solution" won't really fix it for long but will cause a lot of cable bending (at both ends of the cable spiral) which will result in broken cables eventually. I suggest removing the spiral and having a close look at the temp sensor cable, possibly bending it here and there while watching out for correlated noise in the temp curve.
Regarding the temp and power curves in your earlier post, what puzzles me is that the bed heater is switched off quite some time after the extruder heater, and also the time of the error message seems to fit the time when the bed heater was switched off better than the time when the extruder heater was switched off. As if it was actually the bed heating which caused the drop out.
Felix 2.0->3.0dual * Repetier (host+firmware) * KISSlicer Pro, Simplify3D * Cubify Design

Post Reply