Pages: [1] 2 3 4   Go Down
Author Topic: About the article "10 Ways to Destroy an Arduino"  (Read 6859 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.  I'm just wondering, are all the pitfalls mentioned in the article true? (Obviously, the author of the article has a conflict of interest.)

Best regards,
Gary
« Last Edit: October 31, 2012, 10:49:07 am by ma_hty » Logged

0
Offline Offline
Shannon Member
****
Karma: 161
Posts: 10432
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Those are all things that take components on the board past their absolute maximum ratings - some of them might take a while to do damage, and you might be lucky, but its definitely worth avoiding all them !

People for instance often short out output pins and get away with it - or end up with only slight damage (one pin doesn't drive fully high or fully low - I've got one Arduino Pro Mini like this for instance).  In general exceeding the 40mA limit on pins will lead to permanent damage as the output FETs overheat.

The barrel jack is protected against reverse voltage but the Vin pin is not - hence method #4


So yes - take care, and if you can't take care (perhaps you are teaching a class!) consider a ruggedized version to reduce the accidental releases of the "magic smoke".
Logged

[ I won't respond to messages, use the forum please ]

Offline Offline
God Member
*****
Karma: 21
Posts: 650
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Well, the Uno is a pretty rugged device, based on a pretty rugged uC (Atmel atmega328p-au). All of those things in the list mentioned *could* cause damage, but not typically instantly. In other words, if you miswired the device but realised your mistake quickly, you may well be lucky and found you have not caused any permanent damage. It would take a some time before the shorted components would overheat and "let out the magic blue smoke", as they say.

I've accidently done lots of bone-headed things over time with these chips, and I'm amazed at how forgiving they are, overall. So, I wouldn't be *too* nervous (but a healthy degree of care and caution is always a good thing anyway.) These boards were primarily designed to be put into the hands of rank beginners, to build basic skills and confidence.

Logged

WiFi shields/Yun too expensive? Embeddedcoolness.com is now selling the RFXduino nRF24L01+ <-> TCP/IP Linux gateway: Simpler, more affordable, and even more powerful wireless Internet connectivity for *all* your Arduino projects! (nRF24L01+ shield and dev board kits available too.)

0
Offline Offline
Shannon Member
****
Karma: 161
Posts: 10432
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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).   Similarly high overvoltage or undervoltage to any pin can vaporise a protection diode.
Logged

[ I won't respond to messages, use the forum please ]

Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I see.  Thanks.

Actually, I did make quite a number of those mistakes mentioned in the article accidentally already.  I got lucky, and realized them soon enough.

Among the 10 pitfalls mentioned, there is one bordered me, i.e. Method #10.  It says lighting up 10 LEDs will damage the board.  What should I do if I really have to light up 10 LEDs with individual control?
Logged

Offline Offline
Edison Member
*
Karma: 18
Posts: 1170
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
Logged

USA
Offline Offline
God Member
*****
Karma: 14
Posts: 644
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Among the 10 pitfalls mentioned, there is one bordered me, i.e. Method #10.  It says lighting up 10 LEDs will damage the board.  What should I do if I really have to light up 10 LEDs with individual control?

The reason #10 can damage the Arduino IC is that in addition to the maximum current each I/O pin can supply, each bank of I/O pins also has a maximum current that is significantly lower than then the total would be if all the pins in that bank were supplying near their maximum current.

The way you avoid the problem with a normal UNO would be to have a separate power supply for the LEDs, and then have each LED control pin connected to a low-side transistor switch that will turn the power to a particular LED on or off based on the state of that pin.
Logged

the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 149
Posts: 2790
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Don't worry, be happy. With electronics, expect some smoke once in a while. It's called the
learning curve. Best to buy 2 Arduino boards from the getgo, :-), so if one stops working
you can see if the software still downloads and functions on the good one.

See the following motto:

http://andahammer.com/

"Experience Gained is Directly Proportional to the Amount of Equipment Destroyed."

Items #1..#3 are probably the most common 'accidents', other than applying Vin of reverse
polarity, which is mitigated by some bds having a diode in the Vin line. The simplest way
to deal with #1..#3 is to wire small value [220-330 ohm] resistors in series in the I/O lines.
« Last Edit: October 31, 2012, 12:23:17 pm by oric_dan(333) » Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 508
Posts: 31431
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In other words, if you miswired the device but realised your mistake quickly, you may well be lucky and found you have not caused any permanent damage.
No you have caused permanent damage it is just that in the limited use you make of the processor you might not notice it.

Quote
"Experience Gained is Directly Proportional to the Amount of Equipment Destroyed."
While pithy, it is not true.
I like
"the second time you are kicked by a mule you have learn nothing"
Logged

the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 149
Posts: 2790
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
While pithy, it is not true.

It more or less indicates that 'accidents' are not uncommon in the electronics world.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey, relax.

I'm a programmer who tired with virtual and wanted some reality.
There is no problem for me to appreciate the sense of humor in
oric_dan's post.
« Last Edit: October 31, 2012, 12:41:24 pm by ma_hty » Logged

Offline Offline
God Member
*****
Karma: 21
Posts: 650
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Best to buy 2 Arduino boards from the getgo, :-), so if one stops working
you can see if the software still downloads and functions on the good one.

Good advice. Certainly helps to answer some debugging questions very quickly. When working with a new board, I like to have a backup on hand for just this reason.

Depends on the price though, admittedly. I've recently bought two Teensy 3.0s, because they are a very affordable $19 each.

Not sure I'd plunk down $49 twice for a Due, though. Not even sure I'd plunk down $49 once yet!
Logged

WiFi shields/Yun too expensive? Embeddedcoolness.com is now selling the RFXduino nRF24L01+ <-> TCP/IP Linux gateway: Simpler, more affordable, and even more powerful wireless Internet connectivity for *all* your Arduino projects! (nRF24L01+ shield and dev board kits available too.)

Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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?
Logged

USA
Offline Offline
God Member
*****
Karma: 14
Posts: 644
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
« Last Edit: October 31, 2012, 01:27:34 pm by Far-seeker » Logged

the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 149
Posts: 2790
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
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.
Logged

Pages: [1] 2 3 4   Go Up
Jump to: