PyBBIO 0.9

Pulled this off of Alex’s blog at

With the help of Rekha Seethamraju, a GSoC 2014 student, PyBBIO has gained a bunch of cool new features.


PyBBIO finally has SPI support! It provides an Arduino-style API with some extra features, letting you use both the SPI0 and SPI1 modules. See the SPI documentationfor more info.


There is a new library for the ADT7310 SPI temperature sensor, including interrupt based support for its programmable over-/under-temperature thresholds. More info on the wiki page.

Rotary Encoder

A driver for the AM335x’s built-in eQEP modules was recently added to the official BeagleBone Debian images, and PyBBIO now has a library that uses it to get input from up to 3 rotary encoders. See theRotaryEncoder documentation.

Phant Support

Just recently, SparkFun announced their IoT data logging service phant PyBBIO now includes a PhantStream library, which is able to post data to and pull data from phant streams. Documentation here.


One of the first improvements Rekha made to PyBBIO was to move all file I/O based interfacing with kernel drivers to C extension. That means there is less latency when communicating with kernel drivers, which is a core part of all the IO functionality.

License Change

As of version 0.9, PyBBIO has dropped the Apache 2.0 license and is now released under the MIT license.

Bug fixes

Among a host of minor bugs getting squashed, we found and fixed an issue where attachInterupt() was always causing an immediate false interrupt the first time it was called in a program.


PyBBIO 0.9 is now officially released on the repository, meaning it can now be installed with pip! See the install instructions for more info.

Thanks Jason, and good idea, I’ll post future updates here as well.