neopixel — control of WS2812 / NeoPixel LEDs¶
This module provides a driver for WS2818 / NeoPixel LEDs.
This module is only included by default on the ESP8266 and ESP32 ports. On STM32 / Pyboard, you can download the module and copy it to the filesystem.
This class stores pixel data for a WS2812 LED strip connected to a pin. The
application should set pixel data and then call
when it is ready to update the strip.
import neopixel # 32 LED strip connected to X8. p = machine.Pin.board.X8 n = neopixel.NeoPixel(p, 32) # Draw a red gradient. for i in range(32): n[i] = (i * 8, 0, 0) # Update the strip. n.write()
- class neopixel.NeoPixel(pin, n, *, bpp=3, timing=1)¶
Construct an NeoPixel object. The parameters are:
pin is a machine.Pin instance.
n is the number of LEDs in the strip.
bpp is 3 for RGB LEDs, and 4 for RGBW LEDs.
timing is 0 for 400KHz, and 1 for 800kHz LEDs (most are 800kHz).
Pixel access methods¶
Sets the value of all pixels to the specified pixel value (i.e. an RGB/RGBW tuple).
Returns the number of LEDs in the strip.
- NeoPixel.__setitem__(index, val)¶
Set the pixel at index to the value, which is an RGB/RGBW tuple.
Returns the pixel at index as an RGB/RGBW tuple.
Writes the current pixel data to the strip.