# MatrixPortal CircuitPython Animated Message Board

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/124/115/medium800thumb/led_matrices_main.jpg?1693260698)

Perhaps you've seen those animated message board signs and perhaps you even wanted one. However, you may have noticed they tend to be fairly pricey and programming them can be complicated.

This project makes use of the powerful [Adafruit MatrixPortal S3](https://www.adafruit.com/product/5778) and its large memory capacity to be able to pump out and blend graphics in real time using CircuitPython. It works by using CircuitPython's `bitmaptools` module along with `displayio` to blend, blit and buffer swap images and text together to produce smooth animations.

The code for this project is based on the [OpenSign project](https://github.com/Maker-Melissa/OpenSign), which was written for the Raspberry Pi, but the code was completely rewritten from scratch for this project to make use of strengths of CircuitPython. Certain features such as shadow and text stroke were omitted because of the lack of support at this time. Some library restructuring was also done to make it more expandable and avoid OpenSign's large library files for memory efficiency.

This project was featured on one of the livestreams for CircuitPython Day, which you can watch below.

https://www.youtube.com/watch?v=pjakZUksU34

## Parts

This project requires the new MatrixPortal S3 for its speed and memory using four 16x32 RGB LED matrices.

### Adafruit Matrix Portal S3 CircuitPython Powered Internet Display

[Adafruit Matrix Portal S3 CircuitPython Powered Internet Display](https://www.adafruit.com/product/5778)
Folks love our [wide selection of RGB matrices](https://www.adafruit.com/category/327) and accessories&nbsp;for making custom colorful LED displays... and our RGB Matrix Shields and FeatherWings can be quickly soldered together to make the wiring much easier. But what if we made it...

Out of Stock
[Buy Now](https://www.adafruit.com/product/5778)
[Related Guides to the Product](https://learn.adafruit.com/products/5778/guides)
![Video of Adafruit Matrix Portal S3 linked up to a matrix displaying the "Adafruit Matrix Portal" in white letters and red, green and blue circles jumping around. ](https://cdn-shop.adafruit.com/product-videos/640x480/5778-06.jpg)

### Medium 16x32 RGB LED matrix panel - 6mm Pitch

[Medium 16x32 RGB LED matrix panel - 6mm Pitch](https://www.adafruit.com/product/420)
Bring a little bit of Times Square into your home with this 16 x 32 RGB LED matrix panel. These panels are normally used to make video walls, here in New York we see them on the sides of busses and bus stops, to display animations or short video clips. We thought they looked really cool so we...

In Stock
[Buy Now](https://www.adafruit.com/product/420)
[Related Guides to the Product](https://learn.adafruit.com/products/420/guides)
![16x32 RGB LED matrix panel with colorful text lit up](https://cdn-shop.adafruit.com/640x480/420-08.jpg)

### Part: GPIO Ribbon Cable 2x8 IDC Cable - 16 pins 12" long
quantity: 1
Needed for reaching the first panel
[GPIO Ribbon Cable 2x8 IDC Cable - 16 pins 12" long](https://www.adafruit.com/product/4170)

For the LED acrylic, you can either purchase a 12"x12" sheet and cut it down to a size yourself. It will need to be cut to 3 equal width pieces approximately 101.6mm (4 inches) wide and the lengths of the pieces should add up to 776mm (30.55 inches).

### Black LED Diffusion Acrylic Panel 12" x 12" - 0.1" / 2.6mm thick

[Black LED Diffusion Acrylic Panel 12" x 12" - 0.1" / 2.6mm thick](https://www.adafruit.com/product/4594)
A nice whoppin' slab of some lovely black acrylic to add some extra diffusion to your LED Matrix project. This material is 2.6mm (0.1") thick and is made of special cast acrylic that makes it perfect for glowy projects, especially matricies or NeoPixels.

Unlike smoke or...

In Stock
[Buy Now](https://www.adafruit.com/product/4594)
[Related Guides to the Product](https://learn.adafruit.com/products/4594/guides)
![LED RGB matrix 12" x 12" with "Adafruit Industries LED Matrix" text showing, and LED acrylic slowly covering to make it nicely diffused](https://cdn-shop.adafruit.com/product-videos/640x480/4594-04.jpg)

Or you can get 1 large piece from TAP Plastics custom cut to size.

### Part: Black LED Acrylic
quantity: 1
3mm thickness cut to 102mm x 776mm
[Black LED Acrylic](https://www.tapplastics.com/product/plastics/cut_to_size_plastic/black_led_sheet/668)

### Optional Parts

To assemble, you will need some metal or nylon 10mm M2.5 screws and washers, M3 screws, and zip ties for wire management.

### Part: M2.5 Nylon Screws
quantity: 1
Black Nylon Machine Screw and Stand-off Set – M2.5 Thread
[M2.5 Nylon Screws](https://www.adafruit.com/product/3299)

### Part: M3 Nylon Screws
quantity: 1
Black Nylon Machine Screw and Stand-off Set - M3 Thread
[M3 Nylon Screws](https://www.adafruit.com/product/4685)

### Part: Assorted Zip Ties
quantity: 1
1000 Pcs Black Cable Zip Ties Assorted Sizes
[Assorted Zip Ties](https://amzn.to/3OOQmif)

### Part: USB A to USB C Adapter
quantity: 1
Optional if you don't have a USB-C Port on your computer.
[USB A to USB C Adapter](https://www.adafruit.com/product/4175)

### Extra Power Parts

If you need more power than the USB port can provide, you will want these parts.

### Part: 2 in 1 USB-C OTG Splitter
quantity: 1
Useful for providing more power than the USB port can supply
[2 in 1 USB-C OTG Splitter](https://amzn.to/3P59nhK)

### Part: 5V 4 Amp Power Supply
quantity: 1
5V 4A (4000mA) switching power supply
[5V 4 Amp Power Supply](https://www.adafruit.com/product/1466)

### Part: 2.1mm 5VDC Barrel Jack to USB-C Adapter
quantity: 1
For connecting the Power Supply to USB-C
[2.1mm 5VDC Barrel Jack to USB-C Adapter](https://www.adafruit.com/product/4536)

### Part: USB Type A to Type C Cable
quantity: 1
USB Type A to Type C Cable - approx 1 meter / 3 ft long
[USB Type A to Type C Cable](https://www.adafruit.com/product/4474)

- [Next Page](https://learn.adafruit.com/matrixportal-circuitpython-animated-message-board/3d-printing.md)

## Featured Products

### Adafruit Matrix Portal S3 CircuitPython Powered Internet Display

[Adafruit Matrix Portal S3 CircuitPython Powered Internet Display](https://www.adafruit.com/product/5778)
Folks love our [wide selection of RGB matrices](https://www.adafruit.com/category/327) and accessories&nbsp;for making custom colorful LED displays... and our RGB Matrix Shields and FeatherWings can be quickly soldered together to make the wiring much easier. But what if we made it...

Out of Stock
[Buy Now](https://www.adafruit.com/product/5778)
[Related Guides to the Product](https://learn.adafruit.com/products/5778/guides)
### Medium 16x32 RGB LED matrix panel - 6mm Pitch

[Medium 16x32 RGB LED matrix panel - 6mm Pitch](https://www.adafruit.com/product/420)
Bring a little bit of Times Square into your home with this 16 x 32 RGB LED matrix panel. These panels are normally used to make video walls, here in New York we see them on the sides of busses and bus stops, to display animations or short video clips. We thought they looked really cool so we...

In Stock
[Buy Now](https://www.adafruit.com/product/420)
[Related Guides to the Product](https://learn.adafruit.com/products/420/guides)
### Black Nylon Machine Screw and Stand-off Set – M3 Thread

[Black Nylon Machine Screw and Stand-off Set – M3 Thread](https://www.adafruit.com/product/4685)
Totaling **420 pieces** , this **M3 Screw Set** &nbsp;is a must-have for your workstation.&nbsp;You'll have enough screws, nuts, and hex standoffs to fuel your maker tendencies&nbsp;for days on end! M3 size screws fit a number of&nbsp;Adafruit breakout/dev board...

In Stock
[Buy Now](https://www.adafruit.com/product/4685)
[Related Guides to the Product](https://learn.adafruit.com/products/4685/guides)
### Black Nylon Machine Screw and Stand-off Set – M2.5 Thread

[Black Nylon Machine Screw and Stand-off Set – M2.5 Thread](https://www.adafruit.com/product/3299)
Totaling 380 pieces, this **M2.5 Screw Set** &nbsp;is a must-have for your workstation.&nbsp;You'll have enough screws, nuts, and hex standoffs to fuel your maker tendencies&nbsp;for days on end! M2.5 size screws fit almost all of the Adafruit breakout/dev board mounting holes...

In Stock
[Buy Now](https://www.adafruit.com/product/3299)
[Related Guides to the Product](https://learn.adafruit.com/products/3299/guides)
### 5V 4A (4000mA) switching power supply - UL Listed

[5V 4A (4000mA) switching power supply - UL Listed](https://www.adafruit.com/product/1466)
Need a lot of 5V power? This switching supply gives a clean regulated 5V output at up to **4 Amps** (4000mA). 110 or 240 input, so it works in any country. The plugs are "US 2-prong" style so you may need a plug adapter, but you can pick one up at any hardware store for $1 or so,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/1466)
[Related Guides to the Product](https://learn.adafruit.com/products/1466/guides)
### 2.1mm 5VDC Barrel Jack to USB C Adapter

[2.1mm 5VDC Barrel Jack to USB C Adapter](https://www.adafruit.com/product/4536)
As technology changes and adapts, so does Adafruit, and speaking of&nbsp;_adapting_, this&nbsp;_ **adapter** _&nbsp;has a 2.1mm barrel jack socket and a USB C plug - you could use this to power a USB C device from a common wall adapter.

USB C is the latest...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4536)
[Related Guides to the Product](https://learn.adafruit.com/products/4536/guides)
### USB C to USB C Cable - USB 3.1 Gen 4 with E-Mark - 1 meter long

[USB C to USB C Cable - USB 3.1 Gen 4 with E-Mark - 1 meter long](https://www.adafruit.com/product/4199)
As technology changes and adapts, so does Adafruit! Rather than the regular USB A, this cable has&nbsp; **USB C to USB C** &nbsp;plugs!

USB C is the latest industry-standard connector for transmitting data&nbsp;_and_&nbsp;power. Like Lightning and MagSafe cables, USB C...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4199)
[Related Guides to the Product](https://learn.adafruit.com/products/4199/guides)
### GPIO Ribbon Cable 2x8 IDC Cable - 16 pins 12" long

[GPIO Ribbon Cable 2x8 IDC Cable - 16 pins 12" long](https://www.adafruit.com/product/4170)
Connect this to that! If you want to bridge those contacts out onto another PCB, you'll want this **GPIO Ribbon Cable**! Comes in a classic Adafruit Black, has a nice soft flexible 16-line 0.05" ribbon cable and keyed IDC connectors on both ends. <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/4170)
[Related Guides to the Product](https://learn.adafruit.com/products/4170/guides)

## Related Guides

- [Adafruit MatrixPortal S3](https://learn.adafruit.com/adafruit-matrixportal-s3.md)
- [Fruit Jam Video Music](https://learn.adafruit.com/fruit-jam-video-music.md)
- [BrainCraft Camera Case](https://learn.adafruit.com/braincraft-camera-case.md)
- [Knobby Sequencer](https://learn.adafruit.com/knobby-sequencer.md)
- [PyPortal Wall Mount](https://learn.adafruit.com/pyportal-wall-mount.md)
- [Bricktunes: LEGO Synthesizer Glove](https://learn.adafruit.com/bricktunes-lego-glove-synthesizer.md)
- [Ninja Timer: Giant 7-Segment Display](https://learn.adafruit.com/ninja-timer-giant-7-segment-display.md)
- [Generating Text with ChatGPT, Pico W & CircuitPython](https://learn.adafruit.com/generating-text-with-chatgpt-pico-w-circuitpython.md)
- [QT Py Snap Fit Case](https://learn.adafruit.com/qt-py-snap-fit-case.md)
- [Party Parrot Zoetrope](https://learn.adafruit.com/party-parrot-zoetrope.md)
- [reef-pi Guide 2: Power Controller](https://learn.adafruit.com/reef-pi-power-controller.md)
- [Raspberry Pi HQ Camera Case](https://learn.adafruit.com/raspberry-pi-hq-camera-case.md)
- [Mystery Box: Crypto Countdown Case](https://learn.adafruit.com/mystery-box-crypto-countdown-case.md)
- [Monitor Your Greenhouse with a No-Code Environmental Sensor](https://learn.adafruit.com/monitor-your-greenhouse-with-a-no-code-environmental-sensor.md)
- [3D Print Ratcatcher 2 Controller Device](https://learn.adafruit.com/3d-print-ratcatcher-2-controller-device-wand.md)
- [NFC Raspberry Pi Media Player](https://learn.adafruit.com/nfc-raspberry-pi-media-player.md)
