Skip to content

Driver for a Trellis in both single and matrix configurations

License

Notifications You must be signed in to change notification settings

adafruit/Adafruit_CircuitPython_Trellis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a91eed6 · Jan 16, 2025
Jan 20, 2023
Jan 13, 2021
Oct 7, 2024
Jan 13, 2021
Dec 1, 2022
May 10, 2023
May 24, 2023
Jan 16, 2025
Jan 13, 2021
Feb 3, 2018
Aug 2, 2022
Jan 13, 2021
May 11, 2023
Aug 9, 2022
Aug 16, 2022
Sep 7, 2022

Repository files navigation

Introduction

Documentation Status Discord Build Status Code Style: Black

This library will allow you to control the LEDs and read button presses on the Adafruit Trellis Board. It will work with a single Trellis board, or with a matrix of up to 8 Trellis boards.

For more details, see the Adafruit Trellis Learn Guide.

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.

Installing from PyPI

On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally from PyPI. To install for current user:

pip3 install adafruit-circuitpython-trellis

To install system-wide (this may be required in some cases):

sudo pip3 install adafruit-circuitpython-trellis

To install in a virtual environment in your current project:

mkdir project-name && cd project-name
python3 -m venv .venv
source .venv/bin/activate
pip3 install adafruit-circuitpython-trellis

Usage Example

See examples/trellis_simpletest.py for full usage example.

import time
import busio
from board import SCL, SDA
from adafruit_trellis import Trellis

# Create the I2C interface
i2c = busio.I2C(SCL, SDA)

# Create a Trellis object for each board
trellis = Trellis(i2c) # 0x70 when no I2C address is supplied

# Turn on every LED
print('Turning all LEDs on...')
trellis.led.fill(True)
time.sleep(2)

# Turn off every LED
print('Turning all LEDs off...')
trellis.led.fill(False)
time.sleep(2)

Documentation

API documentation for this library can be found on Read the Docs.

For information on building library documentation, please check out this guide.

Contributing

Contributions are welcome! Please read our Code of Conduct before contributing to help this project stay welcoming.