Alexander Hiam edited this page Oct 16, 2015 · 40 revisions

PyBBIO is a Python library for hardware IO support on the TI Beaglebone.

It is modeled after the Arduino API so as to create a friendly and familiar development environment.

Need some help? Try asking in the new PyBBIO chat room - Join the chat at https://gitter.im/graycatlabs/PyBBIO


BeagleBone Pinout

BeagleBone pinout

This image shows all the pins currently supported by PyBBIO, color coded by type, and each with the same name as its pin constant.
The 5V Raw pins are connected directly to the DC barrel jack, so they can be used when driving higher current devices like motors or relays.

The VDD_ADC pin is connected directly to the AM3359's internal 1.8V ADC supply and reference multiplexer, and it is not an input. The GND_ADC pin is connected to the AM3359's ADC ground. VDD_ADC and GND_ADC are separated from the internal 1.8V supply and digital GND respectively by inductors, which isolate them from high frequency noise. By the revision 3A schematics, these inductors saturate (essentially become short circuits, and therefore no longer isolate the ADC) at 800mA, so if using them, to supply an external ADC for instance, ensure you are well below this level (the AM3359 ADC wil be drawing some current as well).

Some pins have more than one possible function. These pins can only be in one configuration at a time, so for instance calling pinMode() with GPIO1_18 would disable PWM1A, and calling analogWrite() with PWM1A would disable GPIO1_18.

Version numbering

PyBBIO version numbers are in the format x.y.z where:

  • x is the major release number - may include non-back-compatible API changes
  • y is the minor release number - new features with full back-compatibility
  • z is the patch number - bug fixes and other minor tweaks