Firmware for the recommended USB-I2C bridge for the TakkTile project
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 200 commits ahead, 39 commits behind nonolith:master.
Latest commit 7439576 Jan 11, 2015
Failed to load latest commit information.
PyUSB @ 408e5a9



This "HowTo" assumes you're running a modern version of the Ubuntu Linux distribution. Ubuntu has a low barrier to entry and provides a rock-solid development environment.

  • Get the AVR compiler toolchain. Note that the version included in most distributions' repositories is out of date and does not support Atmel's latest XMEGA parts.

sudo apt-get remove binutils-avr gcc-avr avr-libc

sudo add-apt-repository ppa:nonolith/avr-toolchain

sudo apt-get update

sudo apt-get install atmel-toolchain-binutils-avr atmel-toolchain-gcc-avr atmel-toolchain-avr-libc

The PPA through which these tools are available is maintained by Nonolith Labs:

  • Get the code.

git clone --recursive git://

  • Install the PyUSB-1.0 Python module.

cd TakkTile-usb/PyUSB; sudo python install

  • With an AVRISP-mkII programmer attached to the XMEGA on the board, install the bootloader and upload the firmware.

cd usb

git checkout master

cd bootloader

sudo make program

cd ../

git checkout pipe_refactor

cd ../

make update


To get a single set of calibrated, compensated samples from the first row of the board, simply run

sudo python