Thermal Malfunction, system stopped! Heater_ID: E0

Hello there. First post here.
I was using Marlin Ender3-V2-Stock-20220206 firmware and Octoprint 1.7.3

My prints are being killed and I get this message on the Octoprint Dashboard:
Thermal Malfunction, system stopped! Heater_ID: E0

I had the Send M112 on disconnect due to error option checked. Should it be checked?
I'm doing the same print now with this option unchecked.

Opening the log I found this:
2022-02-09 00:01:17,797 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2022-02-09 00:16:17,798 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2022-02-09 00:31:17,801 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2022-02-09 00:46:17,806 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2022-02-09 01:00:45,371 - octoprint.util.comm - WARNING - Received an error from the printer's firmware: Thermal Malfunction, system stopped! Heater_ID: E0
| Last lines in terminal:
| Send: N26541 G1 X153.97 Y54.09246
| Recv: ok N26541 P1 B3
| Send: N26542 G1 X148.714 Y73.706 E3380.27601
| Recv: ok N26542 P0 B3
| Send: N26543 G0 F9000 X148.715 Y60.508116
| Recv: ok N26543 P0 B3
| Send: N26544 G1 F3000 X155.254 Y58.756 E3380.59123
| Recv: ok N26544 P0 B3
| Send: N26545 G0 F9000 X155.254 Y60.161117
| Recv: ok N26545 P0 B3
| Send: N26546 G1 F3000 X148.713 Y53.62 E3381.02197
| Recv: ok N26546 P0 B3
| Send: N26547 G0 F9000 X148.714 Y53.408112
| Recv: ok N26547 P0 B3
| Send: N26548 G1 F3000 X149.336 Y53.242 E3381.05195
| Recv: ok N26548 P0 B3
| Send: N26549 G0 F9000 X149.642 Y53.843126
| Recv: ok N26549 P0 B3
| Send: N26550 G0 X150.42 Y54.092
| Recv: Error:Thermal Malfunction, system stopped! Heater_ID: E0
2022-02-09 01:00:45,371 - octoprint.util.comm - INFO - Changing monitoring state from "Printing" to "Error"
2022-02-09 01:00:45,379 - octoprint.util.comm - INFO - Force-sending M112 to the printer
2022-02-09 01:00:45,406 - octoprint.util.comm - INFO - Changing monitoring state from "Error" to "Offline after error"
2022-02-09 01:00:45,416 - octoprint.plugins.action_command_notification - INFO - Notifications cleared

Any hint?
Thanks a lot!

Not much OctoPrint can do here. Your firmware is reporting an issue with either the thermistor or the heater.

1 Like

This is a new, ahem, 'feature' introduced in Marlin recently that's unfortunately enabled by default currently.

It's meant to add another layer of safety by looking for variations in the temperatures reported by the temperature sensors. If your printer temperatures are particularly stable, like my printers are as well, you'll want to disable THERMAL_PROTECTION_VARIANCE_MONITOR (found here), because a lack of temperature variances will cause this to go off.

Some more info, and some possible tweaks at:

p.s. This is what happens when you run bugfix!


Thanks for the explanation. I really think it's related to what you wrote. I did a successful print when I turned my A/C off.
My ender 3 v2 temps are pretty stable, and I never had this issue with the stock firmware.

If I comment the THERMAL_PROTECTION_VARIANCE_MONITOR will it disable only this "another layer of protection" you said, or will it disable all the temps protection?

I think I will roll down to the that does not have this feature implemented.

Thanks again!

That option is only this new functionality. You'd still have runway protection, etc if you have it enabled.

The thought behind this new thing is that it's possible that a fault in the board or mcu circuitry might cause the temperature sensor to stop being read, and the same value would be returned over and over again instead. So it looks for different values and raises an alarm when it doesn't see the temperature change at all over time.

From what I've read, this issue has only been observed on one board and is fairly rare at that, so having it enabled for all configurations by default was a bit of an over reaction. The author has since changed it to default to off, but that's not been merged in yet.


This was causing me so many headaches. Thanks for your explanation! Disabling has me back up and running!

1 Like

Hi, new user here. I'm having this problem after installing new firmware yesterday. I get the beep and error message and the printer stops. If I print from the SD card and not from the Pi everything is fine but try and print from the pi/octoprint and its BEEEEEEEEEEP after a few minutes. How do I disable the mentioned safety feature so I can use Octoprint again. Tia

The post marked as the solution in this very thread answers your question:

Thanks for the reply, sorry what I'm asking is how is it done. I seen that a fix to the problem was found but what I'm after is someone that can show me how to do it. I have little understanding of computers and by following YouTube videos I was able to install Octoprint onto a Raspberry Pi and watching further videos allowed me to be able to use it. I now have this problem and no idea what to do to sort it out. Sorry for being thick but I have come to this forum in the hope someone can give me a step by step guide on how to disable this setting.

If you have not updated the firmware recently, then the issue that has been posted is probably not the same as yours.

The above setting is part of the firmware configuration, it's in the Configuration_adv.h file, which you should have in your Marlin download if you've built it recently.

A 'Heating error' does not necessarily mean the issue above is the correct one. It's usually an actual issue with the temperature dropping or not staying stable. In this post the temperature is not changing, but a new feature introduced to suggest if the temperature does not vary enough the sensor is not working right, and it is introducing false positives.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.