Getting E1 Thermal Runaway errors, even after replacing the heating element on Tevo Tarantula
Earlier today I successfully completed a small print (less than 1 hour) on our Tevo Tarantula. When it came time to print the next one, I started preheating for PLA and got an "E1 Thermal Runaway" error. I replaced the heating element with a backup and got no error on preheat.
With an estimated 5+ hrs printing time, the print got about 1 hour in before it quit with another "E1 Thermal Runaway" error. This is with a brand new heating element, the third in about as many months, and I don't do much printing at all.
Is this normal for the elements to be so shoddy or are there settings I need to be changing? I still have the first 2 elements that I thought had died but maybe that's not the issue at all so I'll hang onto them in case I'm overlooking some code to change in Marlin.
I've tried connecting and reconnecting both the wires for the heating element and for the thermistor. I've tightened and loosened the screw holding the thermistor in the heating block. While it did heat up momentarily, the error popped up again after less than a minute:
23:40:57.529 : echo:DEBUG:INFO,ERRORS
23:41:04.974 : PID Autotune start
23:41:37.274 : Error:Heating failed, system stopped! Heater_ID: 0
23:41:37.274 : Error:Printer halted. kill() called!
How can I find out what is wrong?
@Trish I haven't run a PID tune. I've only just learned about what that is so I'm hoping to give it a shot this week sometime.
1 PID Tune
Changing the thermosensor or the heater cartridge is a big change in the system: each of these items has internal errors differing them from each other item. If your thermosensor has a different standard resistance by a small way than the one before, if the resistance of the cartridge is different, then the chip gets readings it does not expect. This is why a change of either of these components (or to a different heater block size/material for the matter) one should run a PID tune, teaching the chip how the new sensor/cartridge behave.
To do this, connect to your Printer via an USB Cable and run a software that can send raw gcode. I prefer Repetier Host, but other software also works. I like to follow the instructions of the e3D v6 assembly manual, but the video by Tom (Thomas Sanladererer) and the RepRap Wiki have excellent explanations too.
M303 E0 S200 C8
- wait for finishing
M301with the values you just got returned. One example might read
M301 P17.28 I0.63 D118.87
M500to update your EEPROM
If this doesn't help, we might have a bigger problem, so let's go troubleshooting! Hardware first, then Firmware.
A few useful hints that Thomas Sanladerer found when he was checking his printers for fire hazards:
- A shorted out thermosensor (closed loop, 0-Resistance) triggers Maxtemp
- A burnt out thermosensor (open loop) triggers Mintemp
- A non-connected or burnt out (open loop) Cartridge triggers thermal runaway, as does any other error with the cartridge that leads to abnormal heating.
2 Check the Hardware
Hardware can fail, we all know that. But luckily there are only 5 items involved that could fail:
2.1 Check all connections
If the heater cartridge is not connected properly, that will result in a Thermal Runaway Error, as the thermosensor does not detect any change.
A non connected thermosensor will trigger a mintemp error, a shorted thermosensor will trigger maxtemp error.
2.2 Check the resistance of the heater cartridge
A broken heater cartridge can have two results: either it conducts no electricity at all (for example if a lead is broken), or it acts as a jumper and has no resistance at all. To check this, use a multimeter and measure the resistance in Ohm by connecting it to the leads of the cartridge while it is dismounted. A broken circuit in the cartridge triggers Thermal Runaway, a shorted out cartridge can break the board in worst case. A pictoral guide for analogue Multimeters.
My e3D light6 in my 12 V TronXY has a resistance of about 5.2 Ω. The Value you will get depends on what kind of heater cartridge you use. For reference: e3D Heater Cartridges are documented to be around 4.8 Ω for 12 V & 30 W, 3.6 Ω for 12 V & 40 W, 19.2 Ω for 24 V 30 W and 14.4 Ω for 24 V 40 W.
If your Value is given as infinite or near 0 Ω, your heater cartridge is broken - Though having 3 defect heater cartridges seems unlikely on first glance, unless something shortens their lifespan considerably.
2.3 Check your supply voltage
Now comes a thing that can be dangerous for you will measure a live circuit. Be aware that you are working with live current when you do this. Do NOT bring your fingers into contact with unshielded wires!
Set your Multimeter to check the Voltage. Connect the test probes to the output of the power supply that runs into the board. Power up the voltage supply. It should read close to 12 or 24V, depending on your machine.
2.4 Check the voltage given by the board
Again, this is measuring live current and can be dangerous. Use maximum care not to fry yourself!
If your Power supply is working, then it might be the board that is not allowing the current to get the heater cartridge. So we need to measure if it gets power. Since I=U/R, and we have established that R is not 0 or infinity (see above), we can establish if there is I by simply measuring U, which is the voltage.
Mount the tips of your multimeter into the clamps that should take the leads for the heater cartridge and set it to measure the Voltage. Make sure they have contact. Connect the machine to power and start it up. Order it to heat up the cartridge. It should show a voltage that is similar to your supply voltage (12/24V).
The Thermosensor might trigger an error if it is faulty but not entirely broken. A broken thermosensor should trigger
MINTEMPfor a broken open and
MAXTEMPfor a shorted out sensor. The only way to test this would be to measure it against items of known temperature, for example using the bed sensor as Benchmark.
3 Check the Firmware
3.1 Thermosensor settings
In some cases, the temperature tables of the thermosensors are not compatible and one has to change the settings for that in the firmware. One of the best rundowns I know is in the e3D light6/v6 firmware manual, if you need more help than this.
In the Marlin 1.9 you do this in
Configuation.h, under the header Thermal Settings. In my Ender 3 this is done in line 289:
#define TEMP_SENSOR_0 5
That means, that my temperature sensor 0 (the one in the hotend) is of type 5, where type 5 is defined in the block above. The relevant line 256 of my file reads:
* 5 : 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (4.7k pullup)
The most common choice in Chinese hotends to use this very 4.7-kiloohm pullup thermistor table, and the actual specific table for most of these is reasonably close to the 5. Other thermosensors can be reasonably overlapping, but in case you change the style of thermosensor, it is generally advised to change this value accordingly1. Always run a PID tuning after changing the thermosensor table!
3.2 Thermal Runaway Protection
The settings for the Thermal Runaway Protection might be worth a look. Maybe it is a little trigger happy?
Configuration_adv.hcontains a block titled Thermal Settings, containing when to trigger the emergency shutdown. For my Ender3 it reads like this:
#define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
From your error log, I guess that your printer has the second line as 30 seconds. It would be technically safe to increase this time to up to 120 seconds, but I strongly suggest not to go over 60 seconds.
1 - I had switched the whole hotend on my TronXY X1 for an e3D light6, and it only needed a PID tune, but in theory I should have also swapped the Firmware to reflect that - but, as said, luckily many Chinese printers use the table 5 even if they are not using the sensor. Table 5 was made for the thermosensors used by e3D.
That's a lot of fantastic info. Thanks! I wasn't aware the changes would be so drastic when replacing the heater. I had previously watched Tom's video and another helpful one, and then tried to run a PID autotune tonight after reading your post. No luck. I get an error right in Repetier Host: "Error:Heating failed, system stopped! Heater_ID: 0." I was able to control the axis movement from RH so I know it's connected. I even tried to reflash the firmware (I needed to move all of that Marlin config stuff to my other PC anyway) but no luck again. I have a copy of the log I will try to post.
When I tried to reflash the firmware, this is the log Arduino IDE output: Marlin Log.
@dugost that seems to hint there is something different amiss... waaaaaait... heating Failed, system stopped is Thermal Runaway error, which also triggers when the heater cartridge is not connected properly. Can you check the connections of the heater cartridge and if it has a non-unlimited resistance?
@dugost The log file is rather difficult to read as a `.png` and not searchable. Please post the text of the log file
@Greenonline It's too many characters to post in a comment as code so I went the PNG route but I could have just as easily posted a text file of the log.
@Trish I've checked the heater cartridge's connections multiple times. I have 2 others here that I will try just to test things out: the original that came with the TT, the one that gave me the error and prompted me to connect a new one, and the one that's connected now giving me the same error. I don't know how to check if any of them have non-unlimited resistance. I suppose I'd need a multimeter for that?
@dugost a txt file is a super solution... ok, it spent 31.3 seconds in heating up, which is a rather short error time, but ok. 2 tasks for you to try to solve this: 1) measure the resistance of the heater cartridge at the end of the leads, where you connect it to the board (to rule out a defect heater cartridge) Use a Multimeter and measure the Ohms. 2) start any heating operation and measure the Voltage that is sent to the heater cartridge from the board (to rule out a defect board). Use a Multimeter and measure DC Voltage, usually it is 12 or 24V
@dugost You should have the rep to join [chat] by the way - we can help you with troubleshooting there. It is unlikely that 3 heater cartridges are broken at the same time, which can be an indicator that the board might be broken, but only a measurement of the voltage it supplies can support or deny this.
@dugost I have included a general rundown of which tests I suggest for you to run and a short "how to" into the answer above. You will need a Multimeter though.
@Trish I borrowed a digital multimeter as my old analog one seems to have an issue measuring Ohms. DC on digital is 12.4 V (analog looks to be about the same). For resistance on the disconnected leads of 3 different heaters, the digital readout never changes from OL and my analog needle slams in the opposite direction regardless of what I measure (even touching the 2 prods to test the 0 position does the same thing). I tested digital on an audio cable and the reading drops down to anywhere between 000.0 and 000.7. I'm not sure why it varies on each test so maybe I'm doing something wrong.
@Trish gives a lot of good info, but:
I don't think your heating element is the problem, I think the thermistor is, or a flaky connection between it and your board.
The termistor senses the temperature of your heater (you also have one on a heat bed), and tells the electronics when to heat, and when it's hot enough. Now imagine if the sensor is broken or the cable gets loose: the electronics will think it's too cold and just heat forever.
This causes a fire hasard, so most electronics doesn't let the heater go full out for too long time, and ends it all with a "Thermal Runaway" if it happens.
So check that your temp is read correctly, even when you move the cables, and if that isn't it, buy a pack of thermistors (or what's compatible with your printer).
Source: been there done that :-)
actually, we did confirm that the heating elements are broken. All 3 of them have unlimited resistance. A loose cable on a theremmosensor is detected as Mintemp, a short as maxtemp. thermal runaway is triggered when the hotend heats too fast... or not at all. https://www.youtube.com/watch?v=ckQ9UWlmdVA
Okay, symptoms are the exact same for broken termistors so keep downvoting /s. BTW what does even heat in a element with "unlimited resistance", it make no sense.
a broken Thermosensor does *not* trigger Thermal runaway but is either 0 Ohm or no closed circuit at all. You can test what that does to your printer by disconnecting the leads of the thermosensor or bridging it: Mintemp and Maxtemp.
> A short momentarily heating... Like 1 hour? Anyways... buying so crappy heater elements 3 fails one after another is rather unbelievable, it smells of bad handling if anything (they can be quite sensitive to bending and squeezing) or else man step up your game and shell in like ten dollars for one and not ten.
that was the last time it worked. afterwards: *"I've tried connecting and reconnecting both the wires for the heating element and for the thermistor. I've tightened and loosened the screw holding the thermistor in the heating block. While it did heat up momentarily, the error popped up again after less than a minute"*
but ves, killing 3 heater elements in 3 months smells that either they got the scrap of a lot or very rough handling.
Well, case closed I guess. (ps your comment about a broken/badly connected termistors is wrong for my printer, where a flaky connection triggered the thermal runaway for my heatbead several times til I hunted the problem down and learned what it was).
@Valmond The 2 heaters I got were a match, as far as I could tell, for the heater that came with the TT. It was the first time I was replacing one so I went with what I knew worked before. Each was 5 bucks and with both apparently dead I've purchased a different one for 9 bucks recommended to me by Trish. As for a faulty thermistor or loose cable, I don't think it's either of those since I can get solid readings from it and have reconnected its wires as well during this process.
Yeah case closed IMO :-) I'm just a bit sour that the same problem happens when the cable Is loose or the thermistor acts up, but I got downvoted anyways ^^ Anyway, good luck and remember those heaters are sometimes quite fragile but must be forced into the heat block, not always an easy combination! Cheers Valmond