Uploading to UNO on Linux - Resolved

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:

  1. unplug UNO from USB
  2. shut down all instances of Arduino GUI
  3. start arduino GUI
  4. load intended sketch
  5. verify sketch compiles
  6. press upload
  7. wait 5 seconds
  8. plug in Arduino USB
  9. 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?

You can be rid of the problem altogether by updating the 8u2 firmware.

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

  1. 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).
  2. Than start IDE, after restart of machine.
  3. Open simple sketch, like " blink" from examples.
    4 Connect usb plug in from the board (should be disconnected during restarting).
  4. 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.

Kind of like limping all the the time because you're afraid of removing the stone from your shoe. :wink:

I'd say it's common on linux

Not linux or any operating system. It is a bug in the firmware for the atmega8u2 chip

mrtaylor:

I'd say it's common on linux

Not linux or any operating system. It is a bug in the firmware for the atmega8u2 chip

But is it the last remaining bug? :smiley: The Uno has had a somewhat bumpy launching. However it seems to be selling well, so all is still good in Arduinoville.

Lefty

Once you've reflashed the crappy bootloader, and the dodgy 8U2 firmware, the Uno works as well as a Duemilanove....... :wink:

Notwithstanding the oscillator instead of crystal, and the general lack of quality in the Uno of course. :stuck_out_tongue:

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 :slight_smile:

Have fun.

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.

mellis:
board. The change was apparently useful in meeting FCC / CE guidelines.

Hello,
Can anybody say if Arduino UNO has CE mark?

CE mark

Mine has CE on the back/left side of the board.