Go Down

Topic: Problems with 0021 on Ubuntu 10.04 Lucid Lynx (Read 56212 times) previous topic - next topic


w00t! Thank you stimmer!  ;D
I 'bricked' my Uno with one of those example sketches and, following your instructions, I managed to upload the new firmware! :D


The fixed firmwares are now in the latest release of the IDE. So anyone having trouble downloading them from the git repository website should download the 0022 IDE and look in the arduino-0022/hardware/arduino/firmwares/arduino-usbserial directory, the firmwares are in there.
Due VGA library - http://arduino.cc/forum/index.php/topic,150517.0.html


Updating the 8u2 firmware as per post #34 has fixed the problems I was having with the OneWire library not working on my Uno  :)


I have the same problems with serial.println in linux.
Can anybody translate post 34 for someone who has about 40 flight hours with Linux. It is not very clear what I need to do.



i tried flashing like in post #34

actualy twice but it still behaves like before, unable to upload anything to arduino uno.
checksum of Arduino-usbserial-uno.hex is 8e01ee236e70bbea43f7eb4e11c9688a

this is how i did it with messages from my system opensuse 11.3

sudo dfu-programmer at90usb82 erase

sudo dfu-programmer at90usb82 flash --debug 1 Arduino-usbserial-uno.hex
4058 bytes used (99.07%)

sudo dfu-programmer at90usb82 reset


Vega 77

One quick check - did you unplug the uno after you reflashed it? On my mega2560 it didn't go back to the normal USB ID until I did this

When you've replugged it, what does lsusb report?


yes i did unplugg it both times


Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0951:1606 Kingston Technology
Bus 001 Device 004: ID 05e3:0505 Genesys Logic, Inc.
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 2341:0001  
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub


OK, good news - 2341:0001 is an arduino uno or mega2560, so the flash has worked

Now the 8u2 based arduini use the USB modem driver, not the FTDI serial. Run dmesg just after you plug in the uno, and you should see something like

usb 3-1.2: new full speed USB device using uhci_hcd and address 18
cdc_acm 3-1.2:1.0: ttyACM0: USB ACM device

and /dev/ttyACM0 should now exist. If the acm line is missing, run lsmod and look for cdc_acm (the modem driver). If it's not present, you need to build the USB modem driver in your kernel. Try

modprobe -v cdc_acm

anyway, just to check if you have the modules.

One other possibility is the java serial library not looking for ttyACM devices. See reply #56 to make /dev/ttyS7 a symlink to /dev/ttyACM0
In the IDE, with the uno plugged in, what serial ports does it offer you?

I had failures due to a run-away avrdude. Shut down the IDE, and run

ps -ax | fgrep avrdude

Kill all the avrdudes you see, and restart the IDE. Now check the serial ports, and that you've set the board type to Uno. Upload might now work  :)

Good luck


Jan 04, 2011, 06:48 am Last Edit: Jan 04, 2011, 06:57 am by vega77 Reason: 1
i tried your tips on two diffrent pc's.
And i'm much closer now. Thx man !
one with opensuse 11.2 and one with opensuse 11.3

opensuse 11.3:
had to make a symlink to ttyS8 like this:
ln -s /dev/ttyACM0 /dev/ttyS8
was able tl select a com port then.
But i get this message:
Binary sketch size: 450 bytes (of a 32256 byte maximum)
avrdude: Yikes!  Invalid device signature.
        Double check connections and try again, or use -F to override
        this check.

opensuse 11.2:
no symlink needed, but i needed to rub arduino as root.
but i get this error:
avrdude: stk500_recv(): programmer is not responding


Reply #34 fixed this for me too. Uno board running 32bit Ubuntu 9.10 Karmic.

Sooo glad I found this thread as I realised that my serial output was blocking upload of new sketch. Had to register on the forum first to be able to access the explanation about grounding pins, but that's great as I wanted to join.

Have now completed my first robot, based on my kid's old "Wacky Wiggler" toy. One motor and one servo, two contact switches. Basic obstacle avoidance. Now working and uploaded sketch, thanks again!!!


fired up an old pc and installed winxp  today>:(
Worked fine to upload sketches then so my arudino uno is working fine.
probably try ubuntu again later on.
For now i will play with my arudino :)


In case it helps anyone: I just updated a few more mega2560, and I noted the USB IDs.

If you have succeeded in entering DFU mode, lsusb will report
03eb:2ff7 Atmel Corp

(Note you do not need to unplug and reconnect to enter DFU, indeed doing so will revert to normal IDs !)

Once flashed, unplugged and reconnected, the mega2560 is


Earlier messages suggest that the Uno is


HTH  8-)


Jan 13, 2011, 03:06 am Last Edit: Jan 13, 2011, 03:07 am by mazikowski Reason: 1
got it also working on my mega2560 after some trouble:
- on my debian in standard repository was only dfu-programmer Version 0.4.3. The at90usb82 device was not recognized (dfu-programmer: no device present) , although the device is listed when dfu-programmer is called with no options.
- upgraded to dfu-programmer 0.5.2 from source
reference: [removed - see original post]

svn co [removed - see original post]
/dfu-programmer dfu-programmer
cd dfu-programmer/trunk/dfu-programmer/
sudo make install

- dfu-programmer now recognizes the at90usb82
- erased with no error message
- when trying to flash got the message: Something went wrong with creating the memory image
- after some time of troubleshooting I found that the downloaded .hex file was wrong. I don't know why, but it was not possible to download the raw file with epiphany
- downloaded the .hex file with wget, flashed it and it works perfectly.
Smiley Reinhard

I'm using an Uno with Ubuntu 10.04. The USB IDs indicate normal and DFU modes.

I'm experiencing this same problem with dfu-programmer not recognizing the device. I tried downloading the SVN code for v0.5.2 but when I run make, it fails. From the best I can tell, it is not finding usb.h in the src/ directory.

Any ideas? The output of make is below:

Code: [Select]
jmazikowski@maz-notebook:~/dfu-programmer/trunk/dfu-programmer$ make
make  all-recursive
make[1]: Entering directory `/home/jmazikowski/dfu-programmer/trunk/dfu-programmer'
Making all in src
make[2]: Entering directory `/home/jmazikowski/dfu-programmer/trunk/dfu-programmer/src'
gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.c
main.c:29:17: error: usb.h: No such file or directory
main.c: In function 'main':
main.c:62: warning: implicit declaration of function 'usb_init'
main.c:81: warning: implicit declaration of function 'usb_set_debug'
main.c:110: warning: implicit declaration of function 'usb_release_interface'
main.c:123: warning: implicit declaration of function 'usb_close'
make[2]: *** [main.o] Error 1
make[2]: Leaving directory `/home/jmazikowski/dfu-programmer/trunk/dfu-programmer/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jmazikowski/dfu-programmer/trunk/dfu-programmer'
make: *** [all] Error 2


Problem solved. Installed libusb-dev (sudo apt-get install libusb-dev) and dfu-programmer v0.5.2 compiled just fine. Flashed the firmware and the serial monitor is working like a charm!


I was having the same issue. Post #34 worked like a charm on Ubuntu x64 10.10. Thanks!

Go Up