Thermal runaway

Basic Information:

Printer Model: Voron 2.4r2
MCU / Printerboard:Octopus Max ez
Host / SBC Mainsail
klippy.log
klippy (26).log (3.1 MB)

Describe your issue:

Thermal runaway
I print only with ASA, For the last couple of months, i have had issues with burning out heater blocks, i burnt out 2 heater blocks for the rapido ace, then i bought the rapido v2 and burnt 2 heater blocks on that hot end. I also burnt out a 3 PT 1000, and a couple NKT 100. I have replaced the thermistor / heater block wiring harness from the hotend to my Sb2240, i have replaced the sb2240 2 times, replaced the mother board from the Octopus v1.1 to the octopus max, replaced the H2C v2. Have also replaced the power supply with a Mean Well LRS-350-24 AC/DC

Hein site, looks like non of these parts i have replaced were the problem. I just bunt out my last heater block today.
Previously after replacing the heater block i would get 3 or 4 small prints and it would happen again.
Each time when i had thermal runaway with the hotend set at 260, the temp would increase in to the 270-280 before i was aware to hit the off switch. After re-powering it back on ounce cooled it would struggle to rise above 200, it would be very slow from 180 up. around 195 it would melt the ASA and start smoking, and report Thermal couple reader fault. ( like the thermistor was reading 40 - 50 degrees lower than actual heater block temp.)
After a firmware restart sometimes i could see a very quick glance of the extruder temp on my klipper screen in the high hundreds. At that point after shutting off the printer, waiting for 15 - 20 minutes it would settle back down to normal temps. I would try a PID tune to 260 and get pid_calibrate interrupted. After removing the heater blocks they were all scorched, wiring turned brown and the ceramic heater blocks were brittle.
I’m not sure of what next to try. Any help would save what little hair remains as well as my wife’s love for me.

Thanks in advance.

Your config indicated you’re using the MAX31865 for the PT1000; this is meant to be more accurate than using the thermistor input and adjusting the resistor settings for a PT1000.

Have you run a PID tune with all the fans running as you would expect during printing and set the temperature above your maximum expected printing temp?

This is my running config for a EBB36 (I am not sure of the revision number as I’m not home)

[extruder]
step_pin: EBBCan:PD0
dir_pin: EBBCan:PD1
enable_pin: !EBBCan:PD2
microsteps: 16
rotation_distance: 5.7
nozzle_diameter: 0.500
filament_diameter: 1.750
heater_pin: EBBCan:PB13
min_temp: 0
max_temp: 450
sensor_type:MAX31865
sensor_pin: EBBCan:PA4
spi_bus: spi1
rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2
max_extrude_cross_section: 5 

You must correct the dip-switches for a PT1000; the standard is PT1000 2 wire. (again, this might be for a different version than yours.)

Klipper is known to be very sensitive to errant temperatures. Of course, this assumes that the measured temperatures are accurate.

The Rapido hotend is rated for 350 °C. Burning it likely indicates that your temperatures have been much higher.

From your log:

[extruder]
...
rtd_nominal_r = 100
rtd_reference_r = 430
rtd_num_of_wires = 2

Lines 3 and 4 seem very incorrect when using a PT1000 sensor; both values appear to be off by a factor of 10. This discrepancy might compensate for each other, leading to seemingly correct values, but it could also affect accuracy at higher temperatures.

From a distance, it seems there might be an issue with your temperature measurements, leading to much higher temperatures than expected.

1 Like

I have only ran the PID to temp that of which i am using, so 260. What temp should i use for my PID as i print with 260? I have left the fans off for the PID being that i print with ASA and the fan is hardly on while printing. I am now thinking this is wrong, and i should be using the fan. I will try a PID with the fan on at 25% as voron design recommends.
My dipswitches are correct. 1,2, and 4 are on 3 is off.
I will change my Extruder settings as per the following.
I have to order another heat block.
Thankyou for the advice, i will forward my findings.

[extruder]
...
rtd_nominal_r = 100
rtd_reference_r = 430
rtd_num_of_wires = 2

In this specific context, where the user reported wrong temperatures, burned things & etc.
PID tuning magic rituals are misleading.

PID has nothing to do with temperature readings. It just controls the heater. That is it.
If temperature is unstable, it may be related to PID params, if temperature is an overshoot/undershoot it is much more probably related. If the fan is cooling down the heater faster than PID reacts, maybe it is worth tuning PID with fans enabled.
There is a topic with “How tos”: Discussion/Proposal: small heater control improvements
There is a suggested solution: RFC: Cooperative Heaters predictive control by nefelim4ag · Pull Request #6837 · Klipper3d/klipper · GitHub

As long, as you see PWM 100% (flat line) (or value equal to max_power) while heating, and see any PWM around the target point, the PID is probably fine.

Your problem is not a PID. As you described, you burn the things several times.
It is either a configuration issue, as pointed out above by @Sineos, or an assembly error.

The real question is: Why does it not trigger the verify heater error?
According to the logs, it seems like, even in this situation thermistor is still heating fast enough, to not trigger the safety shutdown. Looks like default values ensure pretty soft requirements.
Which just does not cover your situation.

1 Like

Received the heater core, completed the PID as per Voron design up to 245 for my hotend with the changes to my config as stated below.

