Help repairing a fried Arduino - Page 1
Forum section: electronics / repair

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 08:32:58 am
content: So, I've managed to burn my Arduino. What I did was I accidentally drop a 12V line on the ground of Arduino. I don't understand where the circuit was closed, because technically I've shorted the 12V rail, but maybe this it's not that important now.So, what's the situation now? The board starts up and it's recognised by the PC. I've changed the ATmega328 with another one that I've burned the bootloader on it (with another board), and the blink sketch that I believe was put on the chip by default at bootloading is working fine on my board (I can see the L led blink). The problem comes when I try to upload a new sketch: it's giving me the same error as it would if I choose the wrong board type (I don't have the board with me right now, I'll post the error code when I get home).Where should I start troubleshooting the board? Can anybody point me in the right direction?Thank you!

author: Psi
author_rank: Super Contributor
timestamp: January 08, 2013, 09:04:19 am
content: Was the 12V from a battery or other high current supply?The usual result (from a ground short) is a burnt PCB track.Look for a track that's a different color to the others.If you find one give it a scrape with your fingernail and the pcb coating will usually break off easily and show charred copper underneath.If you find a track like this figure out how much of the track is burnt and where it is ok on each side.Then scrap to expose fresh copper at each end and solder a piece of wire to join it back together.

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 09:11:47 am
content: I will not necessarily call it high current, but it's capable of 1 amp. The contact was very brief (less than a second).I forgot to mention that all the LEDs on the board went on for a split second upon contact, so the circuit was defiantly closed somewhere. Maybe some current was still in the caps? I don't know, I'm still a newbie to electronics, just started some moths ago ...I'll try to give tracks a better look. Thanks!

author: helloworld922
author_rank: Regular Contributor
timestamp: January 08, 2013, 09:13:23 am
content: Haha, must be a common failure mode with these Arduinos (I've done it, and I know someone else who's done it, too).Both of our boards had fried the electrolytic power caps (near the power jack connector). Try replacing one (or both) of them if they don't quite look right. The Arduino website has the schematics for the boards freely available so you can look up their values (mine were 100uF caps).

author: Psi
author_rank: Super Contributor
timestamp: January 08, 2013, 09:19:13 am
content: Quote from: PostaL on January 08, 2013, 09:11:47 amIf it can only supply 1A then i doubt <1 second of short would produce enough temp rise to melt a track.Melted tracks normally happen when you short batteries and get 10A+

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 09:23:01 am
content: Quote from: helloworld922 on January 08, 2013, 09:13:23 amIf those caps are on the power lines and are faulty, will the board still power on and function properly, except upload functionality ?

author: Niklas
author_rank: Frequent Contributor
timestamp: January 08, 2013, 09:53:53 am
content: Perhaps the FTDI circuit that converts USB to TTL is partially fried? The USB part might be ok and still connect, but the the TTL pins can be faulty.

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 10:24:16 am
content: So this means the ATMEGA8U2-MU might be fried ? Any idea how to check that ?

author: dr_p
author_rank: Frequent Contributor
timestamp: January 08, 2013, 11:47:08 am
content: What I would do:Try to remember exactly what you did. What color wire went where, where did it come from? What does that mean? Draw the schematic of what resulted from the wrongful connection, maybe it's evident why it wentCheck the voltages.Use an analog meter (or scope or fast digital bar-graph) to see what drop there's on the 5V rail while working.Measure current while working.Try replacing the caps, or at least add some more. (100uF before the regulator, 10uF after it) %-B

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 11:56:40 am
content: Ok. So changing the caps wins so far, and seems to be the easiest step. I'll surely try that first.I know exactly what was connected: I had an 16x2 LCD connected to some data lines and the 5V rail connected to the breadboard power line. There was a common ground in between the 12V and 5V rail, and I shorter the 12V line to the ground. How this managed to get to my Arduino, I have no clue, because it seems to me that in this case, I just shorted the 12V power supply. The Arduino was freshly unpowered, so maybe there was some juice left in the caps, but I'll have to check the schematics, as you said to check what might have gone wrong.Thank you!

author: amyk
author_rank: Super Contributor
timestamp: January 08, 2013, 12:08:01 pm
content: Are you sure you didn't accidentally get 12V onto the 5V rail when clearing the short?

author: dr_p
author_rank: Frequent Contributor
timestamp: January 08, 2013, 12:11:18 pm
content: So you shorted the input of a 5V regulator that might have still had voltage in the output filter caps. I don't have a schematic so I don't know what type of regulator it is, but this can cause damage to some chips. You would have to read the datasheet if the Vreg and see what they say regarding the protection diodes vs caps size. Or try to replace the regulator.

author: PostaL
author_rank: Contributor
timestamp: January 08, 2013, 12:32:51 pm
content: Quote from: amyk on January 08, 2013, 12:08:01 pmI don't understand... You mean like when I shorted the ground to actually charge some caps that when I stopped the short discharged in the 5V rail? Or if I also accidentally afterwards touched also the 5V rail?Fo the first one, I don't know, I'll have to check the Arduino schematics and see what I can make of it, but I didn't had any caps other that those. On the second one, I'm sure that the only thing that wire touched that shouldn't have was the common ground.Quote from: dr_p on January 08, 2013, 12:11:18 pmIf I'm not wrong, the regulator in the Arduino is anLP2985, which, if I understand correctly, should witstand up to 16V.Quote from: dr_p on January 08, 2013, 12:11:18 pmI'm afraid I'm too much of a beginner to understand thatQuote from: dr_p on January 08, 2013, 12:11:18 pmI'll add it to the "to be replaced" parts list.Thank you!

