Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use Adafruit Charlieplex 9x16 Red: Examples, Pinouts, and Specs

Image of Adafruit Charlieplex 9x16 RedDesign with Adafruit Charlieplex 9x16 Red in Cirkit Designer

Introduction

The Adafruit Charlieplex 9x16 Red is a versatile and compact LED matrix display that leverages the charlieplexing technique to control 144 red LEDs using a minimal number of microcontroller pins. This matrix is ideal for creating eye-catching displays for alphanumeric characters, simple graphics, and animations. Its small form factor makes it perfect for wearable electronics, small handheld devices, and any project where space is at a premium.

Explore Projects Built with Adafruit Charlieplex 9x16 Red

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Arduino UNO Controlled Multi-Matrix LED Display: A project utilizing Adafruit Charlieplex 9x16 Red in a practical application
Arduino UNO Controlled Multi-Matrix LED Display

This circuit consists of an Arduino UNO microcontroller connected to multiple MAX7219 8x8 LED Matrix modules arranged in a daisy-chain configuration. The Arduino controls the LED matrices using a software-implemented SPI communication protocol, with the purpose of displaying complex patterns or animations across the combined matrix display. The provided code handles the initialization and updating of the LED matrices, creating visual effects by manipulating the framebuffer and sending the data to the LED matrices in the correct order.

Open Project in Cirkit Designer
Image of ESP32-Controlled Dual 8x8 LED Matrix Display with NTP Time Synchronization: A project utilizing Adafruit Charlieplex 9x16 Red in a practical application
ESP32-Controlled Dual 8x8 LED Matrix Display with NTP Time Synchronization

This circuit features an ESP32 microcontroller connected to two cascaded 8x8 LED matrix displays, powered by a 3.3V battery. The ESP32 drives the displays to show time and other information, with the code indicating functionality for connecting to WiFi, synchronizing time via NTP, and displaying data on the matrices using custom fonts. Additionally, there is a separate 3.3V battery powering a red LED, which appears to function as a simple indicator light.

Open Project in Cirkit Designer

Common Applications and Use Cases

Technical Specifications

Key Technical Details

Pin Configuration and Descriptions

Pin Number Name Description
1 GND Ground connection
2 VCC Power supply (3.3V - 5V)
3 SDA I2C Data line
4 SCL I2C Clock line
5 ADDR I2C Address selection (connect to GND or VCC)

Usage Instructions

How to Use the Component in a Circuit

  1. Power Connections: Connect the VCC pin to the power supply (3.3V or 5V) and the GND pin to the ground of your circuit.
  2. I2C Communication: Connect the SDA and SCL pins to the corresponding I2C data and clock lines on your microcontroller.
  3. Address Selection: The ADDR pin can be connected to GND or VCC to select between two I2C addresses. This allows for two matrices to be used on the same I2C bus.

Important Considerations and Best Practices

Example Code for Arduino UNO

#include <Wire.h>
#include <Adafruit_IS31FL3731.h>

// Create the LED driver object
Adafruit_IS31FL3731 matrix = Adafruit_IS31FL3731();

void setup() {
  Wire.begin(); // Start I2C
  matrix.begin(); // Initialize the LED matrix
}

void loop() {
  // Display a pattern on the matrix
  for (uint8_t i = 0; i < 9; i++) {
    for (uint8_t j = 0; j < 16; j++) {
      matrix.drawPixel(i, j, (i + j) % 2 ? 255 : 0); // Checkerboard pattern
    }
  }
  delay(500);
  matrix.clear(); // Clear the display
  delay(500);
}

Troubleshooting and FAQs

Common Issues

Solutions and Tips for Troubleshooting

FAQs

Q: Can I use more than one Charlieplex 9x16 Red matrix at a time? A: Yes, you can use two matrices on the same I2C bus by setting different addresses using the ADDR pin.

Q: How do I control individual LEDs? A: Individual LEDs can be controlled using the drawPixel function provided by the Adafruit IS31FL3731 library.

Q: What is the maximum brightness for the LEDs? A: The maximum brightness is achieved by setting the LED current to 20mA. However, for extended lifespan and reliability, it is recommended to operate at a lower current.

Q: Can I use this matrix with a 3.3V system? A: Yes, the matrix can operate at 3.3V, but ensure that the I2C logic levels are compatible with your microcontroller.