About the article "10 Ways to Destroy an Arduino"

ma_hty:

KeithRB:
You need a separate power supply / driver that is controlled by the arduino. Could be as simple as a logic-level MOSFET for each LED.

Can I use shift registers (e.g. 74HC595) instead to solve the same problem?

For many shift registers you'd only be able to fully power one 0.3 to 0.5 mm LED per output pin of the device. That's because they will have a maximum continuous output current of only 20 to 40 mA. In the case you are asking about that might be sufficient; but a transistor used as a switch could power arrays of multiple LEDs, or other much higher current loads.

Edit: And some of them, like the 74HC595, have a maximum input current of around ~75 mA. So you wouldn't be able to use the 74HC595 if you needed more than two LEDs lit at the same time.

12V connected to either 5V or 3V3 pin will instantly destroy it guaranteed (in a few hundred microseconds the FET gates will puncture I bet).

Another thing to be aware of, is that most Arduino bds nowadays use tiny SOT-223 smt [surface mount]
voltage regulators, and these are both less robust and more prone to overheating than the older
TO-220 packages like 7085, LM2940, etc. The TO-220 can withstand reverse-polarity and output
shorts better without termination.

Even though the smt v.regs may tout "1-Amp", they are typically only good for 100 mA or two before
overheating. IE, with Vin = 9V, the power dissipation in the v.reg is Pd = Vdrop * I = (9V - 5V) * 1A,
or 4-Watts, and 4-Watts will fry an SOT-223 package. SOT-223 devices are actually rated at only
about 0.3-Watts.

So, you can see, with Vin = 9V, you can only draw about 100-mA or so off the v.reg before
overheating.

Reads like an "advertisement" more than an "article" to me.

My strategy is to use ATMega328 chips that cost $2 each from Digikey instead of Arduinos. Doesn't hurt as much to mess one up. And you can set the fuses any way you want, use the internal oscillator and free up 2 pins, retask RESET, etc.

ma_hty:

KeithRB:
You need a separate power supply / driver that is controlled by the arduino. Could be as simple as a logic-level MOSFET for each LED.

Can I use shift registers (e.g. 74HC595) instead to solve the same problem?

Why not use a proper LED controller. They work just like a 74HC595 but you don't have to worry about resistors - it's all in the chip.

ma_hty:
Hi All,

I'm a beginner to Arduino, and I'm very nervous whenever I connecting pins with wires. I came across an article "10 Ways to Destroy an Arduino" in the internet.

Yes, but most are unlikely.

Remember: You can usually fix your Arduino in five minutes with a $3 replacement chip.

fungus:
Remember: You can usually fix your Arduino in five minutes with a $3 replacement chip.

"five minutes chip replacement", interesting, it really rings the bell. Can I have more information about how? I'm willing to do soldering, though I'm lousy in soldering.

Just buy a new bootloader chip from Adafruit or Sparkfun.

ma_hty:
I'm a beginner to Arduino, and I'm very nervous whenever I connecting pins with wires. I came across an article "10 Ways to Destroy an Arduino" in the internet. I'm just wondering, are all the pitfalls mentioned in the article true? (Obviously, the author of the article has a conflict of interest.)

All of them are very real! And I have experienced most of them myself in one way or another. I buy Atmega 328p chips (the CPU on the Uno) in quantity 25 from Digi-Key, so each cloud of magic smoke only costs me $1.98 :slight_smile: I do crazy things like build my own H-bridges for 15A motors, though, and I'm also known to accidentally put down soldering irons on energized boards. :blush:

If I had known about the Ruggeduino when I started out with Arduinos, I'd probably have gotten one of those instead.

