10/30/2016 at 20:47 •
A couple of years ago, I compiled the vUSB USBaspLoader for the USBasp. The USBasp is a quite nice development target for vUSB: it's cheap (from $1.10), has SSI (and somtimes also UART) pins on a 10 pin header, comes with a ribbon cable.
The USBaspLoader replaces the USBasp firmware, but you still can program other AVR µCs with it if you flash USBasp through the USBaspLoader onto itself.
The hardest part was that compiling the USBaspLoader required AVR-GCC 3.4.6 to make the code fit into the 2K boot sector. It turned out that for building an old GCC an even older version of GCC is required. To get that I needed to bootstrap a historic Linux version, fix a BISON related bug, merge startup code for relatively recent AVR µCs, etc. All in all, it was a really steep learning curve.
Drop me a note if you're interested in the code, or if you need a patched AVR-GCC 3.4.6 for Linux.