I have already tried that, but there is not an "arduino" programmer entry in avrdude.conf although I did add the settings for the ATmega328P chip.
Does anyone have an edited avrdude.conf that I could use for the Uno?
Try the following:
Navigate to the arduino-0022/hardware/tools/arduino directory.
Enter the following on the command line:./avrdude -P/dev/ttyACM0 -C ./avrdude.conf -p atmega328p -c stk500v1 -v
This works for me on my Centos 5.5 Linux system.
Depending on your operating system, you may have to do something like the following: (See Footnote.)stty -F /dev/ttyACM0 -hupcl && ./avrdude -P/dev/ttyACM0 -C ./avrdude.conf -p atmega328p -c stk500v1 -v
If it doesn't work without stty, find a single stty command that makes the LED blink (four rapid flashes) on the Uno so that you know it "takes." Then that in your script, followed by the avrdude command.
Anyhow, if you can get these to give you something meaningful you can change your script accordingly.
Sometimes people have older versions of avrdude installed on their systems and they don't quite cut the mustard with more recent Arduino boards and bootloaders. The second step is to make sure you are invoking the latest version. (The first step when asking for help is to tell us what operating system you are using and where you got your version of avrdude.)
In my opinion (based on personal experience), mixing versions of avrdude and avrdude.conf doesn't work very well, and trying to get a version of avrdude.conf from someone else is an exercise in futility.
Here's my story with Centos 5.5 Linux:
I had previously built avrdude version 5.10 from source and installed it as /usr/local/bin/avrdude
. The configuration file for this ended up at /usr/local/etc/avrdude.conf
and it had the "arduino" programmer in it. When I invoked that version of avrdude with the stk500v1
programmer I got the signature error that you reported. When I invoked it with the "arduino" programmer, the operation was flawless.
If you just invoke avrdude (without the -C stuff, but with everything else), the -v flag will let it tell you where it is looking for the configuration file. (Don't try to help it unless you really know how to change it (and why).