BuildingOnLinux - nopdotcom/i2c_tiny_usb-on-Little-Wire GitHub Wiki

This is copied from jabss at and is aimed at the Digispark.

First, I cloned your git repository.

mkdir digispark
cd digispark/
git clone
cd i2c_tiny_usb-on-Little-Wire/

(I also uncommented the USB ID as per your help) (see

Then, installed "gcc-avr" and "avr-libc":

sudo apt-get install gcc-avr avr-libc

Then, compiled. It worked at first time!

[email protected]$ make hex
avr-objcopy -j .text -j .data -O ihex main.elf main.hex
avr-size -C --mcu=attiny85 main.elf
AVR Memory Usage
Device: attiny85

Program:    3126 bytes (38.2% Full)
(.text + .data + .bootloader)

Data:         66 bytes (12.9% Full)
(.data + .bss + .noinit)

The result is the "main.hex" file.

Then, I followed this digispark tutorial that teaches how to add digispark support t Arduino IDE. This installs micronucleus in so it can be used to upload to Digispark. I had to search for it, in my case it was in /home/user/.arduino15/packages/digistump/tools/micronucleus/2.0a4.

After finding it, it was just a matter of copping all the files to the same directory and run:

sudo ./micronucleus --run --dump-progress --type intel-hex main.hex
> Please plug in the device ... 
> Press CTRL+C to terminate the program.
> Device is found!
> Device has firmware version 1.6
> Available space for user applications: 6012 bytes
> Suggested sleep time between sending pages: 8ms
> Whole page count: 94  page size: 64
> Erase function sleep duration: 752ms
> Erasing the memory ...
[. . .]
> Starting to upload ...
[. . .]
> Starting the user app ...
>> Micronucleus done. Thank you!

dmesg shows some good news:

[ 2773.526627] usb 8-1.2: new low-speed USB device number 74 using xhci_hcd
[ 2773.551509] usb 8-1.2: New USB device found, idVendor=0403, idProduct=c631
[ 2773.551522] usb 8-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2773.551528] usb 8-1.2: Product: i2c-tiny-usb on littleWire
[ 2773.551534] usb 8-1.2: Manufacturer:
[ 2773.551538] usb 8-1.2: SerialNumber: 113
[ 2773.552738] i2c-tiny-usb 8-1.2:1.0: version 2.01 found at bus 008 address 074
[ 2773.553333] i2c i2c-11: connected i2c-tiny-usb device