Fried USB Connector??

My Mega 2560 has been working fine, until ....

On Saturday I wanted to show a mate what I had been working on so I grabbed what I thought was a suitable power supply - I used a mobile phone charger with a USB adaptor as I figured that it would be no different than powering the Mega from a USB port (my phone can also be charged from a computer USB board).

I have just plugged the Mega into my computer and everything is silent - the computer does not recognise the board at all. My sketch still runs so everything else appears fine.

I suspect that something relating to the USB connection has been fried??

Any advice appreciated.

Not necessarily. Did your gear work OK on your mate's PC? The phone charger is not such a good way to run an Arduino as it is short of volts, but it shouldn't fry it either. You could be in the position where you haven't uploaded anything of late. An upload should tell you more than just running a sketch. The USB must be kosher to upload, but a dud port doesn't necessarily stop the sketch from running.

Hi Nick

Just to clarify...

I was not running it off a PC on Saturday night - I was just using the phone charger to power the Mega.

Now that it connected to my PC, I cannot upload anything as the computer does not recognise the Mega, and thus does not open a Com port. The USB powers the Mega fine, so I suspect that there is just something wrong with the communications side.

Cheers

It's odd that a phone charger would do that, although I have been looking at the EEVblog episode about cheap USB chargers and how badly made they are.

It would be interesting to try to measure the output of the phone charger (preferably without plugging it into the Mega) if you have a suitable way of getting at the connections. If it exceeded 5.5V it may account for what you are seeing.

Does your Mega have an ICSP header for the USB chip (adjacent to the USB socket)? If so you could use a second board to see if the USB chip is "alive".

Thanks Nick

I have a spare UNO at home so I will have a play tonight.

Cheers

Hi Nick

When I connected the Mega to a Uno using pins 51, 52 and 53 I get this output

Atmega chip detector.
Entered programming mode OK.
Signature = 1E 98 01 
Processor = ATmega2560
Flash memory size = 262144
LFuse = FF 
HFuse = D8 
EFuse = FD 
Lock byte = FF 
Clock calibration = 81 
Bootloader in use: Yes
EEPROM preserved through erase: No
Watchdog timer always on: No
Bootloader is 8192 bytes starting at 3E000

Bootloader:

3E000: 0D 94 F6 F2 0D 94 1F F3 0D 94 1F F3 0D 94 1F F3 
3E010: 0D 94 1F F3 0D 94 1F F3 0D 94 1F F3 0D 94 1F F3 
3E020: 0D 94 1F F3 0D 94 1F F3 0D 94 1F F3 0D 94 1F F3 
.....
3FFE0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
3FFF0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

MD5 sum of bootloader = 1E 35 14 08 1F 65 7F 8C 96 50 69 9F 19 1E 3D F0 

First 256 bytes of program memory:

0: 0C 94 E3 71 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
10: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
20: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
30: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
40: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
50: 0C 94 1C 9F 0C 94 0F 72 0C 94 0F 72 0C 94 85 A3 
60: 0C 94 0F 72 0C 94 B5 A6 0C 94 F9 A7 0C 94 0F 72 
70: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
80: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
90: 0C 94 F5 A6 0C 94 38 A8 0C 94 0F 72 0C 94 0F 72 
A0: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
B0: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 
C0: 0C 94 0F 72 0C 94 0F 72 0C 94 0F 72 0C 94 35 A7 
D0: 0C 94 77 A8 0C 94 0F 72 0C 94 75 A7 0C 94 B6 A8 
E0: 0C 94 0F 72 05 A8 4C CD B2 D4 4E B9 38 36 A9 02 
F0: 0C 50 B9 91 86 88 08 3C A6 AA AA 2A BE 00 00 00

Which appears to be as it should be.

There is an ISCP header near the USB socket but I have not been able to identify which pins to connect too. Using a continuity test I have been able to identify the GND and 5v, but not any of the others.

A close inspection of the ATmel8U2 chip seems to show some physical damage (The ATmel lettering is discoloured - I can upload a photo if required) so I suspect that this chip is fried.

Cheers

Look at this image (from this site):

Pin 1 is marked with a dot.

Since you got a response from the main processor you can probably program it via the ICSP interface (even if the USB chip is fried). You can use an Arduino as ISP to do that, or get a dedicated programmer (around $10 on eBay).

I also have a sketch that lets you copy the .hex file (from the compiler) onto an SD card and program using that: