Adafruit CircuitPython Library Bundle¶
This repo bundles a bunch of useful CircuitPython libraries into an easy to download zip file. CircuitPython boards can ship with the contents of the zip to make it easy to provide a lot of libraries by default.
Use¶
To use the bundle download the zip (not source zip) from the
latest release,
unzip it and copy over the subfolders, such as lib
, into the root of your
CircuitPython device. Make sure to indicate that it should be merged with the
existing folder when it exists.
CPython¶
DO NOT use this to install libraries on a Linux computer, such as the Raspberry Pi,
with regular Python (aka CPython). Instead, use the python3 version of pip
to install
the libraries you want to use. It will automatically install dependencies for you. For example:
pip3 install adafruit-circuitpython-lis3dh
Development¶
After you clone this repository you must run git submodule init
and then git submodule update
.
Updating libraries¶
To update the libraries run update-submodules.sh
. The script will fetch the
latest code and update to the newest tag (not master).
To find libraries with commits that haven’t been included in a release do:
git submodule foreach "git log --oneline HEAD...origin/master"
Adding a library¶
Determine the best location within libraries
(libraries/drivers/
or
libraries/helpers/
)for the new library and then run:
git submodule add <git url> libraries/<target directory>
The target directory should omit any CircuitPython specific prefixes such as
adafruit-circuitpython
to simplify the listing.
Removing a library¶
Only do this if you are replacing the module with an equivalent:
git submodule deinit libraries/<target directory>
git rm libraries/<target directory>
Building the bundle¶
To build this bundle locally you’ll need to install the circuitpython-build-tools package.
python3 -m venv .env
source .env/bin/activate
pip install circuitpython-build-tools
Once installed, make sure you are in the virtual environment:
source .env/bin/activate
Then run the build:
circuitpython-build-bundles --filename_prefix adafruit-circuitpython-bundle --library_location libraries --library_depth 2
Table of Contents¶
- Adafruit Sponsored Libraries and Drivers on GitHub
- Foundational
- Board-specific Helpers
- Helper Libraries
- LED Helpers
- User Interface and GFX Helpers
- Cursor Control
- Bitmap Font
- Bitmap Saver
- Display Button
- Display Notification
- Display Shapes
- Display Text
- Framebuf Module
- GFX (framebuf)
- Image Load
- miniQR Non-hardware QR code generator
- Pixel Framebuf Module
- ProgressBar
- PYOA
- Slideshow
- Simple Text Display
- Turtle Graphics
- WSGI
- DisplayIO Layout
- Dash Display
- Motor Helpers
- Internet of Things Web Service Helpers
- Internet/Internet-of-Things Helpers
- Bluetooth Low Energy Helpers
- Bluefruit LE Connect App
- BLE Base Library
- BLE Adafruit Services
- BLE Apple Media Service
- BLE Apple Notification Center Service
- BLE BerryMed Pulse Oximeter Service
- BLE BroadcastNet
- BLE Cycling Speed and Cadence
- BLE Eddystone Beacon
- BLE Heart Rate
- BLE iBBQ
- BLE LYWSD03MMC (Xiaomi Mijia)
- BLE Magic Light
- BLE MIDI
- BLE Radio
- LoRa Wireless Helpers
- Cryptography Helpers
- CPython-module Helpers
- Audio Helpers
- Miscellaneous Helpers
- Blinky
- Displays
- Real-time clocks
- Motion Sensors
- ADXL34x 3 Axis Accelerometer
- BNO055 Accelerometer, Magnetometer, Gyroscope and Absolution Orientation
- BNO08X 9 Axis Sensor Fusion IMU
- BNO08X_RVC Simple UART Heading Library
- FXAS21002C Gyroscope
- FXOS8700 Accelerometer
- GPS Global Position
- ICM20X Wide-range 6-DoF Accelerometer and Gyro Family
- L3GD20 3-Axis Gyroscope
- LIS2MDL 3-Axis Magnetometer
- LIS331HH and H3LIS331 3-Axis Accelerometers
- LIS3DH Accelerometer
- LIS3MDL 3-Axis Magnetometer
- LSM303 Accelerometer Only
- LSM303 Accelerometer and Magnetometer
- LSM303DLH Magnetometer Only
- LSM6DSOX, LSM6DS33, and ISM330DHCT Accelerometer, Gyroscope and Temperature
- LSM9DS0 Accelerometer, Magnetometer, Gyroscope and Temperature
- LSM9DS1 Accelerometer, Magnetometer, Gyroscope and Temperature
- MLX90390 3 Axis Magnetometer
- MLX90395 3-Axis Magnetometer
- MMA8451 3 Axis Accelerometer
- MPU6050 Accelerometer, Gyroscope, and Temperature Sensor
- MSA301 3 Axis Accelerometer
- TLV493D 3 Axis Magnetometer
- Environmental Sensors
- ADT7410 High Accuracy Temperature Sensor
- AHTx0 Tempertaure and Humidity Sensor
- AM2320 Temperature and Humidity
- BME280 Temperature, Humidity and Pressure
- BME680 Temperature, Humidity, Pressure and Gas
- BMP280 Barometric Pressure and Altitude
- BMP3xx Barometric Pressure and Altimeter
- CCS811 Air Quality
- DHT Temperature and Humidity
- DPS310 Precision Barometric Pressure / Altitude Sensor
- DS18x20 Temperature
- HTS221 Temperature and Humidity Sensor
- HTU21D Temperature and Humidity
- HTU31D Temperature and Humidity
- LPS2X Family of Barometric Pressure, Temperature Sensors
- LPS35HW Water Resistant Barometric Pressure, Temperature
- SGP40 Air Quality Sensor
- MAX31855 Thermocouple Amplifier, Temperature
- MAX31856 Thermocouple Amplifier, Temperature
- MAX31865 Thermocouple Amplifier, Temperature
- MCP9600 Thermocouple Amplifier
- MCP9808 Temperature
- MLX90614 Contactless Temperature
- MP115A2 Barometric Pressure, Temperature
- MPL3115A2 Barometric Pressure, Altitude and Temperature Sensor
- MPRLS Ported Absolute Pressure
- MS8607 Pressure, Temperature, Humidity
- PCT2075 Temperature Sensor
- PM25 Air Quality Sensor
- SCD30 CO2, Temperature, and Humidity Sensor
- SGP30 Air Quality
- SHT31-D Temperature and Humidity
- SHT4x Temperature and Humidity
- SHTC3 Temperature and Humidity
- Si7021 Temperature and Humidity
- TC74 Digital Temperature Sensor
- TMP006 Contactless IR Thermopile Sensor
- TMP007 Contactless Temperature
- TMP117 High-Precision Temperature Sensor
- Thermistor Temperature
- Light Sensors
- APDS9960 Proximity, Light, RGB, and Gesture
- AS726x Color Spectrum Sensor
- AS7341 11-Channel Multi-Spectral Digital Sensor
- BH1750 Ambient Light
- LTR390 Ambient Light and UV Sensor
- TCS34725 Color Sensor
- TSL2561 Light Sensor
- TSL2591 High Dynamic Range Light Sensor
- VCNL4010 Proximity and Light
- VCNL4040 Proximity and Light
- VEML6070 UV Index
- VEML6075 UV Index
- VEML7700 High Accuracy Ambient Light Sensor
- Distance Sensors
- Radio
- IO Expansion
- ADS1x15 Analog-to-Digital Converter
- Adafruit SeeSaw
- AW9523 GPIO expander and LED driver
- Crickit Robotics Boards
- DS2413 OneWire GPIO Expander
- FocalTech Capacitive Touch
- MCP2515 CAN bus controller
- MCP230xx GPIO Expander
- MCP3xxx SPI ADC
- MCP4725 Digital-to-Analog Converter
- MCP4728 4-Channel, 12-bit Digital-to-Analog Converter
- MPR121 Capacitive Touch Sensor
- PCA9685 16 x 12-bit PWM Driver
- PCF8591 ADC + DAC Combo
- TCA9548 I2C Multiplexer
- TLA202X 12-bit I2C DAC
- TLC5947 24 x 12-bit PWM Driver
- TLC59711 12 x 16-bit PWM Driver
- Miscellaneous
- 74HC595 Shift Register
- ATECCx08 Cryptographic Co-Processor
- AMG88xx Grid-Eye IR Camera
- BD3491FS Audio Processor
- CAP1188 8-Key Capacitive Touch
- DRV2605 Haptic Motor Controller
- DS1841 I2C Logarithmic Potentiometer
- DS3502 I2C Potentiometer
- Dymo Scale
- Fingerprint Sensor
- FONA Cellular Module
- FRAM Non-Volatile Memory
- Gizmo
- INA219 High Side Current
- INA260 Current and Power Monitor
- LC709203F Fuel Gauge and Battery Monitor
- Matrix Keypad
- MAX9744 Audio Amplifier
- MLX90640 Thermal Camera
- NeoTrellis 4x4 Keypad
- NeoTrellis M4 4x8 Keypad
- Nunchuk
- OV7670 Camera
- PyPixelbuf
- RockBlock Iridium Satellite Modem
- Si4713 Stereo FM Transmitter
- Si5351 Clock Generator
- STMPE610 Resistive Touchscreen
- Thermal Printer
- Touchscreen 4-Wire Resistive
- TPA2016 Audio Amplifier with AGC
- Trellis 4x4 Keypad
- VC0706 TTL Camera
- VS1053 Audio Codec
- Wiznet5k Ethernet Module