author: dr_p
author_rank: Frequent Contributor
timestamp: January 08, 2013, 12:49:46 pm
content: Quote from: PostaL link=topic=13285.msg179255#msg179255Check this out (especially from 5:20):

author: mazurov
author_rank: Frequent Contributor
timestamp: January 08, 2013, 06:06:32 pm
content: To check if USB to serial is dead find another one with TTL output ( this is representative ->https://www.sparkfun.com/products/9716?,as well as many others ), cut the RX,TX traces (pins 0,1), connect to converter and try to upload. This should work with good Arduino as well, so if you have one you can do it step by step. Load a sketch with interactive terminal to a good Arduino, mod, connect USB to serial, see if you can interact with a terminal via it. If yes, try to upload, if successful, try on the bad Arduino.Uploading is a little tricky with third-party USB to serial converters since you need to reset the micro just before starting avrdude. The built-in converter has DTR wired to reset, you can do the same on an external converter or simply practice pressing reset button on the board just after starting uploading. You can practice on a good board too.

author: westfw
author_rank: Super Contributor
timestamp: January 09, 2013, 08:22:07 am
content: Did you try a serial loopback test?http://arduino.cc/forum/index.php/topic,73748.0.html

author: PostaL
author_rank: Contributor
timestamp: January 09, 2013, 08:23:48 am
content: I had no clue about this! I will try it as soon as I get home! Thank you!Tho I get a hard feeling this will fail.

author: lapm
author_rank: Frequent Contributor
timestamp: January 09, 2013, 09:42:47 am
content: Fail or not, you sure get good practise on fault finding

author: PostaL
author_rank: Contributor
timestamp: January 09, 2013, 10:04:43 am
content: I sure do! Always looking at the half-full side of the glass

author: PostaL
author_rank: Contributor
timestamp: January 09, 2013, 04:39:05 pm
content: Quote from: westfw on January 09, 2013, 08:22:07 amI've tried it and it didn't echo nothing back. But that being said, it didn't echo back nothing with the good board either :|.The only step i have doubts I might have done wrong is "Connect the terminal application to the serial port for your board.". What I did is what I usually do: from Arduino IDE, after I connect the board, I open the Serial Monitor from Tool > Serial Monitor. In the title of the serial monitor I see the correct COM port, so I guess is the correct way.Can someone confirm that this testing method is working on their board?

author: PostaL
author_rank: Contributor
timestamp: January 10, 2013, 10:26:46 am
content: I've measured the 5V and 3.3V rails and they are ok. Also, to reiterate, the new ATmega328 microcontroler that I've bootloaded and inserted in the Arduino works just fine (the default blink sketch blinks the LED on pin 13).Correct me if I'm wrong, but this two facts will sugest the power module of Arduino is ok. So the only thing that remains is that the transmission part of the ATmega8U2 (the USB microcontroller) is fried?I foundthis article about updating the Arduino firmware. Will this work to program a blank new ATmega8U2? I'm planing to replace it with a new one, and I need a way to load the firmware on it.PS: I also attached the Arduino schematics for whom may want to give it a glance ...

author: SeanB
author_rank: Super Contributor
timestamp: January 10, 2013, 11:01:40 am
content: Before replacing it try reprogramming it first, it might just have corrupted firmware. Nothing to lose and then you will be able to program the other new one with the firmware as well.

author: miceuz
author_rank: Frequent Contributor
timestamp: January 11, 2013, 07:56:00 pm
content: Do TX RX leds blink when you are trying to upload a sketch?I've used my adruino as a simple UART to USB converter once, this might work to check if USB to UART chip is fried: program your good arduino with something that writes to serial monitor, remove the chip from fried arduino, connect TX and RX lines from good arduino to fried one (I don't remember if I had to swap lines or not, so you might try both TX->TX RX->RX and TX->RX Rx->TX), open a serial monitor to fried arduino and check if you see the output from good arduino

author: mazurov
author_rank: Frequent Contributor
timestamp: January 11, 2013, 08:18:13 pm
content: Also, you can just pull Atmega chip out of a good Arduino; this will leave USB to serial converter which can be used with any terminal program on a PC.

author: randyhenke
author_rank: Newbie
timestamp: January 12, 2013, 04:32:51 am
content: Here is a link to the arduino page showing you how to program an arduino on a breadboard. Just follow the hookup procedure and try programing it this way. If it works you know the usb to serial converter is fried and needs to be replaced. Try this first before removing any soldered components.http://arduino.cc/en/Tutorial/ArduinoToBreadboard

author: PostaL
author_rank: Contributor
timestamp: January 12, 2013, 03:48:37 pm
content: Quote from: randyhenke on January 12, 2013, 04:32:51 amQuote from: miceuz on January 11, 2013, 07:56:00 pmI believe you meant "if itdoesn'twork". I've tried this before and it doesn't work. When I try to upload, the RX LED blinks shortly 3 times and then nothing. In the Arduino IDE console I have the following error:Code:avrdude: stk500_getsync(): not in sync: resp=0x00

author: PostaL
author_rank: Contributor
timestamp: January 18, 2013, 11:26:45 pm
content: I found the problem !!! As Dave would say: trap for young playersWhen I burned the bootloader on the new chip, I usedthis tutorial(the "Burning the Bootloader" section).What I didn't realize at that time, and now came as an epiphany, was that at step 3, when they tell you what board to select, you'll actually select what bootloader to upload to the new chip, not the board you are using to do the bootloader burning. Of course, my board is an Uno not a Duemilanove/Nano. I selected now Uno, burned the bootloader, and now works like a charm. Dho!Thank God I didn't figure this out after I started desoldering stuff from the board, or I would have been all likeThanks to all of you for all the great feedback. Learned a lot !