Forgive this long-winded post, but I thought it would be helpful to include the back story leading up to a very scary situation on my Ender 3.
I was printing a job and everything started out fine just like it normally does. I'm not sure if it is related, but partway through the job, there was a power dip severe enough to trip the alarm on the UPS my computer is attached to. It didn't seem to affect the job on the printer though. (the printer is not on a UPS)
A little while later I noticed the extruder clicking like there was a jam, and the print had started severely under extruding. The hot end temp was showing around 209 °C, which is about what it was supposed to be, so I figured the nozzle was getting old and had probably gotten something stuck in it. I canceled the job, did a cold pull, then went ahead and replaced the nozzle and restarted the job.
The second run started off looking ok, but the clicking and under extruding soon came back. I stopped the job and was standing there next to the printer trying to figure out what was going on when I noticed it reboot itself. Octoprint showed a message (I can't recall the exact wording) of something to the effect of "your printer reset and the job is probably failed".
Weird. It's never done that before. I hadn't restarted since the power dip, so I thought maybe it was just in a bad state and physically powered everything down to start fresh. But as soon as it powered back up, the heater went active and the hot end started warming up. The status display said the temp was set at 0 °C, but the "current temp" reading was rising. I quickly went into the menus to select "cool down" and couldn't find it. There was no cool-down option on the menu!
By this time the hot end was up to around 270 °C and starting to smoke, so I shut the whole thing down again. I let it sit for a little while and powered up again. Immediately upon receiving power, the heater went active and started heating up again! I'm pretty sure had I not been standing there it would have eventually caught fire and possibly burned down my house!
This is the original Creality board, but I did flash it with Marlin U1.R2.7 maybe a year ago. It has been completely stable since. Thermal runaway protection is enabled (and tested), but I don't think it would have done anything in this scenario since the printer thinks the heater is off (hence the missing cooldown option). Even if it did detect an issue, I'm not sure it would have been able to do anything since it seems to be permanently shorted "on".
Has anyone heard of something like this before? Any idea what might have caused it?
I opened the case and inspected the board for signs of something shorting out or a smoked component, but everything appears normal. I disconnected the heater so I could power up and everything seems to work other than the heater terminals always having power.
Obviously, my trust in this machine has been severely diminished. I already ordered an SKR Mini E3 V2 to replace the Creality board since I had been thinking of upgrading anyway. But I would really like to know what happened so I can assess the probability of it happening again.
Ideally, I would also like to figure out some way of protecting against this happening again in the future and causing a fire when I might not be standing next to the printer next time.
My first thought is some sort of thermal fuse (like the ones in hairdryers) in line with the heater that would "blow" if it gets past a certain temperature. A typical consumer printer should never have a reason to get above 260-270 °C, so it seems appropriate to kill the circuit if it goes beyond that regardless of what the board is telling it to do.
Has anyone tried retrofitting something like that? Are you aware of any printers on the market that include such a feature?
Any suggestions on how to troubleshoot the board to figure out what happened?