Lilypad bootstrap issues solved

If anyone's interested - I think there's a problem with the Lilypad bootloader. It reports a 00 00 00 signature whereas the ATmega168 is expected to report 1E 94 06.

What I was trying to do is run a lone ATmega168 chip with the absolute minimum number of components required with FTDI, i.e. the reset pull-up and DTR capacitor. No resonator or crystal, which is why I selected the Lilypad as board before burning a bootloader into the chip via ISP.

On Mac, here's what I did to test this: - cd /Applications/arduino/examples/Communication/ASCIITable/applet - /Applications/arduino/hardware/tools/avr/bin/avrdude -F -p m168 -P /dev/tty.usbserial-A900a4Pz -c avrisp -b 19200 -U flash:w:ASCIITable.hex

So it works, i.e. you can run a bare ATmega chip with just one resistor and one capacitor plus an FTDI cable or breakout board - IF you disable the signature check in avrdude with -F, that is.

FWIW, the error from the Arduino-0013 upload was: "avrdude: Yikes! Invalid device signature."

Suggestion for the next Arduino IDE release: a slightly adjusted Lilypad bootloader?


Which version of avrdude were you using? There are two methods for checking the signature of a device, and the Arduino bootloader only supports one of the two. Unfortunately, the standard avrdude uses the other. So we include with the Arduino software a patched version of avrdude that uses the other method. What if you change avrisp to stk500?

Aha! Good question, I think I figured it out.

I'm not using an unmodified Arduino-0013, I replaced tools/avr with a symlink to /usr/local/AVRMacPack (because gcc 4.3.0 is buggy for interrupt code and 4.3.2 works).

So I was using this version, which fails: avrdude: Version 5.5, compiled on Dec 13 2008 at 13:58:50 Whereas the original in 0013 is this one: avrdude: Version 5.4-arduino, compiled on Oct 9 2007 at 11:20:31

Unfortunately, I really need gcc 4.3.2, so I can't go back. I've moved 5.5 out of the way and copied over the 5.4-arduino one. All is well now - thank you.

(I didn't try changing avrisp to stk500)