This is a successful attempt to fit a software USB implementation and a bitbanged WS2812 controller into an ATtiny10.

The firmware started life as VUSB and the little wire firmware, but was heavily modified and butchered as part of the process to shrink both code size and sram footprint down by at least a factor of three.

This is an old project that I am adding here for the hackaday 1kb compo - just because I am not even sure I can beat my own, past project. I believe this is still one of the most complex firmwares ever developed for an ATtiny10.

Final statistics:

  • Flash: 988 of 1024 bytes used (96.4%)
  • SRAM: 28 (variables)+2 (stack) of 32 bytes used (93.8%)

Please find my original writeup here: https://cpldcpu.wordpress.com/2014/03/19/µ-wire-usb-on-an-attiny-10/

The code is here: https://github.com/cpldcpu/u-wire