(solved) Arduino ADK Mega2560 Drivers

I've been trying to break my head on getting 2 of these boards to work. They are not detected as USB serial ports. As soon as i plug it, device manager in windows shows Atmega8u2. Is this how these boards show up by default? aren't they supposed to show as USB Serial ports? What could be wrong? In ubuntu 10.04, 'dmesg' shows high-speed USB Device but no Serial port... My other UNO works fine.

Anybody with a ADK board?

All help welcome...

I received mine today and I can't get it working, either. There is an updated boards.txt and a driver under http://arduino.cc/en/Main/ArduinoBoardADK (at the very bottom). Unfortunately, this does not seem to work for me.

Please keep me posted if you find something

I just received an email from Arduino Shop:

we made a double check on the stock and we found that some unprogrammed ADK boards were shipped for mistake. We will send you immediately a replacement. Sorry for the disease.

Whatever that's supposed to mean...

Nothing works... tried programming the Atmega8u2 using another arduino & avrdude... it throws up a verification error towards the end and after this windows does not detect the device....

2 questions i have

1) what are fuse settings for the Atmega8u2 on a normal uno / mega2560? efuse, hfuse, lfuse, lock & unlock

2)How does one get the Atmega8u2 to show as AT90USB82 ? Another bricked uno on a hardware reset(like described in the DFU programming pafe) started showing as a AT90USB82 and it was easy to get it back working with flip

Cheers, Pracas

I managed to get it into a mode where the Arduino app can see it on my Mac, but the ADK demo fails to upload with: avrdude: stk500_2_ReceiveMessage(): timeout

If you want to try, I downloaded the ATMel Flip program onto a Win7 box, then installed the correct USB drivers by browsing for them in Device Manager. I then used the SourceForge link to download the Arduino-usbserial-mega.hex file. I selected the USB device in Flip and then loaded the USBSerial mega hex file and it let me program it with the Run option. At this point I selected the Start Application which switch the Mega 2560 into the USB serial mode rather than DFU mode and the serial drivers appear in the Arduino app on the Mac and I can attempt (and fail) to upload the demokit.pde from the ADK. However I see other people complaining about a similar avrdude timeout on the Mac, so it could be I have got it "working" as much as I can on the Mac... trying an ADK download on the Win 7 box as I type this, so fingers crossed.

What is the device you chose in flip? and can you outline the step by step process... it keeps failing for me... after programming with flip, it still shows as an "Unrecognised USB device"

I’ll have to remember from memory as once I did the Start Program it switched out of DFU mode and I’m not sure how to switch it back.
I should say I still haven’t got past the timeout when uploading, so I might have flashed the wrong .hex file, but it certainly got me further, as the RX light is now flashing and it is set to COM6 on the PC and detected by the Arduino app.

I used Win7 x64. I started with it showing as a Atmega8u2 device without the driver installed (! in Dev Manager).
After installing flip, I installed the driver for the Atmega8u2 by browsing for it on PC in Dev Man.
Then in Flip I think I just selected USB and it un-greyed all the lower screen allowing you to chose things in the Run panel and select a HEX file.
I then selected the .HEX file I had downloaded from SourceForge (using RAW) - note the combined DFU/Serial file won’t work, only the SerialUSB… of course this still could be the wrong HEX file, given my upload issues.
At this point I chose the Start Program button on the bottom right of Flip. This switched the Mega ADK out of DFU mode and a new serial driver appeared in Dev Man (again without a driver).
I installed the driver by browsing PC in Dev Man and at this point it shows up as COM6.
Then back to the Arduino app and I can see it as COM6 in the Tools menu and having done the boards.txt change, I can select it as a Mega ADK.
On the Mac it shows in the dev/tty list and I can select it in the Tools menu.
Now I’m stuck at the timeout after verifying and trying to upload the ADK .PDE (or any built setup):
avrdude: stk500_2_ReceiveMessage(): timeout

Still trying to find out where to go next, but it’s certainly better than the default ship state :slight_smile:

Ok i'm there as well... managed to put the usb-serial firmware on the 8u2 and then put the atmega2560 [atleast a mega2560 is better than a dead board!] firmware on it and now the same error

