Skip to main content

Python library for APA102 LEDs

Project description

APA102 Library

Build Status Coverage Status PyPi Package Python Versions

A simple library to drive APA102 pixels from the Raspberry Pi, or similar SBCs.

Uses either spidev or RPi.GPIO depending on the pins specified.

Pre-requisites

You must enable SPI:

  • spi: sudo raspi-config nonint do_spi 0

You can optionally run sudo raspi-config or the graphical Raspberry Pi Configuration UI to enable interfaces.

Installing

Stable library from PyPi:

  • Just run python3 -m pip install apa102

Latest/development library from GitHub:

  • git clone https://github.com/pimoroni/apa102-python
  • cd apa102-python
  • sudo ./install.sh

Usage

The APA102 class will attempt to use spidev or RPi.GPIO depending on which pins you specify.

For example; three RGB LEDs connected to SPI pins 10 and 11 with chip-select 8 (CE0):

from apa102 import APA102
lights = APA102(3, 10, 11, 8)

You can then set individual pixels with set_pixel:

lights.set_pixel(0, 255, 0, 0)  # Pixel 1 to Red
lights.set_pixel(1, 0, 255, 0)  # Pixel 2 to Green
lights.set_pixel(2, 0, 0, 255)  # Pixel 3 to Blue

Pixels are zero-indexed and accept Red, Green and Blue colour values from 0 to 255.

Changelog

0.0.3

  • Support SPI with cs None and no_cs
  • Add support for inverted output (GPIO ONLY)
  • Fix colour order to BGR
  • Fix SOF, EOF and data lengths
  • Drop noisy debug print from SPI mode
  • Fix set_brightness so it doesn't break pixel SOF
  • Add spi_max_speed_hz parameter

0.0.2

  • Bugfixes and improvements

0.0.1

  • Initial Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apa102-0.0.3.tar.gz (4.5 kB view hashes)

Uploaded Source

Built Distributions

apa102-0.0.3-py3-none-any.whl (4.3 kB view hashes)

Uploaded Python 3

apa102-0.0.3-py2-none-any.whl (4.3 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page