Mega 2560 no USB Com Port connection

Here's the situation - I purchased a Mega 2560 R3 about a year ago, just put it on the shelf. Opened it yesterday and when I connect it via USB cable to my laptop, the board powers on, pin 13 led blinks, but I can not connect to the Arduino IDE. The Port is grayed out in Tools.

More info - Arduino IDE v1.8.1 (and installed all USB drivers). When I plug USB cable in to laptop I get no beep (unlike every other USB device). When I use the same cable and the same physical port on laptop to connect a UNO board, everything works fine. The IDE sees it as port 6.

There is nothing connected to the Mega except USB cable. I've never uploaded a program to it.

So it seems the problem is the Mega board. Apparently the serial to USB is not working properly but I don't know why. This is my first experience with a Mega. Is there anything I can do or try to fix this? Oh, and what's the deal with the ICSP headers? I read that the one near the USB jack is for 16U2 USB interface. Since my problem is Comm, should I check (with meter) here first?

If it works on one computer but not another it is very unlikely to be the board.

What OS ?
Can you post a picture of YOUR board close to the USB connector ?

It may be something as simple as a driver issue or something as nasty as a bad USB port.

Thanks for the reply but the Mega board does not work on any of my computers. I should define "work". The 5 volts in the usb connection gets to the Mega board because it lights up and the bootloader program must be running because the pin 13 led blinks. What does not work is the Comm portion (Rx, Tx) of the usb interface from the Mega board.

Its late here right now, but I can take a picture of the board tomorrow and post it. Oh, I've read that the Uno and Mega use the same driver. My Uno works fine on my development PC but the Mega does not, using the same cable and the same physical usb port on the pc. The PC OS is Windows 7 Pro.

OK a pic is worth a thousand words around here so will wait for that.

There are different USB driver chips used on different boards of the same type.
There are 3 different chips used on the UNO and same on the MEGA so I would not assume it that just yet.

Here's your photo. I tried all different camera settings and this was the best focus.

-Dennis

Thats a good pic..Unfortunately it rules a few easier things out.

Another question What type of USB ports are you using ?
If its USB 3.0 then swap to USB 2.0 and try.

There is one more test HERE.
I hope for you that it works otherwise the USB side is probably pooched.

If thats the case all may not be lost as you mentioned ICSP.
Not always the answer but might be worth a last ditch effort.

There are various methods to upload a sketch to check the board itself but that would partly depend on what you have to hand ??

Another Arduino can often be used and there are lots of proven methods but the ones around the forum are often the ones that have been used by many.
I have a few things and the USB TINY is my GOTO device to refresh a bootloader or bypass the USB for some reason. You dont need to spend a lot of money on them either. All mine were from Ebay.

The ports I'm using are USB 2.0. And I tried the loop back test to no avail. The problem is that when the Mega's USB cable is plugged into the laptop, I get no device insertion tone nor does it cause that port to link to a comm port. If the Arduino IDE is open then another symptom is the Tools > Port is grayed out.

Can I use an UNO board to burn a new bootloader in the Mega? I have a spare UNO R3. Should I poke around here for "Mega bootloader burning" instructions?

If I replace the bootloader code with a known good program that would tell me if I have a hardware problem. Since I've never used this board, you know, uploaded a program to it, it might be that the current bootloader is preventing USB communication. (Scratching my head.)

If the UNO won't work, just tell me what to get.

  • Dennis

No boop-boop likely means the USB/Serial chip is not working.
Is it an Atmega16U2 (real Mega), or something else (clone with CH340 or C430)?

Its the real deal CrossRoads looking at the pic.

16U2.

Since my last post I've done a lot of reading and thought it might be useful to Mega2560 newbees (such as myself) that might read this thread, to clarify some terminology. The Mega2560 board has two processors on it: Mega16U2 and Mega2560. The Mega16U2 firmware manages communication between the USB port and the Mega2560. (My problem lies here.) The Mega2560 firmware is the bootloader for "Blinky" or any program uploaded by the user. (This is not where my problem is.)

