One of the items needed for making the AVR-based atusb board is an in-circuit programmer to load the firmware (or at least a boot loader) into the microcontroller's flash.
Since we have the Ben as a common and DIY-friendly platform, my idea was to use it as the basis of the programmer circuit. I had used it in such a role already for the SiLabs C8051F326, with this cable: http://downloads.qi-hardware.com/people/werner/f32x/c2ben-run1.jpg http://downloads.qi-hardware.com/people/werner/tmp/c2-use.jpg http://downloads.qi-hardware.com/people/werner/tmp/c2-closer.jpg The F326 is easy to program and I have written my own programmer for it. The AVRs have a fairly byzantine memory structure and are not very forgiving when certain errors are made. Luckily, there are several Open Source programmers for them. One of them is avrdude, which I've used before. I didn't want a long chain of untested elements for adapting avrdude, so I decided not to try things directly with the new atusb design (which is relatively complex and needs an adapter to attach to the Ben), but to make a simpler board that would have a very straightforward path from Ben to AVR. This also gave me the opportunity to pick up an old idea David "Tuxbrain" Samblas brought up some months ago, namely to make an 8:10 card that implements a UART, e.g., to talk to an Arduino. The result is here: http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/uart and looks like this: http://downloads.qi-hardware.com/people/werner/uart/pix/uart-20110131.jpg http://downloads.qi-hardware.com/people/werner/uart/pix/uart-inserted.jpg With this board, I developed a bit-banging NanoNote driver for avrdude: http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/uart/avrdude Note that the UART function isn't implemented yet. All I did was make a LED blink, which tells me enough about the success of the programming operation. The rest (including picking a better name) can follow later. For programming atusb, I need an adapter cable similar to the one I made for the C8051F326. Instead of having application-specific boards at both ends, I decided this time to make a generic 8:10 board that plugs into the Ben and make only the board that attaches to atusb application-specific. Since the 8:10 card exports all the available signal and could be used for all sorts of projects, I called it the "Universal Breakout Board" (UBB). Here is where it lives: http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/ubb and this is what it looks like: http://downloads.qi-hardware.com/people/werner/ubb/ubb.jpg The programming adapter for atusb looked at one point in time like this: http://downloads.qi-hardware.com/people/werner/wpan/tmp/atusb-pgm-20110203.jpg But it has already changed and I'm still not yet done with tinkering with it. - Werner _______________________________________________ Qi Hardware Discussion List Mail to list (members only): [email protected] Subscribe or Unsubscribe: http://lists.en.qi-hardware.com/mailman/listinfo/discussion

