Okay, so most of you know that I have been reflowing my new ultimate programmer board using my home made Arduino Controlled Reflow Oven P1 P2. The oven worked out great! I’ve probably reflowed over 100 boards through it now. So, I just moved into a new place last week, and needed to make a new batch of boards. The Reflow Oven’s control board is powered via a USB cable, so I picked up one of the USB AC adapters I had lying around and started reflowing. I’ve cycled this oven so many times now, that I was confident enough to leave the room and answer a few emails. I started to smell something funny, but this didn’t worry me too much, since the reflow process does generate a little bit of smoke. As I approached my
spare bedroom laboratory, I was hit with a wall of white smoke! What the in world was this? EMERGENCY MODE!! The reflow oven was pouring out white smoke, but I didn’t see any open flames, so I quickly unplugged the reflow oven and threw it outside. I’m pretty sure the first few full breaths I inhaled of this stuff knocked a couple years off my life span… Once the source of the smoke was isolated, I wanted to clear my place out of all the smoke. I turned every fan in the house on and opened all the windows. How did this happen? This is not a complicated regulator. There’s no special PID algorithm in place that could cause the control loop to become unstable. This is simple ON/OFF temperature control.
First, let’s look at the aftermath:
Here we have 3 programmer boards completely toasted. Who knows what the temperature got up to in there… maybe 300C?
Here’s a close up of the stinky board:
Those little red parts are the LEDs! You can see the FT232RL part completely melted over the leads.
The first thing I did after cleaning up was plug the oven back in… Well, not the AC line, but the USB power. Maybe the Solid state switch got stuck? Maybe it overheated and failed in a shorted condition? Let’s see…
This was weird; the LCD display was showing random temperature readings from the MAX6675 K-type thermocouple amplifier? I was seeing sporadic readings of -40 to 0 to 400?? My first thought was maybe the thermocouple got damaged some how. I opened and closed the lid so many times on the thermocouple cable that maybe it the conductors snapped inside the insulation? I replaced the probe, and what did I see? The same goofy readings! Then I started to think… what was different here? Remember the random USB AC adapter I used for the 5V source? That was definitely not the same adapter I used at my last place for the first hundred boards. I swapped it out and bingo! The correct stable temperature was displayed.
Here’s the two adapters:
Can you guess which is the bad one? It’s the one on the right… the one that is not a switch mode power supply, the one that has no agency markings!
Here’s a shot of what the bad one was giving me at room temp: (in C)
And the good supply:
So how did I guess that it could be power supply related? Well, the MAX6675 requires a strong 5V rail for it’s precise analog measurements. I can’t imagine how crappy that voltage must look like on a scope. I imagine there’s a lot of ripple and high frequency content. Maybe I’ll take this a step further and post those plots once I get over the lead poisoning I’m enduring at the moment
Moral of this story is that an over temperature device is always a good idea!! Keep it on a separate circuit completely. I will be adding a mechanical relay in series with the AC line and a simple OT detector. Oh, and I’ll be reflowing boards outside from now on. What happened here can be explained easily. The reflow profile is programmed by hitting temperature set -points throughout the process. It never hit any of the set points… so the arduino asked for more heat. The MAX6675 must have been giving really low readings the whole time. A more robust filter on the 5V to the MAX6675 could have prevented this as well, but there’s not a whole lot you can do when it’s really bad, which I’m sure it is. That’s it for now… I need to go drain a few cans of febreeze into my place.