Introduction¶
CircuitPython driver for the IS31FL3731 charlieplex IC.
This driver supports the following hardware:
Dependencies¶
This driver depends on:
Please ensure all dependencies are available on the CircuitPython filesystem. This is easily achieved by downloading the Adafruit library and driver bundle.
Usage Example¶
Matrix:
import adafruit_is31fl3731
import board
import busio
with busio.I2C(board.SCL, board.SDA) as i2c:
display = adafruit_is31fl3731.Matrix(i2c)
display.fill(127)
Charlie Wing:
import adafruit_is31fl3731
import board
import busio
with busio.I2C(board.SCL, board.SDA) as i2c:
display = adafruit_is31fl3731.CharlieWing(i2c)
display.fill(127)
# Turn off pixel 4,4, change its brightness and turn it back on
display.pixel(4, 4, 0) # Turn off.
display.pixel(4, 4, 50) # Low brightness (50)
display.pixel(4, 4, 192) # Higher brightness (192)
Contributing¶
Contributions are welcome! Please read our Code of Conduct before contributing to help this project stay welcoming.
Building locally¶
To build this library 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-is31fl3731 --library_location .
Sphinx documentation¶
Sphinx is used to build the documentation based on rST files and comments in the code. First, install dependencies (feel free to reuse the virtual environment from above):
python3 -m venv .env
source .env/bin/activate
pip install Sphinx sphinx-rtd-theme
Now, once you have the virtual environment activated:
cd docs
sphinx-build -E -W -b html . _build/html
This will output the documentation to docs/_build/html
. Open the index.html in your browser to
view them. It will also (due to -W) error out on any warning like Travis will. This is a good way to
locally verify it will pass.
Table of Contents¶
Simple test¶
Ensure your device works with this simple test.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import board
import busio
import adafruit_is31fl3731
with busio.I2C(board.SCL, board.SDA) as i2c:
# initialize display using Feather CharlieWing LED 15 x 7
display = adafruit_is31fl3731.CharlieWing(i2c)
# uncomment next line if you are using Adafruit 16x9 Charlieplexed PWM LED Matrix
#display = adafruit_is31fl3731.Matrix(i2c)
# draw a box on the display
# first draw the top and bottom edges
for x in range(display.width):
display.pixel(x, 0, 50)
display.pixel(x, display.height - 1, 50)
# now draw the left and right edges
for y in range(display.height):
display.pixel(0, y, 50)
display.pixel(display.width - 1, y, 50)
|
For other examples, see the GitHub examples folder.
adafruit_is31fl3731
¶
CircuitPython driver for the IS31FL3731 charlieplex IC.
- Author(s): Tony DiCola
Implementation Notes¶
Hardware:
- Adafruit 16x9 Charlieplexed PWM LED Matrix Driver - IS31FL3731
- Adafruit 15x7 CharliePlex LED Matrix Display FeatherWings
Software and Dependencies:
- Adafruit CircuitPython firmware (2.2.0+) for the ESP8622 and M0-based boards: https://github.com/adafruit/circuitpython/releases
-
class
adafruit_is31fl3731.
CharlieWing
(i2c, address=116)[source]¶ Supports the Charlieplexed feather wing
-
class
adafruit_is31fl3731.
Matrix
(i2c, address=116)[source]¶ The Matrix class support the main function for driving the 16x9 matrix Display
Parameters: - i2c_device (i2c_device) – the connected i2c bus i2c_device
- address – the device address; defaults to 0x74
-
audio_play
(sample_rate, audio_gain=0, agc_enable=False, agc_fast=False)[source]¶ Controls the audio play feature
-
autoplay
(delay=0, loops=0, frames=0)[source]¶ Start autoplay
Parameters: - delay – in ms
- loops – number of loops - 0->7
- frames – number of frames: 0->7
-
fade
(fade_in=None, fade_out=None, pause=0)[source]¶ Start and stop the fade feature. If both fade_in and fade_out are None (the default), the breath feature is used for fading. if fade_in is None, then fade_in = fade_out. If fade_out is None, then fade_out = fade_in
Parameters: - fade_in – positive number; 0->100
- fade-out – positive number; 0->100
- pause – breath register 2 pause value
-
fill
(color=None, blink=None, frame=None)[source]¶ Fill the display with a brightness level
Parameters: - color – brightness 0->255
- blink – True if blinking is required
- frame – which frame to fill 0->7
-
frame
(frame=None, show=True)[source]¶ Set the current frame
Parameters: - frame – frame number; 0-7 or None. If None function returns current frame
- show – True to show the frame; False to not show.
\ Sort by:\ best rated\ newest\ oldest\
\\
Add a comment\ (markup):
\``code``
, \ code blocks:::
and an indented block after blank line