No tty devices for Uno R3 on MacOS

Hi, I'm new to Arduino, but not new to MacOS or to programming. I'm having the seemingly common problem getting my new Uno R3 and my Mac to establish USB communication. I've scoured the Troubleshooting forum, but none of the problems or solutions described there seem to match my scenario.

I am running MacOS Lion (10.7.4), and as noted am using an Uno R3 card purchased from Radio Shack. When I plug in the Uno, both the large ("on") LED and the small ("L") LED light up steady. HardwareGrowler notes the event via the bubble

USB Connection
ATmega16u2 DFU

However, when I load the Arduino application (1.0.1), I do not see the expected /dev/tty.usbmodem* devices. All that an ls -l listing shows me are the following device files:

0 crw-rw-rw- 1 root wheel 18, 3 Aug 15 01:15 /dev/cu.Bluetooth-Modem
0 crw-rw-rw- 1 root wheel 18, 1 Sep 1 18:58 /dev/cu.Bluetooth-PDA-Sync
0 crw-rw-rw- 1 root wheel 18, 2 Aug 15 01:15 /dev/tty.Bluetooth-Modem
0 crw-rw-rw- 1 root wheel 18, 0 Sep 1 19:20 /dev/tty.Bluetooth-PDA-Sync

I have tried with the Arduino plugged into an external USB hub, as well as directly into the USB ports on the rear of my iMac (a 2.7 GHz Intel Core i5 from 2011) with no difference in behavior.

I have tried with the Arduino plugged into a different computer -- a MacBook Pro laptop (a 2.5 GHz Intel Core 2 Duo running Snow Leopard 10.6.8), also with no difference in behavior.

I have tried all combinations of two different USB cables connected between the Arduino and both Macs, as well as into the Macs' internal USB ports as well as external USB hubs, with no difference in behavior.

The Uno page at http://arduino.cc/en/Main/ArduinoBoardUno suggests that no FTDI drivers are required for the Uno R3. I do not see any popup when I plug the card into my USB port other than the message from HardwareGrowler mentioned above.

Attached below is a screen shot of System Information with the Uno R3 card plugged in. (This is with the Uno plugged directly into the iMac's rear side USB ports.)

I hope some of you have some ideas; I'm disappointed that I can't use my Arduino.

It looks like the ATmega16u2 is in DFU mode. Meaning the ATmega16u2 does not have the serial firmware loaded.

This should have been done in the factory.

Anyway, you can attempt to load the serial firmware yourself or you could try to exchange it at Radio Shack.

If you attempt to upload the firmware yourself, you will need to get a patched version of dfu-programmer that supports the ATmega16u2.

The current version of dfu-programmer on Sourceforge has not been updated to support the 16U2.

Here is a link to a forum post about patching and building dfu-programmer:

Once you have a working version of dfu-programmer, you can find the firmware in your Arduino download:
hardware\arduino\firmwares\arduino-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex

Thank you, Louis.

That sounds rather involved, but I didn't see anything that I shouldn't be able to figure out; I'll give it a stab tonight.

Odd that the device is missing its firmware. My lazy option would be to exchange the bad card at Radio Shack, but it was the only one in stock in any of the three stores in town, so that's not a very good option. It will be the plan, however, if the re-flashing doesn't work.

I'm having the same issue and it's very frustrating. Let me know if you have any success with this. I went and bought a new arduino r3 at radioshackad it still doesn't work.

So, some good news and some bad news.

The good news: I successfully reinstalled the firmware on the Uno R3 card; I had to borrow snippets from a total of five different web pages and forum articles to accomplish this, so it was less than straightforward.

: ./src/dfu-programmer atmega16u2 flash Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex
Bootloader and code overlap.
Use --suppress-bootloader-mem to ignore

Since I had little choice, I supplied the --suppress-bootloader-mem option. The card flashed and my Mac instantly saw a USB modem device as would be expected.

The bad news: Unfortunately, the bootloader would not function. The overlap problem might suggest that the bootloader had been corrupted from the get-go, though my flashing of the card would surely have caused havoc even if the bootloader wasn't dead on arrival.

Since I lacked the ability to reinstall the bootloader, I returned the card to Radio Shack as defective. My exploration will continue once there are new Arduino Uno cards available locally.

Thanks to Louis Davis for the troubleshooting help.

You should not have loaded the "COMBINED" version of the firmware. That is only used when loading with an ISP.
The "COMBINED" version has the DFU bootloader and serial firmware combined as one image.

I had indicated you should load:
hardware\arduino\firmwares\arduino-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex

This is only the serial portion of the firmware, leaving the bootloader alone.

Sorry if I did not make that clear enough.

No apology needed; I just picked the wrong one from the list and didn't know the ramifications of "combined". Let's hope that the next card doesn't have firmware missing so I don't need to fool with it. And if I do, I've now been through the exercise once, so I'll be wiser this time.

I wish I could get this far. I can't get my arduinio uno R3 into dfu mode.