klippy (28).log (1.8 MB)

rtd_nominal_r: 100
rtd_reference_r: 430
rtd_num_of_wires: 2

I’m unable to get up to the 245 with my fan on 25%. The ASA does smoke. around 215
I feel the hardware installation is pretty basic. Getting mixed info regarding config, either i run the above in my config or below? i tried with both with what seams the same outcome.

klippy (27).log (1.3 MB)

rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2

I have done some testing.
I am able to achieve 230 degrees with fan @ 25% when running the PID for 245. It errors out. When setting temp to 230 ( No PID )the temp will jump slowly get to 230, the jump up to 247 ish, in split second then fluctuate back around 230. It can’t hold at 230 for any amount of time. After this i set for 230 again and couldn’t achieve 230, it would hit 225 and stay, yet the hotend was still at 100 % trying to get to 230. meanwhile no errors reported. I moved the hot end, thermistor & SB2240 wires around while heating with no difference. At assembly i applied the thermal paste to heater core as well as any screw that penetrated the heat sink. i have changed out the thermocouple both seam to work the same. Any thing else i can try?

When the part cooling fan cools down the hot that much, it’s direction seems not to be proper.
Another way to protect the hotend is a silicone sock.

I have the silicone sock on. You are thinking the fan direction is incorrect?

is it possible that my hotend say 230 but it’s actually hitting like 350? Being that the asa starts to smoke at a lot lower degree than it should?

ran i PID to 200, it did complete. after save config my hot end was off the charts


klippy (29).log (3.1 MB)

Graph shows my first PID tune at 200, after the spike in temp i ran a PID to 220, the length of time for the PID is so much longer, it also timed out with error.

Sorry to say this a bit bluntly, but your approach makes no sense at all and is likely to lead nowhere. In the worst case, it could result in damaged hardware or even a fire.

  1. You have a specific piece of hardware.
  2. This hardware requires matching settings.
  3. There is no “either/or” option; trying a strange combination is not advisable.

So, the only valid approach is:

  1. Properly identify exactly what kind of hardware you have.
    • Is it a PT100, PT1000, or perhaps a regular NTC?
    • Where is the sensor connected? Is it to a regular MCU pin/temperature port or a MAX31856 amplifier?
    • Note that a PT100 cannot be connected without such an amplifier.
  2. Verify that the hardware is actually working by getting the temperature table for the probe type and measuring its resistance. If it doesn’t match, either the type is incorrect or the probe is defective.
  3. Choose your settings based on the identified hardware.
1 Like


thermistor is a PT 1000b, Connected to Sb2240

heater_pin: EBBCan:PB13
sensor_type: MAX31865
sensor_pin: EBBCan:PA4

DIp switch as stated earlier.

I get conflicting information, some says use

rtd_nominal_r: 100
rtd_reference_r: 430
rtd_num_of_wires: 2

then i’m told

rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2

It’s not like I’m trying to start a fire, I’m trying to trouble shoot something that i know very little about with very little help… you think your frustrated, Chuckles..

According to the schematic, the dip switch switches between 4.3 kΩ for PT1000 and 430 Ω, which makes sense. The recommended bias resistance is approximately five times the RTD resistance at 0 °C.

Under the assumption that:

  • The dip switch is set to 2-wire PT1000
  • The RTD really is a PT1000

the following settings should be used:

[extruder]
...
sensor_type: MAX31865
rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2

You should definitly measure your probe if it has a resistance in the expect range of 1077 Ω to 1097 Ω between 20 °C and 25 °C


PT 1000B
Approx. 20 degrees in the printer.
Any other things i could try?

I was reading up on the information for the Rapido v2. It states that it will heat up to 200 degrees in 35 seconds.

Mine is taking almost 4 minutes and can’t reach 220.

[klippy (30).log|attachment](upload://i1kVti3NLhqIHDa202C329n49SJ.log) (1.8 MB)

I purchased 2 heater cores from ALi express, both seam to work the same.
I would almost think i am receiving bad heater cores, but I’ve gone through 6 so far.

Using a IR thermometer
Test 1 @ 200 in klipper and 220 on the thermometer


Test 2 @ 210 in klipper and 250 on the thermometer


Not sure if the IR thermometer is acurite but that gap is more drastic the higher
i go in klipper.

When i set temp in klipper to 215 it will achieve 215 but will jump up to 222 and back to 213. it will stay in this range, fluctuates every few seconds.
the longer i leave it the lower the temp drops.


took over 3 minutes for klipper to report error.

klippy (31).log (3.4 MB)

1 Like

Now we’re getting somewhere. Away with mindless trial and error, and towards systematically analyzing what is happening. :+1:

Your resistance values at room temperature look good.

The significant difference between the IR measurements and the Klipper readings is certainly surprising; I haven’t seen such a discrepancy before. So, at least I’m curious to see what it turns out to be.

  • Have you made sure that the probe is securely connected to the two innermost pins of the RTD connector?
  • Triple checked the jumper?

This is to be expected. Klipper is receiving a value that is too low, and Klipper can only react to the temperatures it “sees”.

The PT 1000B is fastened into the heating block. It is secured.


The dip switch: 1,2 and 4 are on. 3 is off.

(attachments)