3D Printer Guardian Watches For Worst-case Failures

Some devices have one job to do, but that job can have many facets. To [jmcservv], an example of this is the job of protecting against worst-case failures in a 3D printer, and it led him to develop the 3D Printer Watchdog Guardian. When it comes to fire, secondary protection is the name of the game because it’s one thing to detect thermal runaway and turn off a heater, but what if that isn’t enough? The MOSFET controlling the heater could have failed closed and can no longer be turned off in a normal sense. In such cases, some kind of backup is needed. Of course, a protection system should also notify an operator of any serious problem, but what’s the best way to do that? These are the kinds of issues that [jmcservv] is working to address with his watchdog, which not only keeps a careful eye on any heating elements in the system, but can take a variety of actions as a result.

Some outcomes (like fire) are bad enough that it’s worth the extra work and cost of additional protection, and that’s the thinking that has led [jmcservv] to submit his watchdog system for The Hackaday Prize.

17 thoughts on “3D Printer Guardian Watches For Worst-case Failures

  1. Yeah, 3D printers. No other hardware has so many safety problems. I can buy $10 soldering iron or or $60 inverter TIG/stick welder and they will work flawlessly for 10-15 years, won’t electrocute me or burn down my house. Why can’t people make safe printers? Is it because of GPL/open source mindset?

    1. Your soldering iron and welder are actively used by a human operator. They do not run unattended and you, the operator, are monitoring and controlling their operation and interaction with substrates. 3D printers on the other hand often run unattended due to long print times. And even properly attended, their movement and operation is not controlled by the human, so at best the human is there to notice red flag situations rather than prevent them in the first place.

      If you mounted up a soldering iron or welder to a 3-axis stage and had it perform automated processes on ignitable substrates, I’m sure the contraption would fall in the same risk/hazard profile as 3D printers.

    2. Your iron or welder could absolutely start a fire if modified or used incorrectly. The state of 3d printers today involves a lot of modification and various uses or abuses, and many are built on a spectrum with from-scratch repraps on one end that may even feature user-designed control electronics, all the way to highly engineered off-the-shelf units on the other end which are usually highly polished and safe products that are about as likely to hurt you or your property as an oven or a soldering iron. Until you crack them open and modify them.

      Then you have stuff like the Anets which simply have no thermal runaway protection at all, so if the thermistor wiggles out it dumbly keeps current running through the heater until the fire consumes the control system. One should replace the control system on printers like those.

    3. The HaD comment section is something of a minefield to begin with, but this still managed to be one of the dumbest things I’ve ever read on this site. What kind of comparison is that? A soldering iron to a 3D printer? That’s like comparing a kite to an airplane.

      What does the GPL even have to do with this? Most printers in use today aren’t even open source, let alone released under GPL.

  2. This project is a bit light on the details, as a safety system, you would want the “many eyes” right?

    First things that come to mind:
    * If you don’t check if the relay is actually switchable, it might be fused shut and thus disabling the protection. If he is using a relay. Details are a bit slim after all.
    * Common case of failures with a fire risk is the heater or temperature sensor moving out of the hotend. Causing a huge increase in temperature without measuring it back. Does this implementation cover this? Just seems to add an extra failure case of adding it’s own extra sensors. Which won’t help when the heater moves out. And might cause false positives.
    * Looks like main voltage (230V/110V) directly on the board. Lots of room for extra possible fire issues there. There is a reason your power brick is full of icons and reference numbers.
    * The MQ2 sensor mentioned as “improvement” might be a bit useless. By the time to get smoke, something is already burning that will most likely keep burning if the power is turned off.

    Overall, I think this adds a lot more things to fail, while removing very little risk.

    (FYI, the Ultimaker printers have an extra relay in place to protect against MOSFET failure. It switches off 24V to motors, fans and heaters. It is turned off on any critical failure, like run-away temperature or run-away heating. Don’t know if other manufacturers have things in place. But I would not be surprised)

    1. Yet on the Ultimaker, even this relay is triggered by the same firmware that might have caused the critical failure in the first place.

      The good thing about this project, is that it is not reliant on (possibly faulty) hardware. It is a secondary system.

      1. Smoothieboard’s microcontroller has a hardware watchdog that does this, it’s inside the microcontroller but it’s pretty much the same. Firmware pings it regularly, if it doesn’t the firmware has crashed, and the watchdog resets the board. No need for extra hardware.

      2. The protection code is linked to the temperature measurements, which is linked to the hardware watchdog. The code is also extremely simple, as simple is good for safety systems.

        >The good thing about this project, is that it is not reliant on (possibly faulty) hardware. It is a secondary system.
        And this secondary system isn’t hardware? Or cannot be faulty? It’s not like it is a redundant system that check each other (as found in high cost of failure systems)

  3. Bimetallic normally-closed “thermostat” switch – they’re a couple of dollars each and rated for mains voltage. Put a mains relay in the power supply cable and wire it to latch (your classic magnetic-starter configuration as used on machine tools), with the thermostat in series with the coil. Put the thermostat above the printer, in a relatively fireproof enclosure.

    If it all goes bad, the thermostat will shut the printer down and hopefully (without continuous heat input and with limited oxygen), it will burn out before the fire spreads.

    The next step is an automatic fire bottle designed to be installed above a stove; one of those will happily put out a hobby-scale printer.

    1. We sort of tried this in the Ultimaker 2 development. The end result was whereevery you placed it, it would trigger too early (during normal operation) or too late (already a fire started). Combined with a good fire proofed enclosure it could work however. But then you could also just leave out the switch and put the whole machine in a fire proof box, and let it burn out when it fails.

  4. The last thing I would want is another micro controller. I would go brain dead simple and put an appropriately current rated klixon thermal switch in line with the mains. No micros, no relays. I keep a smoke detector and a halon (yea it’s old) fire extinguisher in the high tech shop.

    In my shop, the biggest cause of failures are parts not sticking to the print bed and coming a bit loose until the print head smashes into them and pulls them all the way off, and than the oodles of spaghetti that is extruded far above the print bed. Not so much a fire hazard as it is a waste of materials. It would seem that watching the motor current could sense a lot of those failures.

    BTW, I have not seen a fire caused by a 3D printer in the news yet. Have there really been any or is this just a bunch of boy scouts running around with their swiss army knives looking for someone who needs a bottle opened? I have seen cell phones and hoverboards that have caused fires but not a 3D printer–yet.

    1. (FYI, I work at Ultimaker, for 6 years now)
      There have been printer fires. More then you can find in the news. You might understand that I’m quite alert for these cases and seek them out.

      Example, we have a customer (university) that had a room full of different printers. One of those had an electrical short during the night, caught fire, the whole room was covered in a layer of ash. But only the printer was gone up in the fire, nothing else. Knowing how lucky they where, they set a rule of no “unattended use”, and started to question around to the manufactures about unattended use.
      Surprise surprise, no supplier said unattended use was supported. Not even us at that time.

      Got a few more stories like that, quite a few near misses on the fire safety in the past.

      Times have changed, and we have a declaration of unattended professional use for the Ultimaker 3. Stating that it’s safe to leave running unattended. I would not surprised if other suppliers have the same by now.

  5. “The MOSFET controlling the heater could have failed closed and can no longer be turned off in a normal sense.”


    Well.. for those of us using ATX supplies with the pwr_on signal actually controlled by our firmware, not just permanently shorted I wouldn’t think this would be a problem. Does Marlin turn off the ATX supply when it goes it to thermal runaway shutdown? It should! I may have to try this tonight!

    Of course this does nothing for you if your problem is software and your firmware locks up. Has anyone had their firmware lock up? The firmware on my printer is probably the only software that I have NOT seen lock up at some point yet!

    1. Someday I may upgrade to a 24V supply but I am seriously considering putting it on a relay controlled by that pwr_on signal and telling Marlin it is still an ATX. I have never heard of anyone doing that but why not?

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.