Showing posts with label Mosfets. Show all posts
Showing posts with label Mosfets. Show all posts

Tuesday, 1 November 2011

Arduino Mega board is toast!

I have managed to blow my Arduino mega board.
It stopped uploading, and there was a 'hot' smell - never a good sign. Unplugging everything, the arduino chip was very hot indeed.

After waiting for it to cool, I found that plugging it into the USB socket - nothing else - started to make the mega chip warm up, and it got too hot to touch. :-(
Another circuit board is sacrificed to the gods of knowledge and experience.

Tracing things back, I wondered how it happened. My setup hadn't changed, I'd just been running heater and extruder tests - the steppers weren't plugged in, so it was unlikely to be them.

Looking at the my heater board again, I realised that the output pin of the arduino was connected straight to ground through the MOSFET gate - no current limiting resistor. A bit of digging uncovered a possible problem - the design I'd used as a base (RepRap Gen 2/3) had the same circuit, but used current limiting Mosfets. I'd upgraded mine to larger ones, but checking the data sheet, the Mosfet gate acts a bit like a capacitor. Charging the gate could be done slow(with a resistor) or fast. A current of 2A was given as an example to charge the gate in 14nS.

Oh. The arduino pins can only handle 100mA or so. Still, it only does that when it's switched on or off, so long as I wasn't switching it on and off thousands of times a second - like using PWM.... Damn.

Looking back, it's surprising that it coped as well as it did - it should have gone up in smoke straightaway! I'm impressed it worked at all  - it coped for several hours of testing. Each time it switched, the arduino pin was directly connected to ground - drawing a big current for a few mS, then when it switched off, the mosfet gate would discharge itself straight through the arduinio pin to ground.

I have now redesigned my heater / Mosfet board to incorporate a 560ohm current limiting resistor (between the arduino pin and the mosfet gate), and also a pull-down 100k resistor between the Mosfet gate and ground. It should limit the current to 90mA, and make sure the gates switch off if the board isn't connected.

I've also ordered a couple of new Ardunios - hopefully I'll be more careful with these...
:-)