Let’s build a robot that gets hot. Really hot — like three times hotter than McDonald’s coffee. Then make it move around. And let’s get the cost in at around $100. Sounds crazy? Not really, since that describes the cheap 3D printers we all have been buying. [John] found out the hard way that you really need to be careful with hot moving parts.
The short story is that [John’s] Anet A8 caught on fire — significantly caught on fire. Common wisdom says that cheap printers often don’t have connectors for the heated bed that can handle the current. There have been several well-publicized cases of those connectors melting, especially on early production models of several printers. However, this printer had an add-on heater with a relay, so that shouldn’t be the problem. Of course, a cheap power supply could do it, too, but the evidence pointed to it being none of those things.
The culprit seemed to be that the heating element popped free from the heat block. This made contact with the ABS ring fan (also, aftermarket) and from there the fire spread. A contributing factor was that [John] had just replaced the motherboard, and the stock firmware didn’t figure out that keeping the heater on wasn’t changing the thermistor’s temperature and shut down. Most firmware will do that as a safety measure.
We like cheap 3D printers and many of the Hackaday team have Anet A8’s so we don’t want to give the impression we’re knocking it or that we think you should quit 3D printing. However, this demonstrates the need for inspecting your hardware closely. If you don’t have an extinguisher near your printers, maybe you should. Leaving them completely unattended is probably not a great idea, either, although most of us have probably done that with a machine we trust.
[Elliot] did a great review of the A8. Sadly, we’ve covered 3D printer fires before, too.
Thermal runaway, such basic stuff yet so many people don’t care about using it. I would not use firmware without it.
Well, I experienced a thermistor which got loose and hang just 1 or 2mm beside the heating block.
This resulted in a red glowing heater cartridge and a happy firmware reporting 180°C.
3d printers are like any other electrical gear… you never let them run unattended!
73
Of course you do, like dishwashers and washing mashines. 3D printers run for hours for one print. I expect a reliability and level of protection, that I can leave it running e.g. overnight, with the worst-case outcome of a failed print.
All this machines are built to serve us, not to be baby-sit.
And fridges, and boilers which heat our houses (These feel to me to be more ‘left to run’ than a dishwasher or washing machine, which requires at least some attendance to run).
Well, a friend’s dishwasher burned down his house, so…
dryers are also pretty good at this
This is why we only use the dishwasher when we are in the house.
It’s happened too many times to too many people to take a risk.
The design is pretty crummy. Mains voltage and motor level current carrying cables winding their way around a front door, 90deg hinge, often embedded into the heat coating on a stainless steel chassis.
What could possibly go wrong?
I suspect you didn’t build your dishwasher or washing machine from McMaster supplies and an Arduino.
When was the last time you’ve watched you fridge?
It started running when I wasn’t watching it and I didn’t notice until I received a phone call informing me that I should go catch it.
Sounds better than fake news
What exactly is inside a heater block?, last I checked it’s a big ass resistor encased in a cylindrical heat spreader. is it really that much more cost/effort to fully integrate block, resistor and a pair of redundent thermistors into a single sealed unit? these are all possibly the cheapest components on a printer, As 3D printing becomes more and more inexpensive and millions of units are sole, these outlying cases are going to need to be accounted for as thay will cost lives. we should be looking to other heating element consumer devices for inspiration and best practises for safety. kettles, heaters etc.
Probably the safest way would be to integrated a thermal switch right into the block, or use a PTC element.
That way even a closed circuit failed MOSFET couldn’t cause a glowing red heater.
Why don’t printers have these already!?
Thermal switch or, for higher temp or miniature applications, a thermocouple and a separate analog circuit that will open a normally-open system power relay. Sounds like a good open-source hardware project.
Also, people in these comments are grossly underestimating the cost of completing the regulatory testing for a 3d printer. Not to mention the careful design and supply chain work necessary to even pass. There is a reason some printers are thousands of dollars and some are $300…
Duet/rrf firmware has an advanced heating model that can recognize this situation and shut down.
Hard to imagine these days that ANYONE ships [motherboards with] firmware where thermal runaway detection is disabled by default.
Technically not “Disabled” but just plainly put:
A programmer who was too lazy to type about 6x lines of code and 1x function call in a watchdog IRQ… Not hard to do!
FN_IRQ_checkstats() //pseudocode called regularly by a timed IRQ
{
Usual_stuff()
CheckTemp()
}
CheckHeadTemp()
{
//get Temperature (Line 1)
temp = &MemMapHeadVar;
temp2 = &MemMapHeadVar;
//on fault, switch off both heaters 2x16bit pointed as 1x 32bit var (line 2)
temp == lasttemp && temp2 == lasttemp2 : &heaterPinVar32 = 0;
//on fault, Kill the bed heater (line 3)
temp == lasttemp && temp2 == lasttemp2 : &BedPinVar16 = 0;
//on fault, Crash and power-down uC by macro (Line 4)
temp == lasttemp && temp2 == lasttemp2 : FULL_HLT;
//wait for heater(s) (line 5)
sleep 2
//Standard return of current temp (line 6)
return temp
}
Pseudo code, but sorta like that :)
.
.
P.s. I and my bro got two for 60 quid at boot sale (30 quid each, lol)
The instructions have the shorter poles installed before cutting the belt then those poles are fitted else where, I had to bodge it so i had enough belt (My repair ideas were taken from manufacturer’s corner-cutting designs on the 2D printers I repair at work, i.e. Large form factor, Epson EPOS and Olivetti PR2E machines). Now before using the printer beyond a basic test, I’ll apply many of the “upgrades” of the ANET A8 modder’s community
Also it looks like the head set light to the wiring loom causing a short that spread the fire faster to the mainboard, also the mainboard is more fried than the plastic strut it is on thus confirming this… Sounds like no short circuit protection or fuses to blow when this happens.
Maybe it’ll be worth adding a fuse-bank for fire prevention and reduction (if one takes place).
I would love to hear more about the corner cutting designs in 2D printers. That could make a pretty compelling blog post (with pictures, etc.). Design analysis is something that I dabble at in my own head, and I mostly ask “Why did they do it like that?” I don’t have a ready answer most of the time.
Because $$$$. Directly, or indirectly. From using the cheapest parts, to hiring the cheapest people, using the cheapest training, maximizing profit above all else, done in the fewest amount of time, etc.
“Why did they do it like that?”
…must please the $hareholders :P
I’d also love to see more smoke-alarm cutouts. Most things smolder for a while before bursting into flame – 3d printers should probably be enclosed, and if there’s significant smoke it should just cut the power dead. Added bonus, somebody’s probably going to go see what all the noise is about.
that is whey I added a CO Sensor (MQ7) to my printer. It is connected to an Arduino that can switch of the power. It may not be a 100% protection, but at least I am not adding more energy to a smoldering system.
I had the notion of making my printer’s enclosure air tight and having it slowly fill with CO2 or N2.
A smoke alarm seems more practical.
Better to have an external physical hardware overheat detect than software IMHO.
Software is always tricky.
OK, as a non-owner, it was the heater for the bed that came loose?
The hotend heater.
No, the heating-element on the part that moves around and lays down the plastic.
No the one from the extruder
There’s a heater cartridge which is clamped into the hot end (plastic melter) of the printer, this came out of the block.
With something like that, it pays to have redundant attachments. Two bolts, or a pin and a bolt. Sounds like the heater element might have just been pressed into the block, and as the block heated up, it expanded, leaving the heater element loose. That would never pass UL.
With this cheap cr@p, you gotta backstop their designers. Look for things that could go wrong and fix them before they become a hazard.
Nah, the owner was just stupid enough not to tighten the screw that’s holding it. I’ve also done that mistake once, but luckily I noticed the heating element slowly moving before it went all the way out, and tightened it. Now if I wanted to pull it out without releasing that screw, I’d probably tear the wires apart while trying so. It’s held strong.
Wasn’t it the heater on that moving part thingie?
To Clarify, it was the hot-end heater cartridge that came loose due to the grub screw that holds it in place on the MK8/MK10 heater-block falling out from vibrational feedback. Personally, I’d recommend replacing the heater-block with an E3D v6 clamping-style one, they make it much harder for the heater cartridge to escape and cause this kind of failure.
If it’s what I think it is (cylindrical heater pressed into an aluminum block and secured with a set screw) They should use retaining clips.
In this case, no. But many people have noted that the bed heater has a problem with the connector. They only use two pins for the high-current circuit, even though there are 2 unused pins that are connected to the same heater circuit on the PCB. I wasn’t having any problem, so thought I was good. But then I noticed a brown spot on the side of the connector, even though it was firmly connected. I added two more wires that bypass the connector directly to the PCB. Even this tends to fatigue – had to resolder it once already. Not looking forward to if if actually breaks the traces on the PCB.
As a person that just finished building a Anet A8, I have yet to trust leaving it printing alone. This pretty much means I will never trust it. Time to upgrade the firmware!
And people accuse us of being nannies when we warn them not to leave printers unattended.
Hey, I agree, always better safe then sorry right? I have never left mine unattended even though it has never messed up…yet. I say keep warning folks, it might just save someone’s home which makes getting called nannies kind of not a big deal.
Oops… accidentally reported your comment. Damn my dangling fingers over my phone.
Sorry about that.
Well, that might explain the cops at my door, ha ha.
I always keep an eye on them. I keep a laptop next to my FDM 3D printers so I can model stuff or browse the web while they print. I do a check before I start printing and I never leave them unattended for more than a few minutes. The only printer I trust with long overnight prints is my SLA.
Build a fireproof workstation. Sheet metal or concrete block lined. Don’t forget the overhead.
As an A8 owner, I agree completely. I’ve already had mine burn out thanks to cheap connectors.
So far I’ve replaced the heated bed, control board (replaced with RAMPS), and every piece of wire. All the high-power connections are soldered instead of connectors.
I had a 3d printer catch fire one time , the wires going to the fan pointing at the bed some how crossed causing the main board to catch fire , luckily I was there and was able to pick up the 3d printer bring it outside and put out the fire before any major damage was caused.
Had a fire from a stand alone PID heat controller. Fortunately I was sitting right in front of it when it started shooting flames.
My ANET A8 keeps freezing up mid print. I’ve read that it could be a thermal runaway but the thermistor is in the block correctly. I broke my fan blades off the other day and have to replace those. Do I have to have a fan where the filament is inserted? I can’t figure out what size the fan is to order a replacement. I’d like to replace it with something quieter too. If anyone has had freezing problems during a print and you figured out how to fix it, please, please, please contact me. Owning a large paperweight is kinda frustrating.
I did the same thing and measured the distance between mounting holes. But you actually should measure the overall width of the housing. It’s a 40mm fan. But they typically come with a few inches of wire and a connector. So you will have to splice into the existing wire or add a JST connector to it (if you expect to have to replace the fan in the future.
Trying to get this right from now on: RCY, not JST: https://hackaday.com/2017/12/27/jst-is-not-a-connector/
My A8 was freezing too. I replaced/upgraded all the MOSFETs on my RAMPS board (replaced the original), replaced the thermistor, custom calibrated the thermistor in the firmware, everything.
It turned out a wire in the hotend’s heater cartridge had come loose. As the print head moved, it’d eventually get too loose and the heater would cool down. This would trigger a thermal fault alarm.
Got any thermal monitor / fire extinguisher projects?
From the article: “But after seeing what a 3D printer fire can look like I realize I basically put the printer inside of a burn-my-house-down box.”
$40 at the usual discount sources will get you a fiberglass welding blanket large enough (8′ x 8′) to create a very large surround “tent” for your printer. We use them for everything from laser shielding to spot welding and have never had a problem. Smaller ones cost less and will likely work just as well. It won’t take the place of an alarm/extinguisher etc. that other people are advocating, but it can mitigate the damage and help prevent a calamity developing from a small failure.
You can buy functional sprinkler heads from China for several $ a piece…https://www.aliexpress.com/premium/sprinkler-heads-fire.html?spm=2114.search0204.1.1.1e061f53fFMMof&SearchText=sprinkler+heads+fire&initiative_id=RS_20180319005736
If you go through the catalog and choose one for a higher temp (red one is 68°C, yellow 79°C, green 93°C, blue 141°C and violet 182°C), you could put it directly into the heated box and thus lessen the water damage to the printer surroundings :D
“…functional sprinkler heads from China…”
Yes, I know, but those words set off [fire] alarm bells in my mind.
It’s a simple mechanical device, not to mention that it’s cheap enough so you can afford to test a few yourself ;-)
There are fire fighting devices that are essentially a big glass bulb with the same type of powder you find in regular fire extinguishers. You hang them above e.g. a waste bin, somebidy carelessly sets the bin on fire, the bulb cracks abd sprays powder everywhere.
this is a big coincidence. just sitting here sipping some tea getting ready to work on my printer when this popped up on my news feed. my anet a8 just shut down because of thermal runaway while printing and I discovered the heater block and sensor had come loose. yay for marlin firmware.
Hmmm… or its a big problem. Several mentions of this thermal runaway now on a8’s.
its a big problem with the original firmware. marlin shuts it all down if it detects it. the heater core and sensor coming loose does seem to need improvement. the lock screw comes loose with thermal cycling I guess.
A stack of 5 Belleville washers, stacked head to head and tail to tail should give enough give to make up for expansion and contraction of the heater block. Put the concave end to the block and the convex end to the screw head. a piece of SS safety wire around the heater might be good too.
Dumb question: Why not secure the hot end better & upgrade the wiring?
That’s what, 10 bucks of you can’t scrounge wire from an old atx psu? Certainly cheaper than a new work bench or building.
Really? Another dumb question…. why no, regardless of whether the thermistors are returning sensible readings, is there not a max duty cycle imposed on the heating elements?
Because you NEED it to be able to dump a lot of heat in. That’s how it can heat up a big chunk of metal and the plastic going through it. The problem is when something disconnects and it can’t tell what its actual temperature is anymore. And it’s hard to tell what the “correct” energy input is, because it varies wildly depending on the plastic, the temperature of the machine, how much air is going past the hotend..
I’m surprised this kind of thing isn’t happening more often. I’ve noticed a worrying knee-jerk reaction from many 3d printer users to attempt to ‘fix’ their cheap printer’s terrible quality with seemingly random firmware updates. Thankfully it usually just ends up at worse with a bricked board and not a fire…
A new social class is rising. They’re called uncompensated beta testers.
Ranges from 100$ 3D printers to $100,000 cars (yes, i’m looking at you Tesla) :P
Don’t forget commercial operating systems.
Funny, no one mentioned Samsung.
Badly implemented agile methodology is breeding this and considering it’s “the thing” at most large corporations (which generally fuck up most things they implement till they change their mind five mins later) it’s really no surprise.
The compensation is getting the product sooner/cheaper.
Well, there is also the opposite aspect – I upgraded my firmware exactly because I was not sure if it had the thermal runaway protection and was not willing to find it out the hard way :)
I’d rather have the printer stopped mid 30-hour print for runaway than burn my house down.
I have 9 printers now and at times 7 of them are running with no one home or sleeping. My solution is thermal runaway protection mostly though I just dropped $162 on a co2 electronics safe fire extinguisher. One of my printers has a temp sensor and will open a solenoid valve on a co2 canister if the enclosure gets too hot
Combine that with a relay to cut of power so the fire won’t restart after the CO2 dissolved…
I have considered a CO2 flood system combined with an electrical cutoff probably only needs some code on an ATtiny to run that. Anyone have suggestions on a fail open large bore solenoid valve that can handle liquid CO2, probably from a 500ml to 1.5l Sodastream or paintball tank?
Using Marlin with enabled runaway was my first step. Second one which is currently in progress is replaced stock power supply with ATX which is enabled via Raspberry PI running Octoprint with some plugins. So even if i get failed MOSFET without option to shut him down via motherboard, there is thermal watchdog on PI which power off main 12V branch.
I’ve done some photocopy / laser printer repair and maintenance in a previous career. The fusers always had some kind of thermal fuse on them. I’ve also seen them in transformers. I’ve wondered why they aren’t part of the hot-end (and headed bed for that matter). It would seem to be a decent back stop in case the firmware is configured wrong/mis-understands something.
It’s a good idea, but it wouldn’t save you from a situation like this, where the heater separates from the hotend. Unless the thermal fuse was inseparably bonded to the heater, which I don’t believe currently exists as an orderable part.
For $15 I’ve ordered high-temperature silicone (used for car exhaust sealing) and bonded both the heater and the thermistor to the heating element. I used less then 1% of the volume of the silicone, so I still have some left. Yes, if anything goes wrong, I might need to throw all of it away – but the replacing aluminium heat element costs $2 from China, so I don’t mind that much ;)
There is a guy on Youtube called Ivan Miranda that had even better idea – drilled another hole in the hotend for another thermistor and uses external, different arduino just to control the bed and hotend temperatures with separate thermistors and, if needed, kills the whole power into the printer.
That’s my next step ;)
Same here. I’ve found the silicone comes off, if a bit messily, with a bit of solvent. It provides both a good heat insulate and bonds the rig at another point.
One of these days I’ll get around to adding a 300c thermal fuse on there.
Exactly!
You don’t do safety stuff in software if at all possible. If the controller crashes or the mosfet powering the heater fails short that won’t save you.
This is exactly what should be done on all printers! Think about coffee machines, they have thremal switch AND a thermal fuse in case the switch fails short. Same here, all heaters should have thermal fuses bond to them (directly to the element, or directly at the wiring terminal) that protects the syhstem from fire in case there is a software bug or some component fails and heater stays on.
Thermal fuse is not the only thing missing from these machines to make them compliant with relevant standards and e.g. EU’s machinery directive. I wonder if the assmebled versions do have all requirements fulfilled, or is there a lawsuit waiting to happen…
That banner photo is scary!
My A8 runs unattended all the time, but it’s sitting on a concrete slab, so the damage is likely limited to self-immolation. (Crosses fingers.) Firmware sanity checks are good news too.
Points to check or replace on an A8, from personal experience:
* the crimps and tightness of the grub screw on the heater cartridge (what wiggled loose here, has also happened to me)
* the connector on the back of the heat bed, and/or its solder joints
* the connector for the heat bed and cartridge on the main board
These areas all have high current, heat/cool cycles, or both.
For fun, check out the nuts on the y-axis sometime, or heck, give all the nuts a good once-over. This goes for any printer, really. If you hear the machine making an unusual (buzzing?) noise when running, stop the printer and do it now. Otherwise, feel free to do it next week.
So Elliot,
have you updated the firmware on yours?
I use Ultimaker printers which I would consider quite safe. Doesn’t stop me from having a smoke detector right above them and a fire extinguisher and fire blanket right next to them. Just in case.
Just in case is always good.
I work at Ultimaker (for like, forever, you might know me from my work on Cura). For the safety aspect of the Ultimakers, I know a lot about that, so here is my advice:
The UMO, first printers, with Arduino based electronics. Don’t run those unattended! The whole thermocouple thing is problematic. But the heaters are attached in a way they cannot get lose.
The UMO+, with the same heater installation, and now better electronics, there is no problem with these known.
The UM2 (not UM2+), this one has pretty strict thermal runaway detection in the firmware. As the heater in some of these hotends has come lose in early models. As we noticed this risk, we implemented the firmware protection, and updated our production methods to prevent this.
The UM2+ has a better way of securing the heater, it still has the detection in firmware, but it’s less strict. As it could, rarely trigger incorrectly. With all the knowledge that when into this one, we’re very confident in it’s safety.
The UM3 has a declaration of professional unattended use. That’s how confident we are in it.
Finally. This article lists a heater moving out as “root cause”. However, what we have seen is that a print getting lose from the bed is more likely the trigger. The print gets lose from the bed, attaches itself to the hotend, then material starts to form a huge blob around the hotend, and pushes on the wires of the heater. That moves the heater out, and, could ignite the material that is already plenty now around the heater. (Failure studies are fun)
What is meant by “keeping the heater one”? Do you mean the bit state of the GPIO register, keeping that to one so that it keeps the heater on? Or does the firmware on some boards have some miraculous way to alter the physical number of heaters?
An uncaught typo. Heater ON not one. In other words, the printer was leaving the heater on but the thermistor (now decoupled) was not getting hotter. This causes most firmware to shut down for just this reason.
Stop the spread of the lies about that hot coffee case
https://www.caoc.org/?pg=facts
Mrs. Liebeck was not driving when her coffee spilled, nor was the car she was in moving. She was the passenger in a car that was stopped in the parking lot of the McDonald’s where she bought the coffee. She had the cup between her knees while removing the lid to add cream and sugar when the cup tipped over and spilled the entire contents on her lap.
The coffee was not just “hot,” but dangerously hot. McDonald’s corporate policy was to serve it at a temperature that could cause serious burns in seconds. Mrs. Liebeck’s injuries were far from frivolous. She was wearing sweatpants that absorbed the coffee and kept it against her skin. She suffered third-degree burns (the most serious kind) and required skin grafts on her inner thighs and elsewhere.
Liebeck’s case was far from an isolated event. McDonald’s had received more than 700 previous reports of injury from its coffee, including reports of third-degree burns, and had paid settlements in some cases.
Mrs. Liebeck offered to settle the case for $20,000 to cover her medical expenses and lost income. But McDonald’s never offered more than $800, so the case went to trial. The jury found Mrs. Liebeck to be partially at fault for her injuries, reducing the compensation for her injuries accordingly. But the jury’s punitive damages award made headlines — upset by McDonald’s unwillingness to correct a policy despite hundreds of people suffering injuries, they awarded Liebeck the equivalent of two days’ worth of revenue from coffee sales for the restaurant chain. That wasn’t, however, the end of it. The original punitive damage award was ultimately reduced by more than 80 percent by the judge. And, to avoid what likely would have been years of appeals, Mrs. Liebeck and McDonald’s later reached a confidential settlement.
“Partially at fault”?!
How does holding the the very obviously hot coffee between your knees and spilling it into your lap (without any outside “assistance”) count as PARTIALLY at fault? This is 100% at fault in my book…WTF US, WTF…that judge should have thrown the case off the table and have had her pay the all the legal expenses, McD. was in no way or form at fault here. If you anyone suffers a from a bad case of “fat fingers”, they should ask for coffee that isn’t so hot themselves, no need for a judge.
She burned her dumb ass all by herself and furthermore apparently was not insured, which I see as another WTF given how incredibly expensive medical care in the US is.
i dont know because i wasnt there, but maybe, just maybe, McDonald’s held partial liability due to the CORPORATE POLICY of serving the coffee at a temperature that would cause 3rd degree burns. The partial liability could also be due to the fact that there were numerous complaints about the coffee temperature which would be the case for negligence on McDonald’s part. On top of that its not like a reasonable person could be expected to be ordering their coffee colder, give it a try next time you order a coffee anywhere, better yet try requesting it at a specific temperature and see what happens. Very often in cases like the McDonald’s case is the fault 100% from one party and that is why there are jury trials to sort this stuff out. Every one at some point in time suffers from fumble fingers at some point in time, accidents happen and a little bit of compassion goes along way (especially with the latest trend of companies using customers as beta testers). Also note that the defendant in the case was not requesting the large settlement in the first place, those were awarded by the jury.
As for your comment on the US health-care bit, well their socioeconomic problems are their problems and because the people in power don’t really want to see change then it will probably go on for quite a while. Thankfully that seems to be on the swing as more and more people are running on a single payer platform now a days. Im sure if we took a look at the laws of your country we could find some historical laws that don’t make sense but exist because politicians don’t want to make any changes.
Unless maccieD’s have some clever physics, their coffee couldn’t have been brewed at above 100C, which is precisely the temperature that almost everyone brews coffee at – unless you’re pretty serious about coffee and are correctly allowing it to come off the boil before brewing – but no-one would expect a fast-food restaurant to do that! – in any case, a cheap place like McDs is likely using instant coffee and so they’ll need to have the water boiling to make it dissolve effectively.
So I’d absolutely expect them to be handing over black coffee at just short of 100C, and white a bit lower.
If they were serving it at 100C after adding milk, then they’re specifically heating it above the expectation for white coffee, which I can see is culpable.
Sure, if the cup is inadequately designed for 100C drinks (e.g. thin card and no insulating sleeve), then there’s a lawsuit waiting to happen. But serving a hot drink at somewhere between 80-100C is absolutely what you’d expect.
Ok, so checking the link, their coffee was at 82-87C if google’s converted that correctly. That’s absolutely the correct temperature for brewing coffee, we’ll done McDs!
Again, if the cup lid was badly designed so that it spilt when you remove the lid, sure, that’s bad. If the cups were overfilled, sure, that’s bad. But stop it with the crap about “a temperature designed to cause 3rd degree burns” – that’s just the expected temperature for coffee.
So actually I wasn’t spreading lies at all. In fact, I often tell this story as an example of how the media can twist something because if you know all the facts, the case wasn’t silly. You may or may not agree with the judgment, but it wasn’t silly at all. My only point was it was hotter than McDonald’s coffee and that is HOT. But yes, I know they superheat the water. I know they had burned people before. Just me merely mentioning it shouldn’t trigger your defenses, I’m on your side. In fact, I’m surprised I haven’t used that as a lead somewhere on HaD or DDJ before.
You’re her lawyer, aren’t you?
I like my coffee scalding hot. Then again, I’m not a complete idiot who doesn’t predict what might happen if a hot liquid comes in contact with my neither regions, so I act appropriately and use the cup holder.
“Learning is fun.” — Bender Bending Rodriguez
Cars at the time rarely had cup holders. The car she was in didn’t have any. McDonalds had trays to hold drinks but didn’t put the coffee in one. McDonalds used a cup material that softened considerably with temperature and required the lid to be in place to remain cup shaped if there was any slight change in uniformity of pressure.
They had had hundreds of complaints and had settled suits, but felt that withholding that critical information from customers was the way to go. The judge should have doubled the amount.
I bet you never drink your coffee at 190F which was the target temperature. Feel free to put you hand in water that hot. If you try to drink it you will need to be intubated in order to breath.
sbrk, don’t be willfully ignorant.
three_d_dave, engage your brain and think of consequences before acting.
All wonderful replies (no, really!)… but not a single one that says…
GET A SMOKE DETECTOR and install it in the room where your printer is!
When the fire was in its infancy, at least you’d get a warning.
From above…
sneakypoo says:
March 18, 2018 at 2:41 pm
I use Ultimaker printers which I would consider quite safe. Doesn’t stop me from having a smoke detector right above them and a fire extinguisher and fire blanket right next to them. Just in case.
I have a felling that there was not any strain relief near hotend.
I also have A8. And from seeing others people problems I am pretty much sure, that some steps where missed during building of this printer.
Okay, seriously – there are a few very common safety features that I don’t even see in many hobbyist boards. Software protection is frankly insufficient safety for this grade of product (where firmware is commonly rewritten and modified and community-contributed). There should be a safety fuse for each channel rated to the maximum current expected per channel. A short (or low resistance fault) would, instead of causing a fire, merely blow the fuse.
Obviously, there’s the second issue of all plastics near a hot print head or above a hot print head needing to have a proper UL flammability rating, which is SPECIFICALLY meant to prevent this sort of plastic fire, but people rarely think about that while adding modifications to their cheap 3D printers…
Oh yeah, part two – technically (even though this is a HORRIBLE “safety” mechanism) it’s possible the stock printer would have been incapable of causing this fire to occur – the power supply had been upgraded, and it is possible that the only safety for this type of short circuit fault was a fuse inside the power supply or some sort of current limiting foldback which would have reset the system. I am in no way advocating that this is sufficient safety from the manufacturer, but it certainly could have been a factor.
Most likely, there was no short circuit. The amount of power used by the hotend was most likely within normal operating parameters, in this case.
As soon as you remove the heater from the heater block, it has a very low mass. For example, the UM2 heater, which is only 30W (which is quite low side, 40W is more common on other printers) becomes red hot when not inserted into the heater block. When red hot, it’s hot enough to auto-ignite PLA an ABS. No electronic protection can help you here.
Not saying some other cases couldn’t have been prevented with proper fuses. But this case requires 2 things:
* Properly securing the heater, which is harder then you think.
* Failsafe in the firmware (as a last resort)
What I find weird is that nobody seems to do a thermal model of the hotend in the firmware – measure how hot it should get given the conditions (filament material, feed rate, desired temp and ambient/heated box temp) and look at the power draw (cheap to do…just one current shunt and one analog input + a couple of 1-wire temp sensors throughout the printer).
If the regulator software is demanding full power during conditions that should not need more then…lets say half…something is wrong and an e-stop is in order…
Also a mechanical relay that can disconnect all the heaters, as MOSFETs almost always fail shorted.
That model is good until you change your cooling nozzle or room temperature. I’ve had big enough power differences after opening window for a moment that it would trip any “fine tuned” models.
A nice case use for “self learning” ones…my point is, that the heater running red-hot should be enough of a difference to detect even using just the fairly crappy A/D converters you can find in ATMega micros that tend to be the brainbox for most printers…
btw – shouldn’t it be possible for the setup mentioned in my 1st post to calculate the resistance of the heating element? Having it glow will definitely change it’s resistance :D
Sounds like what is needed is a hearing cartridge with a thermal fuse inside.
Wouldn’t have helped here. It’s not a case of the heating element getting too hot, but escaping and applying heat where there shouldn’t be any. To all the flammable, melty parts outside the hot end.
Maybe they need to use wire with non-flammable insulation, something like silicone. At least in the area of the hot parts. There’s lots of room for improvement I’m sure. But certainly nothing sold as a consumer item should ever, ever, risk burning your house down.
He wrote: “hearing cartridge”, you know a separate unit with a microphone that can detect the crackling sound of fire.
B^)
I did not mean that, but it is a plausible way to do a detector :D
Sure it would have helped. If the cartridge stayed at regular extruding temperatures, it would have just melted a bunch of stuff and not started a fire. Instead, when it ejected, it heated up to the autoignition temperature of ABS. Your printer doesn’t need to be able to get that hot – so the fuse would have tripped and prevented a fire.
no, the element that is connected to the heating block and has working temperature regulation will never reach a temperature high enough to set the ABS on fire, at over 400C.
“However, this printer had an add-on heater with a relay, so that shouldn’t be the problem.“
“It’s got a relay” isn’t some magical panacea that avoids these problems, nor is it necessary for reliable and safe operation. It’s perfectly possible to use a MOSFET (or a triac, if you like AC) to switch any plausible level of heater power, even for the heated bed.
– The relay or FET used needs to be appropriately rated for the voltage and load current.
– The cold resistance of a heating element won’t give you an accurate value for the operating point when it’s hot, but it will give you a useful worst-case value.
– If a FET is used, choose an appropriate heatsink. You know the power dissipation since you know the drain current, and on channel Rds from the datasheet (under the given bias conditions).
– In high-power applications, drive the FET gate well, at a relatively high voltage. Don’t just throw 3.3v from a microcontroller onto the gate.
– Ensure good thermal and mechanical coupling between the extruder barrel, the heater and the thermistor. This ensures safety, reliable heating performance and step response.
– Use fuses and thermal fuses. Remember a thermal fuse is useless if not reliably bonded to the hot system.
Well, that’s true, but the “traditional” problem of undersized connectors is readily handled by the relay boards that are commonly available.
– Obviously the power supply must be rated for the load power required.
A higher voltage means less voltage drop (and less heat dissipation) in the connecting wires, but the heating element must be designed to supply a sensible power output at that voltage. (Another way of thinking about this is that the heater resistance is much higher than the connecting wires, so the wire resistance is less significant.)
– You know the resistance of stranded copper wire of a given gauge and length, therefore power dissipation in the wire, and voltage drop, can be calculated. Same goes for PCB traces.
– Don’t use PPTCs for any kind of power electronics, they’re shit.
– Use appropriate good quality connectors rated for the appropriate voltage and current. Use the correct wire gauge that matches the connectors.
– Terminate things properly, with good soldering on PCB terminals or soldered connectors like XT60s, reliable termination of ferrules into appropriate screw terminals, or crimps with appropriate tooling if applicable.
– Measure the total path resistance. Does it match the expected thermistor or heater resistance?
– Use higher-temperature insulation materials such as silicone wire rated for 200C.
– Use bootlace ferrules of the appropriate diameter on stranded wire in terminals.
Ferrules rule.
So the heating element started a fire when it hit the plastic fan designed to keep it cool.
This, ladies and gentlemen, is an example of irony.
Three times hotter eh?
I seriously doubt it.
Goofs like this, trying to make the article somehow ‘lighter’ I guess, make HAD seem very unprofessional, almost like aimed at kids level unprofessional.
It’s hot, everyone knows but if you really must tell how hot write up the temperature and don’t make childish comparisons you get wrong.
“Three times hotter” changes depending on if you’re using Celsius, Fahrenheit (why?), or Kelvin.
Yea, only the numbers change.
“three times hotter” type of comparisons only work if kelvins are used. That’s what I was pointing at.
If I’m not mistaken, ABS is printed at 230°C. A third of that is about 77°C, or 170°F. The McDonald’s operation manual requires franchisees to hold coffee at 180° to 190°F. Ten degrees off — not bad shooting, Al.
Oh, and PETG may take up to 265°C — that’s more than three times McDonald’s upper limit. Sounds like Al was spot on.
Would keeping the printer in a sealed box with low oxygen levels prevent fires or just cause new exciting problems?
Systems like that, replacing the air with some inert gas, are used for some fancy laser cutting systems.
It would prevent fires, but it’s also going to be a LOT more expensive, require you to refill the tank of whatever gas you are using, and need venting to remove the gas when you want to open it (since you’d rather not remove the oxygen from the room).
It would work, but there are simpler solutions we could be using.
you could always do like that DIY jar lightbulb project when we were kids and use a preplanned ignition source inside a sealed volume to consume any available O2 (especially with the fans and heatbed convection to cycle air around)
I think thermal runaway protection is a necessary safety feature. A thermal fuse in the heater block wouldn’t be terrible either. But… How about preventing the heating element from coming loose in the first place?
I poured over websites, Youtube videos and blog postings trying to decide between using the axial-leaded resistor that came with my J-head or one of the heater cartridges I bought off the internet. In the end I went with the resistor because it fit the hole better. This article has me very glad that I did! It can’t come out because the leads come out both sides. So long as the wire stays attached there is nowhere the resistor can go! Besides that, I put a thin coat of muffler putty over the resistor, protect the leads with the nylon tube and heat-shrink tubing that came with the hotend, wrapped it all in kapton and finally wrapped all that in self-amalgamating silicone tape. All the directions I read only did one of those things, either the putty, the tape or the silicone.
I think using a resistor used to be the more common way to go but now that so many more printers are commercially built everything is all heater cartridges. Maybe this is a good reason to turn that one back!
Also, many of the directions I read involved bare leads and alligator clips. Seriously, alligator clips for power wires?!?! I suspect that was either to avoid soldering or maybe for ease of disassembly. My printer is a Mendel90. Those have a little PCB with screw terminals for the hotend that attaches to the carriage. That is plenty convenient enough! More printers should have that.
Also, I too don’t like to rely on solder conections where things get hot. I’ve disassembled enough hair dryers and laminators to know that the pros don’t do that. Also, hams are taught not to solder ground wires that are part of the lightning protection system because the heat of the lightning may desolder them.
My solution was to go to the local hobby store and pick up a piece of tiny aluminum tubing that was meant to be the fuel line of a model airplane with a combustion engine. I crimped it using ferrule crimpers. That works beautifully! Honestly though, buying a set of actual ferrules and using them for all the screw terminals is a good idea anyway and they certainly are not expensive! You can just pull the metal part of a ferrule out of it’s plastic sleeve and use that instead of the fuel line tubing. I only used that because I bought it for the job before I knew about Ferrules. Those aren’t as common on my side of the ocean as they are on the other.
https://duckduckgo.com/?q=ferrule+crimper&iar=images&atb=v93-2_b&iax=images&ia=images
In case that wasn’t clear, I cut a couple short pieces of fuel line, stuffed the resistor lead in one end, the hotend power wire in the other and crimped it. I didn’t use the tubing as the power lead!
Put the tiny nylon sheath around the resistor lead first. Size it so that just enough resistor lead sticks out the end to give you something to crimp to. Then add the crimp. The nylon sheath should not fit over the crimp. If the power wire is already attached to the other end then stick a piece of heatshrink tubing on it just big enough to go over the crimp. If the wire is unattached you can do this after crimping. Stuff the wire into the tube, with the resistor lead. Crimp it. Slide the heat shrink tubing just a hair past the crimp and shrink it. Hopefully you kept your leads long. This should still be far enough from the resistor that the heat shrink tubing will not melt.
How could this possibly come loose?!?!
As someone who has recently designed and sold a 3D-printer hotend, including looking into the regulations (pray to whatever you pray to that you will never have to deal with that!) I will give you this:
Do not trust your software/firmware! Unless your software is developed according to proper procedures for safety class software (which your 3D-printer firmware is not), you cannot trust it. This is according to the proper standards needed to sell things in the EU (required for CE marking). When it comes to something that is potentially dangerous, you have to mitigate the risk by some means that will not fail, even in a worst case. Therefore, a thermal fuse or other solution in hardware, is the most proper way to go (as people WILL leave their 3D-printer unattended, no matter what you tell them).
So, get a thermal cutoff fuse (not a polyfuse!) and put in series with your heater, close enough to the heater block so that it will break if the temperature gets too high. Just remember that you will most likely have to crimp your fuse in some way, as they might be very tricky solder, without tripping them.
With that said, even if your software might do some incorrect things, it might still do the right things sometimes and actually prevent dangerous heatup. A firmware that will detect a faulty heater or sensor is still not a bad thing to have, even though it’s not foolproof. It might still stop some fools :)
Um… No!
A thermal cutoff fuse, while a good idea for it’s own reasons does nothing to address the problem which occurred here. His heating element fell out of the block. The thermal fuse wouldn’t have heated up it would have cooled. Well.. at least until the flames started spreading and it was already too late.
I don’t know about the safety auditing of Marlin vs whatever the certification requirements are in Europe but the only things that will fix this problem are not letting the heater fall out in the first place, thermal runaway protection in software and not putting flammable parts anywhere that a falling out heating element might land on them. I’d pick at least two from that list with the order given being my personal order of preference.
Your thermal fuse would be useful for a protecting against a completely different failure mode, one where the heater remains in the heating block but for some reason perhaps through a software fault or a bad mosfet or relay it gets stuck in the on position causing it to overheat.
oh, duh and the obvious failure mode that a thermal fuse would help against.. the thermistor falling out.
I see a lot of printers with plastic printed parts in close vicinity to the very hot parts.. having 3D printed ABS / PLA shrouds / gears / stuff near to heater blocks is just silly (imvho). Firmware won’t necessarily safeguard against a FET failing on. Also, the use of thermal fuses is good.. but nobody seems to care? Maybe an article on making your 3D printer as safe as possible would be good (fail safe)? For those new to the joys of 3D printing….?
Thought this failure mode was familiar, and sure enough there was another hackaday article with a printer that caught fire the exact same way. https://hackaday.com/2016/03/21/ask-hackaday-mrrf-edition-3d-printers-can-catch-fire/
I’ve had something similar happen (themistor coming loose from its hole) but caught it because the machine seemed like it was taking an awful long time to heat the hot-end.
Since no one else seems to have caught the reference:
https://en.wikipedia.org/wiki/Halt_and_Catch_Fire
Wouldn’t it be sensible for 3D printers and the like to have a separate controller for safety features, so when you reflash the main board, you don’t overwrite the safety controller. Then the main board firmware would have a self-test feature which included things like attempting to overheat the hot end, drive the steppers past the endstop, etc?
If the default is to have those safety features on.. and you never change them (why would you) then that seems a bit unnecessary. On the other hand a secondary controller which can turn things off if they get too hot even if the first controller has locked up… that might be cool if not overkill.
This was entirely 10000000% the user/builders fault. This has nothing to do with ANYTHING other that the persons incompetence at building/maintaining a 3D printer. The heater cartridge should not have came out in the first place. These articles should NOT portray this issue as anything but. Letting some people build and try to maintain 3D printers is akin to giving a 2 year old a blow torch. Most people know no better with the 3D printer as the 2 year old does with the blow torch.
Fair point… “You’ve made your bed, so lay in it.”
The root cause…stupid code.
If heater is powered up and temp sensor does not rise SOMETHING is wrong so shutdown. Also, if heat does not reach the target temp within x minutes, SHUTDOWN. The PID should know how the thermistor is supposed to respond.
Contributing cause is leaving a 3D printer unattended. This is not highly engineered safety like your home furnace that has more than one way to detect high temp faults and shutdown.
I dont know why 3D printers have not embedded a thermistor in the heater element case itself yet. It would provide a safety margin and something to compare to the hot end heat block. Would also be able to discern the difference between a heater failure and a thermistor failure. Eventually these printers will go mainstream and then the regulators will unfortunately step in.
Code doesn’t mean it fails safe. You need software, mechanical and electrical engineers to build a safer printer…. however… marketing and sales… :(
If they don’t step in, the insurance industry certainly will. Better to do things right the first time.
The masses just want the cheapest printer, doing things right is down to the individual taking responsibility for their own safety. Waiting for the industry (any industry) to do things right, that’s just naive and lazy.
As long as people keep paying for crap, there will be companies who will gladly sell it to you. If you want something better, pay more and get something better or design and build something better yourself. If you can’t afford to pay more, resign yourself to babysitting your printer or find another hobby.
I’ll never understand why the 3D printing community is so amazingly tolerant of lousy quality.
Put one “Fire Extinguishing ball” on top of your printer if you leave it unattended often:
https://youtu.be/-Pn9Y0u3LwA
Prevention is better, but you can never be too safe. Also, a smoke alarm is mandatory.
Add another victim to the list
https://www.facebook.com/groups/makerbot/permalink/1741344442649719/
I have one coming today. I’m not worried about fire. I’ll install a fire alarm above the printer and do all the mods to eliminate the connector issue. Will switch to stand alone mosfets.
That said, I have seen the results of both a water heater and pressure cooker explode.
When I distill water.. I don’t let the still sit unattended. I simply do something else that keeps me in the room.
I would suggest to add a wireless alarm and can cut off power automaticaly when sense smoke and fire. https://hackaday.io/project/165689-safety-shutdown-3d-printer-wirelessly-catch-fire.