Note that the "conflict of interest" with the author might not be all that bad. It's not like he's trying to scare you into buying his version. It seems to me like he knows how things can go wrong, and because he specializes in ruggedizing circuits (I think he's a consultant) he's using the Ruggeduino as a showcase of what he can do. Also, as the Arduino really is aimed at a wide variety of skill levels, I'm a little miffed that the Arduino guys themselves didn't add those protections. At the volume that Arduino Unos are selling these days, that probably would have been very cheap...

oric_dan(333):
Just buy a new bootloader chip from Adafruit or Sparkfun.

Arduino bootloader-programmed chip (Atmega328P) : ID 123 : $5.95 : Adafruit Industries, Unique & fun DIY electronics and kits

Opps... how can I miss something that obvious?! Thanks.

I just discovered jameco.com is also selling Arduino bootloader chips now. Go to the
website and request their catalog by mail. 10,001 different electronics parts.

http://www.jameco.com/webapp/wcs/stores/servlet/Product_10001_10001_2129334_-1

As for 10 LEDs... I'd buy bright LEDs and run them at lower current. 10 LEDs at 5mA each would be no problem.

ma_hty:

fungus:
Remember: You can usually fix your Arduino in five minutes with a $3 replacement chip.

"five minutes chip replacement", interesting, it really rings the bell. Can I have more information about how? I'm willing to do soldering, though I'm lousy in soldering.

  1. Pull broken chip out of Arduino
  2. Put new one in.

No soldering needed.

Here is a link to a video of a simple project with a total of eighteen (18) LEDs.

Nothing burned or even got warm.

Maybe I'm lucky? Or maybe all the LEDs have to be on one output...

oric_dan(333):
I just discovered jameco.com is also selling Arduino bootloader chips now. Go to the
website and request their catalog by mail. 10,001 different electronics parts.

http://www.jameco.com/webapp/wcs/stores/servlet/Product_10001_10001_2129334_-1

A very good way to get a couple. But you can get those chips for $2 each from Digikey if you buy 25, put the bootloader on yourself as an evening project.

CarlW:
Nothing burned or even got warm.

That's what you think...

Very curious about how the damage would manifest? Do I need to worry?

Here is what the ARDUINO REFERENCE says about the UNO...
Input and Output
Each of the 14 digital pins on the Uno can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms.

The LEDs used are rated at:
Max Continuous Forward Current : 30mA
Max Peak Forward Current : 75mA

The ATmega328P datasheet (page 303) says:
29.1 Absolute Maximum Ratings*
29.2 DC Characteristics
Operating Temperature.................................. -55 C to +125 C
Storage Temperature ..................................... -65°C to +150°C
Voltage on any Pin except RESET
with respect to Ground ................................-0.5V to VCC+0.5V
Voltage on RESET with respect to Ground......-0.5V to +13.0V
Maximum Operating Voltage ............................................ 6.0V
DC Current per I/O Pin ................................................ 40.0mA
DC Current VCC and GND Pins................................. 200.0mA
*NOTICE:
Stresses beyond those listed under “Absolute
Maximum Ratings” may cause permanent damage
to the device. This is a stress rating only and
functional operation of the device at these or
other conditions beyond those indicated in the
operational sections of this specification is not
implied. Exposure to absolute maximum rating
conditions for extended periods may affect
device reliability.

Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage

That's all you get to know. Without relatively sophisticated testing, you might never notice (in which case, is it really damaged?)
From reports that I've seen, more people are abusing their AVRs and having them appear to survive (ie by driving LEDs directly with no current limiting resistors), than are having their AVRs die from momentary overloads.

westfw:
From reports that I've seen, more people are abusing their AVRs and having them appear to survive (ie by driving LEDs directly with no current limiting resistors), than are having their AVRs die from momentary overloads.

Yep. AVR chips seem quite resilient to having their output pins shorted to ground. It's a good thing too, when you see the abuse they get (keep reading these forums for horror stories...)

Aside: I wonder if the designers knew this?

They even seem to survive being plugged into the socket backwards. Atmel didn't put the VCC/GND pins diagonally opposite each other - a common trick used to kill chips in the old days (eg. 74LS logic chips).

OTOH don't assume this is 'normal' for electronics. Many chips will die instantly at the slightest abuse.

fungus:
Yep. AVR chips seem quite resilient to having their output pins shorted to ground. It's a good thing too, when you see the abuse they get (keep reading these forums for horror stories...)

I wonder if we are going to see horror stories about people's new Dues being destroyed due them being less sensitive to abuse and because of the 3.3v vs. 5v issues. Shorting out your first Due is a teachable moment, shorting out the second probably indicates whether you ignored the teachable moment.

MichaelMeissner:
I wonder if we are going to see horror stories about people's new Dues being destroyed due them being less sensitive to abuse and because of the 3.3v vs. 5v issues.

I really can't see how it is reasonable to expect anything else.