I have a brand new UNO; upload a few sketches and all works fine.
Then I uploaded the DataLogger example from the Arduino0022 collection without editing. This was a big mistake. This example keeps the serial port so busy on my system that it prevents the uploader from working. I had run into this sort of thing before, and at that time following the advice to press the reset button during the upload resolved the issue.
However this time I tried many times (~50) to upload using this technique and it failed. My ttyACM0 (specified in arduino defaults file) would often disappear and not reappear on reset. Arduino software was sluggish and would not respond until after an unusual delay.
The procedure I followed this time was:
unplug UNO from USB
shut down all instances of Arduino GUI
start arduino GUI
load intended sketch
verify sketch compiles
press upload
wait 5 seconds
plug in Arduino USB
upload succeeded.
This may be of interest to others, including me when I fall into the same trap again.
Any point in changing the otherwise excellent example to be more upload friendly, or is this problem unique to my situation?
No it is not unique, I'd say it's common on linux.
I've been experience the same situation twice,
os : ubuntu 10.10
ide: 22
I just restart computer,(don't know why it remember the status of ports , if you plug/unplug
usb , computer still remember the status, probably some variables keep info till system is running).
Than start IDE, after restart of machine.
Open simple sketch, like " blink" from examples.
4 Connect usb plug in from the board (should be disconnected during restarting).
Press upload a sketch when it negogiates usb settings, tx and rx leds blinking at that time.
As they say there is a solution to refill 8u2,
for me? I will stay with a bugs, at least I know them,
instead to encounter some new bugs that I was not aware off.
Not linux or any operating system. It is a bug in the firmware for the atmega8u2 chip
But is it the last remaining bug? The Uno has had a somewhat bumpy launching. However it seems to be selling well, so all is still good in Arduinoville.
Another workaround without shutting down the Arduino IDE:
1.: Unplug USB cable.
2.: Hold reset button pushed while replugging USB cable
3.: Release reset button (LED should blink now)
4.: Upload sketch to your Arduino.
IDE sometimes asks you which port to select. /dev/ttyACM0 now may have changed to /dev/ttyACM1. Then choose this one and youre done
I know we've had some problems with the firmwares to iron out, but the Uno's are made in the same place by the same people as the Duemilanove, so there shouldn't be any real differences in the construction and assembly. I think we just had a few people who complained loudly when the Uno came out and gave a bad impression.
My real Duemilanove has silky smooth edges, the edges on my real Uno are decidedly rough. I didn't formulate an opinion until I had one in my hand, and the early complainers had it about right. It smacks of cost cutting, admittedly the Uno was a little cheaper to buy than the Duemilanove.
The firmware should have been a bit (a lot) nearer the mark before release in my opinion.An oscillator instead of a crystal is unforgivable.......
I believe the oscillator instead of the crystal was because of problems with emission when having two clocks with the same frequency on the board. The change was apparently useful in meeting FCC / CE guidelines. It wasn't done as a cost-cutting measure.