With wintertime (and remember, it is winter where I am) comes soldering – I can spend more than ten minutes in the garage without being drenched in sweat. I have a three week travel break before going on summer leave, so I’m trying to wrap up various projects. I have one project breadboarded and wired up to my arduino duemilanove, but I needed another arduino to work on another project in parallel, so I built one up on perf board: the Antananarivoduino.
The Antananrivoduino is about a simple as I could make it: an ATmega328, 16Mhz crystal oscillator, and 5V power. The one frill I added was a 28-pin ZIF socket that I’ve had kicking around for a couple years. The socket lets me seat a chip, program it, and eject it. It’s ideal for cranking out copies of a project or a burning a final chip that will go into an embedded project and won’t need any more programming.
The board programs through an ISP header rather than an FTDI serial interface. To program it, I hook up a usbTiny. The usbTiny is plugged into a computer usb port on one end, and terminates in the six-pin ISP header.
The ISP header is very simple and involves minimal hardware, but unlike a link via FTDI chip (or equivalent), it does not mediate hardware-based serial communications. On the other hand, it does allow direct writing to the chip regardless of whether the chip has a bootloader installed. In addition to meaning that one doesn’t need to buy chips with a bootloader installed, it also means that the extra memory that would have been occupied by the bootloader is now available to programs. The usbTiny can be used directly from the command line through avrdude, or through the arduino IDE.
Finally, here’s what the board itself looks like in a bit more detail plus a schematic. I used a technique that I call medieval orthodontic blacksmithing on the back of the board to layout the traces.