avrdude: stk500_2_ReceiveMessage(): timeout

both on ubuntu 10.10 & Windows XP

just an observation... left alone the led on pin 13, tx come on every once in a while...looks like the board is resetting

I have a nasty feeling that the bootloader hasn't been installed, so you need access to an AVR ISP programmer to install it the first time :(

there was no bootloader on the atmega2560… avrdude wouldnt intially start without the -B 4800 option… meaning which the fuses were not set… now i’ve burnt the bootloader using another duemilanove… everything is successful but still the same error…perhaps someone else can throw some light

I just received a replacement board. It finally works :)

Glad it works :) I got an AVR programmer and it installed the bootloader from the Arduino but it still won't communicate... I can change preferences.txt to use the AVR programmer rather than bootloader and then I can install sketches like Blink. Interestingly I added some Serial traces to it and get nothing but corrupted characters in the serial monitor regardless of the baudrate I choose. My guess is that serial comms are broken and this is why the bootloader isn't working.

Guess I rejoiced too early....

I keep running into an OSCOKIRQ error:

Error: OSCOKIRQ failed to assert

This happens when I try to connect to the Android Accessory via acc.powerOn(); The Mega ADK board is connected to a Tinkerkit. Moreover, there is an external power supply and USB B to the pc. Any hints on this?

I managed to get my broken board working :)

I flashed the combined DFU and usbserial HEX file using the AVRISP on the other 6 pin header and it turns into a at90usb82. Then I set it to running in Flip (Start button with reset unchecked). At this point I installed the bootloader via the AVRISP and I can successfully install a Sketch via the bootloader. Turns out the test app I use was putting out too much over the serial port, so I went back to ISP installs rather than bootloader, but I am getting correct serial comms and I managed to install the devkit.pde :)

I had to edit out some of the devkit joystick inits and at this point I can see the error that the USB device doesn't support accessory mode. I am trying CyanogenMod7 on my GalaxyS and with the accessory JAR and permission added, but it still doesn't support accessory mode :( Roll on a 2.3.4 official build on the Galaxy S... as I'm stuck until either my Xoom (running 3.0.1) or S or even the S2 gets accessory mode support.

@ Shawnf… can you be a bit more clear… Some questions for you

Which Combined DFU and usbserial HEX did you burn the MEGA-dfu_and_usbserial_combined.hex?

So first you put the above using avrisp and then it shows as AT90usb82 and then you used flip to put the Arduino-usbserial-mega.hex?

after that it shows up as mega 2560? and the you were able to use the arduino ide to put up the sketch?

To answer your questions - yes, yes and yes ;)

I did the three things you said and it is working fine...

no no & no.... :0 none of it works for me... the board that was getting detected as 2560 is now back to usb device not recognised! i feel like yelling whisky, tango, foxtrot!

Computers are such fun ;)

I was doing this on a 32 bit Vista system which didn't have the ATMel studio installed as that install on Win7x64 messed with USB drivers... by installing something like Jungo USB (from memory).

The AT90usb82 showed up as a libwin32 device and then I could select it as a device and choose USB in Flip.

I have the AVRISP Mk II libwin32 installed and it might have got the drivers from that or the ATMel Flip folder. I guess you can try pointing it at the Flip folder and do a search for drivers in subfolders. Failing that give the Arduino 22 folder a search. All from Device Manager of course...

Have to say it just work smoothly for me, having given up on the Win7x64 which is suffering from Driver hell due to the AtMel Studio...

Ok... got it recognised as a usb serial port again... back to the upload error now! "avrdude: stk500_2_ReceiveMessage(): timeout"

I can make out that there is something wrong with the serial communication... can some throw more light on diagnostics?

I would try installing a sketch via the ISP mode (using the upload setting in preferences.txt and setting it to your ISP). If you get corrupted characters in Serial Monitor rather than tracing, then the upload via bootloader option is never going to work... I guess you can check you set the Serial port to 115200 as well. I'm still waiting for an Android release that has accessory mode support... hoping the European Xoom update to 3.1 might include it and this is due by the end of next week.