Since my problem is no USB I/O, I suspect either the Mega16U2 hardware or firmware. Since this board's USB interface has never worked properly, I'm thinking that either the firmware is bad/incorrect or the fuses were not set correctly. I read that AVRDude can read a chip's firmware and settings, so I would like to do this so I could compare it to a known good hex file.

The only hardware I currently have to use as a ISP is an UNO board. So here are my questions: Can I use Arduino IDE 1.8.1 and my UNO R3 (as the programmer) jumpered to the Mega16U2 (as the target) ICSP pins and AVRDude (from Command line) to read and write 16U2 firmware and fuses? Can this be done directly from the IDE, not using AVRDude?

I ask these questions because there doesn't seem to be much info available on flashing a 16U2. Perhaps because I'm the only one who needs it. :o

Thank you for your time.

It is actually covered in lots of detail everywhere. Both here in the forums and on the web.

Probably the best guide is Nick Gammon's who is also a great source of other hard to find info and ideas.
He is also a forum member of great standing.

Another one worth of a mention is HERE as there is a video too.

There are a few Instructables for it too but I use a USBTINY which makes it a breeze.

Hey thanks Bob, both are very good reference links. I understand there is lots of detail everywhere on Arduino SPI but perhaps my question wasn't clear. Because of my problem with the usb interface I am looking for information on how read/write the 16U2, not the 2560, not a 328, etc.

To be more specific, can I program the Mega16U2 chip using an UNO? I only see the ability to select a board type which then assumes that board's main chip (e.g., Mega2560) needs a bootloader program. I don't want to flash the main chip, I want to flash the Mega16U2.

So, if the Arduino IDE can facilitate burning a Mega16U image then I'm good to go. If it doesn't, then I guess another SPI programmer will be required.

Oh, a minor update on troubleshooting my board. I checked continuity between the usb cable wires (green & white) D+ and D- though the usb jack, and to pin 29 & 30 of the 16U2 chip. Its good, including the series 22 ohm resistors. I just thought it was worth a shot to check.

Most of the megas have two ICSP headers one is for the 16u2

Little more detail HERE

However if the 16u2 is really pooched burning wont help fix it.
But using the 2560 header should let you put sketches in at least.

Thanks again Ballscrewbob. You're right about the 16U2 in that if its pooched my usb I/O is toast. I've confirmed that it is not pulling up the usb D+ or D- wires so the 16U2 chip is definitely the problem. I'm going to do my best to determine if the cause is hardware or firmware. My intent is to fix a firmware problem but just live with it if its hardware (I can't solder SMD.)

Thanks for the reminder that I can still use the board via the 2560 ICSP header, which is what I'll do.

Well, as some would say "I had to find closure" so I dug a little deeper to determine if my 16U2 problem is hardware or firmware. It turns out that it is hardware (the chip is bad).

Nick Gammon wrote several programs that are exactly what I was looking for. They use an UNO (or other Arduino board) as the ISP. The first program I used reads the chip, displays its settings, and the current firmware in hex. This program failed on my chip. Then I ran Nick's Programmer in an attempt to upload firmware to the 16U2. This program also failed. The chip is, what was the technical term, pooched.

So now I either have to learn how to solder a SMD chip or use the Mega2560 as a pretty blue paper weight. If I can't fix it, I'll use the 2560 ICSP header to upload programs but this method is not very convenient.

You can also connect up an FTDI Basic to D0, D1, and regain serial connectivity that way.
If the 16U2 is interfering with connectivity, you can remove the little resistor pack RN4 to isolate the chip from D0/D1, could be easier than lifting the 16U2. See the lower right of the schematic. Can't tell you where it is on the board without a little more sluething.

Connect DTR from the FTDI Basic thru a 0.1uF cap to Reset for autoreset during downloads.

1 Like

Hey thanks Crossroads, I'll try that. I've used FTDI before but never thought to use it with this bad board. I'll let you know how I make out. Thanks again.

Hi.
I was wondering if you ever had any luck with this 2560?