Adafruit library code for Raspberry Pi
Latest commit eecd6e6 Apr 22, 2016 @tdicola tdicola Update
Failed to load latest commit information.
.gitignore added file .gitignore Apr 20, 2014 Update Apr 22, 2016

Adafruit's Legacy Raspberry Pi Python Code Library

What happened to all the Raspberry Pi Python code!?

In the past this repository held all of the Raspberry Pi related Python code that Adafruit published. For example code to talk to sensors like the BMP085, TCS34725, and other hardware like character LCD plates. Over time we found it difficult to manage so much code in a single repository, and couldn't easily put the code on Python's package index for simple installation. Now we've broken out all of the previous Python code into individual GitHub repositories, and we've loaded all of these repositories on the Python package index so they can be installed with pip (note that pip won't install example code so for most users it's recommended to install from source).

In addition all of the Python libraries below support both Python 2.7 and Python 3.x! Note if you do plan to use Python 3 it has totally separate libraries from Python 2 so you might need to install all the libraries you use in both Python 2 and 3. See this video stream for more details: In particular on a Raspberry Pi you probably want to install Python 3, PIP for Python 3, and the RPi.GPIO library (used to talk to GPIO pins on the Pi) with these commands:

sudo apt-get update
sudo apt-get install -y python3 python3-pip python-dev
sudo pip3 install rpi.gpio

Where do I find the new Raspberry Pi Python code?

Here is a table with each of the old libraries and a link to their new unique GitHub repositories and easy pip install names:

Old Library Name New Library Location New pip install Package Name Notes
Adafruit_ADS1x15 adafruit-ads1x15 See guide.
Adafruit_ADXL345 adafriut-adxl345 -
Adafruit_BMP085 adafruit-bmp See guide.
Adafruit_CharLCD adafruit-charlcd See new character LCD guide.
Adafruit_CharLCDPlate adafruit-charlcd See new character LCD guide.
Adafruit_DHT_Driver None, must be manually installed to properly compile C extension. See the C code for reading the DHT sensor in the updated Python driver.
Adafruit_DHT_Driver_Python None, must be manually installed to properly compile C extension. See updated DHT sensor guide
Adafruit_I2C adafruit-gpio See updated I2C code in the Python GPIO library. Import with import Adafruit_GPIO.I2C as I2C and create an instance of I2C.Device instead of the old Adafruit_I2C class.
Adafruit_LEDBackpack adafruit-led-backpack See new LED backpacks guide.
Adafruit_LEDpixels adafruit-ws2801 -
Adafruit_LSM303 adafruit-lsm303 -
Adafruit_MCP230xx adafruit-gpio See updated MCP230xx code.
Adafruit_MCP3002 Deprecated, see MCP3008 chip. - -
Adafruit_MCP3008 adafruit-mcp3008 See guide.
Adafruit_MCP4725 adafruit-mcp4725 See guide
Adafruit_PWM_Servo_Driver adafruit-pca9685 See guide
Adafruit_TCS34725 adafruit-tcs34725 -
Adafruit_VCNL4000 adafruit-vcnl40xx -

You might also be interested in other Python libraries which were never in this repository but are handy for talking to other hardware:

Device / Guide Library Location pip install Package Name
BME280 Humidity & Pressure Sensor TBD
BNO055 Absolute Orientation Sensor adafruit-bno055
ILI9341 LCD Displays adafruit-ili9341
MAX31855 Thermocouple Sensor adafruit-max31855
MAX9744 Class D Amplifier adafruit-max9744
MCP9808 Temperature Sensor adafruit-mcp9808
PN532 NFC Interface adafruit-pn532
SSD1306 OLED Displays adafruit-ssd1306
TMP006 & TMP007 Temperature Sensors adafruit-tmp

But I need the old code! What can I do?

Don't worry the old Adafruit Raspberry-Pi Python code can be found in the legacy branch of this repository. This is a snapshot of the old code before it was refactored into individual libraries. Note this legacy code will not be maintained!