# Tombstone Matrix Portal

## Overview

https://youtu.be/bdUgz8T7XeA

In this project we’re making a tombstone with Adafruit’s Matrix Portal.

We upgraded this foam tombstone with an RGB matrix so we can display animated graphics.

The 3D skull is just a bitmap sprite sheet that is animated using CircuitPython.

![3d_printing_hero-wide-loop.gif](https://cdn-learn.adafruit.com/assets/assets/000/095/593/medium640thumb/3d_printing_hero-wide-loop.jpg?1602427415)

The Matrix Portal is a plug-n-play dev board that makes these types of projects fairly easy.

We designed and 3D printed these brackets so we can attach this to things like halloween props, picture frames or just some foam core.

With CircuitPython, you can animate sprites sheets and display them on the matrix!

![3d_printing_pumpkin-spin.gif](https://cdn-learn.adafruit.com/assets/assets/000/095/622/medium640thumb/3d_printing_pumpkin-spin.jpg?1602441302)

![](https://cdn-learn.adafruit.com/assets/assets/000/095/627/medium800/3d_printing_matrix-attached-wide.jpg?1602442439)

The bitmaps autoplay but you can also use the built-in buttons on the side to cycle through them!

## Prerequisite Guides

- [Adafruit Matrix Portal](https://learn.adafruit.com/adafruit-matrixportal-m4)
- [Pixel Art on RGB Matrix](https://learn.adafruit.com/pixel-art-matrix-display/overview)
- [Sprite Sheet Animation](https://learn.adafruit.com/pixel-art-matrix-display/sprite-sheet-animation)

![3d_printing_portal-buttons.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/631/medium640/3d_printing_portal-buttons.jpg?1602442980)

![](https://cdn-learn.adafruit.com/assets/assets/000/095/629/medium800thumb/3d_printing_ghost-loop.jpg?1602442719)

## Parts
### Adafruit Matrix Portal - CircuitPython Powered Internet Display

[Adafruit Matrix Portal - CircuitPython Powered Internet Display](https://www.adafruit.com/product/4745)
Folks love our [wide selection of RGB matrices](https://www.adafruit.com/category/327) and accessories, 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...

In Stock
[Buy Now](https://www.adafruit.com/product/4745)
[Related Guides to the Product](https://learn.adafruit.com/products/4745/guides)
![Video of a person rotating an LED matrix panel with animation resembling falling colored sand.](https://cdn-shop.adafruit.com/product-videos/640x480/4745-05.jpg)

### 64x32 RGB LED Matrix - 4mm pitch

[64x32 RGB LED Matrix - 4mm pitch](https://www.adafruit.com/product/2278)
Bring a little bit of Times Square into your home with this sweet 64 x 32 square 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...

In Stock
[Buy Now](https://www.adafruit.com/product/2278)
[Related Guides to the Product](https://learn.adafruit.com/products/2278/guides)
![Two white hands hold out an assembled and powered on 64x32 RGB LED Matrix Panel - 4mm pitch. The matrix displays "Adafruit Industries LED MATRIX! 32x64 *RGB*"](https://cdn-shop.adafruit.com/640x480/2278-00.jpg)

### 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)

### USB Li-Ion Power Bank with 2 x 5V Outputs @ 2.1A - 5000mAh

[USB Li-Ion Power Bank with 2 x 5V Outputs @ 2.1A - 5000mAh](https://www.adafruit.com/product/4288)
Here's a hand-held-size&nbsp;rechargeable battery pack for your&nbsp;[Raspberry Pi](http://www.adafruit.com/raspberrypi)&nbsp;(or&nbsp;[Metro](https://www.adafruit.com/category/17), or anything else that uses 5V!). This pack is intended for providing a lot of power to...

In Stock
[Buy Now](https://www.adafruit.com/product/4288)
[Related Guides to the Product](https://learn.adafruit.com/products/4288/guides)
![Angled shot of a USB Li-Ion Power Bank with 2 x 5V Outputs @ 2.1A - 5000mAh.](https://cdn-shop.adafruit.com/640x480/4288-05.jpg)

### USB Type A to Type C Cable - 1ft - 0.3 meter

[USB Type A to Type C Cable - 1ft - 0.3 meter](https://www.adafruit.com/product/4473)
As technology changes and adapts, so does Adafruit. This&nbsp;&nbsp; **USB Type A to Type C** cable will help you with the transition to USB C, even if you're still totin' around a USB Type A hub, computer or laptop.

USB C is the latest industry-standard connector for...

In Stock
[Buy Now](https://www.adafruit.com/product/4473)
[Related Guides to the Product](https://learn.adafruit.com/products/4473/guides)
![Angled shot of a one-foot-long, black, USB Type A to Type C Cable](https://cdn-shop.adafruit.com/640x480/4473-02.jpg)

### Part: Hot Knife Tool
quantity: 1
Electric hot knife cutter for foam
[Hot Knife Tool](https://amzn.to/30Wwt0E)

### Part: Pro Tapes Sheets
quantity: 1
ProTapes 306UGLU600 UGlu Dash Sheets
[Pro Tapes Sheets](https://amzn.to/350HMWH)

# Tombstone Matrix Portal

## 3D Printing

## Parts List

STL files for 3D printing are oriented to print "as-is" on FDM style machines. Parts are designed to 3D print without any support material. Original design source may be downloaded using the links below.

- Bracket 1
- Bracket 2
- Battery Bracket

![3d_printing_matrix-bracket.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/596/medium640/3d_printing_matrix-bracket.jpg?1602428022)

![3d_printing_battery-bracket.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/597/medium640/3d_printing_battery-bracket.jpg?1602428071)

[Edit Matrix Bracket Design (64x32 RGB LED Matrix - 4mm pitch PID:2278)](https://a360.co/36RxTNC)
[Matrix Display Feet](https://a360.co/2SSVZ2c)
[Edit 5k mAh Battery Pack](https://a360.co/3nEvegd)
[Download STLs](https://www.thingiverse.com/thing:4622093)
## Slicing Parts

Slice with setting for PLA material. The parts were sliced using CURA using the slice settings below.

**PLA filament**  
215c extruder  
0.2 layer height  
10% gyroid infill  
60mm/s print speed  
60c heated bed

**Supports**  
4% density  
.2 extrusion width

![3d_printing_slice.gif](https://cdn-learn.adafruit.com/assets/assets/000/095/598/medium640thumb/3d_printing_slice.jpg?1602428980)

# Tombstone Matrix Portal

## Install CircuitPython

[CircuitPython](https://github.com/adafruit/circuitpython) is a derivative of [MicroPython](https://micropython.org) designed to simplify experimentation and education on low-cost microcontrollers. It makes it easier than ever to get prototyping by requiring no upfront desktop software downloads. Simply copy and edit files on the **CIRCUITPY** drive to iterate.

## Set up CircuitPython Quick Start!

Follow this quick step-by-step for super-fast Python power :)

[Download the latest version of CircuitPython for this board via circuitpython.org](https://circuitpython.org/board/matrixportal_m4/)
## Further Information

For more detailed info on installing CircuitPython, check out [Installing CircuitPython](https://learn.adafruit.com/welcome-to-circuitpython/installing-circuitpython).

 **Click the link above and download the latest UF2 file.**

Download and save it to your desktop (or wherever is handy).

![led_matrices_Save_to_Desktop.png](https://cdn-learn.adafruit.com/assets/assets/000/095/075/medium640/led_matrices_Save_to_Desktop.png?1601050695)

Plug your MatrixPortal M4 into your computer using a known-good USB cable.

**A lot of people end up using charge-only USB cables and it is very frustrating! So make sure you have a USB cable you know is good for data sync.**

Double-click the **Reset** button (indicated by the green arrow) on your board, and you will see the NeoPixel RGB LED (indicated by the magenta arrow) turn green. If it turns red, check the USB cable, try another USB port, etc.

If double-clicking doesn't work the first time, try again. Sometimes it can take a few tries to get the rhythm right!

![led_matrices_matrixportal_install_cp.jpg](https://cdn-learn.adafruit.com/assets/assets/000/125/447/medium640/led_matrices_matrixportal_install_cp.jpg?1697644568)

You will see a new disk drive appear called **MATRIXBOOT**.

&nbsp;

Drag the **adafruit\_circuitpython\_etc.uf2** file to **MATRIXBOOT****.**

![led_matrices_MATRIXBOOT.png](https://cdn-learn.adafruit.com/assets/assets/000/125/448/medium640/led_matrices_MATRIXBOOT.png?1697644692)

![led_matrices_Drag_to_Drive.png](https://cdn-learn.adafruit.com/assets/assets/000/125/449/medium640/led_matrices_Drag_to_Drive.png?1697644703)

The LED will flash. Then, the **MATRIXBOOT** &nbsp;drive will disappear and a new disk drive called **CIRCUITPY** will appear.

That's it, you're done! :)

![led_matrices_circuitpy.png](https://cdn-learn.adafruit.com/assets/assets/000/125/450/medium640/led_matrices_circuitpy.png?1697645066)

# Tombstone Matrix Portal

## CircuitPython Setup

To use all the amazing features of your MatrixPortal M4 with CircuitPython, you must first install a number of libraries. This page covers that process.

# Adafruit CircuitPython Bundle

Download the Adafruit CircuitPython Library Bundle. You can find the latest release here:

[Download latest Library Bundle](https://circuitpython.org/libraries)
Download the **adafruit-circuitpython-bundle-version-mpy-\*.zip** bundle zip file, and unzip a folder of the same name. Inside you'll find a **lib** folder. The entire collection of libraries is too large to fit on the **CIRCUITPY** drive. Instead, add each library as you need it, this will reduce the space usage but you'll need to put in a little more effort.

At a minimum we recommend the following libraries, in fact we more than recommend. They're basically required. So grab them and install them into **CIRCUITPY/lib** now!

- **adafruit\_matrixportal** - this library is the main library used with the MatrixPortal.
- **adafruit\_debouncer.mpy** - this library is&nbsp;used for debouncing a digital input pin
- **adafruit\_portalbase** &nbsp;- This is the base library that adafruit\_matrixportal is built on top of.
- **adafruit\_esp32spi** - this is the library that gives you internet access via the ESP32 using (you guessed it!) SPI transport. You need this for anything Internet
- **neopixel.mpy** - for controlling the onboard neopixel
- **adafruit\_bus\_device** - low level support for I2C/SPI
- **adafruit\_requests.mpy** - this library allows us to perform HTTP requests and get responses back from servers. GET/POST/PUT/PATCH - they're all in here!
- **adafruit\_fakerequests.mpy&nbsp;** &nbsp;- This library allows you to create fake HTTP requests by using local files.
- **adafruit\_io** - this library helps connect the PyPortal to our free data logging and viewing service
- **adafruit\_bitmap\_font** - we have fancy font support, and it's easy to make new fonts. This library reads and parses font files.
- **adafruit\_display\_text** - not surprisingly, it displays text on the screen
- **adafruit\_lis3dh.mpy** - this library is used for the onboard accelerometer to detect the orientation of the MatrixPortal
- **adafruit\_minimqtt** - this is used for communicating with MQTT servers.

# Tombstone Matrix Portal

## Code the Sprite Sheet Animation Display

Make sure you've set up the Matrix Portal with Circuit Python and the necessary libraries as shown on the **Code the Pixel Art Display** page of this guide. This code uses the same libraries.

## Code

Click the Download: Project Zip File link below in the code window to get a zip file with all the files needed for the project. Copy **code.p**** y **from the zip file and place it on the** CIRCUITPY** drive.

You'll also need to copy the following files to the **CIRCUITPY** drive. See the graphic at the top of the page as to filenames and where they go):

- **/bmps** directory, which contains the sprite sheet .bmp files.

## Sprite Sheet Specs

Make sure your sprite sheets are

- .bmp files
- 64 pixels wide
- multiples of 32 pixels high, depending on how many frames there are
- Export as vertical sprite sheets with no border padding. The code will use these dimensions to display the tiles

![](https://cdn-learn.adafruit.com/assets/assets/000/095/574/medium800/led_matrices_blobbo4_sheet.jpg?1602276761)

![](https://cdn-learn.adafruit.com/assets/assets/000/095/573/medium800/led_matrices_sheet_explainer-0002.gif?1602276689)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/Matrix_Sprite_Animation_Player/code.py

## How it Works

### Libraries

Here's how the code works. First we import necessary libraries including `dislpayio` and `adafruit_matrixportal` to handle the TileGrid display.

### Variables

We use a few variables that are user adjustable to fine tune the way the playback works. `DEFAULT_FRAME_DURATION = 0.1` sets the frame-rate to 10fps, a good starting point, as it mimics the default playback rate in many pixel animation programs.

You can also set your own framerate overrides per sprite sheet as shown here:

```python
FRAME_DURATION_OVERRIDES = {
    "three_rings1-sheet.bmp": 0.15,
    "hop1-sheet.bmp": 0.05,
    "firework1-sheet.bmp": 0.03,
}
```

The `AUTO_ADVANCE_LOOPS = 3` variable specifies how many times to run through each animation before advancing to the next one.

### Setup

The display and button setups are next, followed by some variables used to track the state of the playback later.

```python
# --- Display setup ---
matrix = Matrix(bit_depth=4)
sprite_group = displayio.Group(max_size=1)
matrix.display.root_group = sprite_group

# --- Button setup ---
pin_down = DigitalInOut(board.BUTTON_DOWN)
pin_down.switch_to_input(pull=Pull.UP)
button_down = Debouncer(pin_down)
pin_up = DigitalInOut(board.BUTTON_UP)
pin_up.switch_to_input(pull=Pull.UP)
button_up = Debouncer(pin_up)

auto_advance = True

file_list = sorted(
    [
        f
        for f in os.listdir(SPRITESHEET_FOLDER)
        if (f.endswith(".bmp") and not f.startswith("."))
    ]
)

if len(file_list) == 0:
    raise RuntimeError("No images found")

current_image = None
current_frame = 0
current_loop = 0
frame_count = 0
frame_duration = DEFAULT_FRAME_DURATION
```

### Image Loading Fuction

The` load_image()` function is where the first part of the sprite sheet magic happens! The key moment is where the displayio.TileGrid is defined to set the `tile_height = matrix.display.height  `which in the case of our dislpay is 32 pixels. This effectively slices up the sprite sheet into the individual frames for display.

```python
def load_image():
    """
    Load an image as a sprite
    """
    # pylint: disable=global-statement
    global current_frame, current_loop, frame_count, frame_duration
    while sprite_group:
        sprite_group.pop()

    bitmap = displayio.OnDiskBitmap(
        open(SPRITESHEET_FOLDER + "/" + file_list[current_image], "rb")
    )

    frame_count = int(bitmap.height / matrix.display.height)
    frame_duration = DEFAULT_FRAME_DURATION
    if file_list[current_image] in FRAME_DURATION_OVERRIDES:
        frame_duration = FRAME_DURATION_OVERRIDES[file_list[current_image]]

    sprite = displayio.TileGrid(
        bitmap,
        pixel_shader=displayio.ColorConverter(),
        width=1,
        height=1,
        tile_width=bitmap.width,
        tile_height=matrix.display.height,
    )

    sprite_group.append(sprite)
    current_frame = 0
    current_loop = 0
```

The advance\_image() function is used to select the next sprite sheet when it is time.

```python
def advance_image():
    """
    Advance to the next image in the list and loop back at the end
    """
    # pylint: disable=global-statement
    global current_image
    if current_image is not None:
        current_image += 1
    if current_image is None or current_image >= len(file_list):
        current_image = 0
    load_image()
```

And, the final part of setup is the creation of the advance\_frame() function, which allows the sprite sheet to move from "frame" to "frame" as it works it's way down the sprite sheet.

```python
def advance_frame():
    """
    Advance to the next frame and loop back at the end
    """
    # pylint: disable=global-statement
    global current_frame, current_loop
    current_frame = current_frame + 1
    if current_frame >= frame_count:
        current_frame = 0
        current_loop = current_loop + 1
    sprite_group[0][0] = current_frame
```

## Main Loop

The main loop of the program runs the advance image and advance frame functions, while also checking for button\_down and button\_up events.

The Up button stops the auto advance from animation to animations, constantly looping just one animation.

The Down button advances manually to the next animation.

```python
while True:
    if auto_advance and current_loop >= AUTO_ADVANCE_LOOPS:
        advance_image()
    button_down.update()
    button_up.update()
    if button_up.fell:
        auto_advance = not auto_advance
    if button_down.fell:
        advance_image()
    advance_frame()
    time.sleep(frame_duration)
```

https://youtu.be/03E1Sv8sRQQ

# Tombstone Matrix Portal

## Assemble

## Cutout

To create the opening in the tombstone, we designed a cutout with jagged edges and printed out a paper template.

&nbsp;

## Paint cracks

We used a foam cutter tool to create the opening and painted the inner edges.

&nbsp;

![3d_printing_foam-cutter.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/614/medium640/3d_printing_foam-cutter.jpg?1602432146)

![3d_printing_foam-cut.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/615/medium640/3d_printing_foam-cut.jpg?1602433192)

[Tomb_Crack_Outline.svg](https://cdn-learn.adafruit.com/assets/assets/000/095/621/original/Tomb_Crack_Outline.svg?1602438703)
## Matrix Portal wires

Connect the power and ground wires with the included hardware.

## Matrix Brackets

The two bracket parts are joined together with glue or [M3 screws and nuts](https://www.adafruit.com/product/4685).&nbsp;

![3d_printing_matrix-portal-part.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/599/medium640/3d_printing_matrix-portal-part.jpg?1602429268)

![3d_printing_matrix-bracket-assembled.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/600/medium640/3d_printing_matrix-bracket-assembled.jpg?1602429548)

## Attach Acrylic&nbsp;

Our&nbsp;[Black LED acrylic](https://www.adafruit.com/product/4594)&nbsp;softens up the LEDs and keeps the colors looking vibrant.&nbsp;

You can attach acrylic to the display using ProTapes glue dash sheets.

Just attach small pieces to the corners and remove the protective backing.

Then just line up the acrylic with the edges and stick it over the display.

This makes the display show up much better on camera so you can have it in the background of your video calls.

![projects_glu-squares.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/805/medium640/projects_glu-squares.jpg?1602691019)

## Attach Brackets

Use two M3 screws to attach the brackets to the back of the matrix display.&nbsp;

## Align Matrix

Carefully align the Matrix display to the cut out on the tomb. Mark the position of each bracket.

![3d_printing_matrix-bracket-attach.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/601/medium640/3d_printing_matrix-bracket-attach.jpg?1602429392)

![3d_printing_matrix-align.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/618/medium640/3d_printing_matrix-align.jpg?1602433648)

## Attach to Tomb

Use four M5 screws to secure the matrix display to the tombstone.&nbsp;

&nbsp;

## Mount Battery&nbsp;

Position the battery and battery bracket close to the Matrix Portal board.

Secure the battery bracket with two more M5 screws.

![3d_printing_tomb-attach.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/617/medium640/3d_printing_tomb-attach.jpg?1602433578)

![3d_printing_tomb-battery-attach.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/619/medium640/3d_printing_tomb-battery-attach.jpg?1602433910)

## Complete

You can hold the tombstone up with a panavise or print out our tombstone feet below!

![3d_printing_tomb-back-wide.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/620/medium640/3d_printing_tomb-back-wide.jpg?1602434119)

## Tombstone Feet&nbsp;

Use short wood screws to secure the two feet to the foam tombstone. Each foot has two mounting tabs. The mounting holes are 6mm in diameter with 92mm spacing distance.

- [4x #12 - 1/2in wood screws button head](https://www.mcmaster.com/93406A291/)

![projects_tombstone-feet.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/758/medium640/projects_tombstone-feet.jpg?1602629107)

[Matrix Display Feet](https://a360.co/3jSbVhh)
![](https://cdn-learn.adafruit.com/assets/assets/000/095/759/medium800/projects_tombstone-feet-installed.jpg?1602629419)

![](https://cdn-learn.adafruit.com/assets/assets/000/095/628/medium800thumb/3d_printing_ghost-loop.jpg?1602442477)

# Tombstone Matrix Portal

## Custom Bitmaps

## Memoji's

You can use the Memoji feature on iOS devices to create a custom animation. Record your facial expression to puppeteer a 3D character. We used the skull and ghost emoji's.

![3d_printing_memoji.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/624/medium640/3d_printing_memoji.jpg?1602441572)

[Using Memoji on iOS Devices](https://support.apple.com/en-us/HT208986)
## Recording & Saving Memoji's

Use the messages app on a capable iOS device to record and send the emoji.&nbsp;Save the recording to your desktop using iOS Message app. Drag and Drop the MP4 file to the desktop.

![3d_printing_messages-emjoi.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/630/medium640/3d_printing_messages-emjoi.jpg?1602442808)

## Export Image Sequence

Use an editing program such as Photoshop or After Effects to modify the scale or position. Set the canvas to 32 pixels height&nbsp;and 64 pixels wide. Set the frame rate between 12 and 24 frames. Export the MP4 video as an image sequence.

![3d_printing_after-effects.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/632/medium640/3d_printing_after-effects.jpg?1602443104)

## Sprite Sheet Bitmap

Use Aseprite to generate a sprite sheet image of the image sequence. Open the image sequence and export a sprite sheet image using vertical strip as the sheet type and bitmap as the image format.

Drag and drop the bitmap image to the bmps folder on the **CIRCUITPY** drive.

![3d_printing_aseprite.jpg](https://cdn-learn.adafruit.com/assets/assets/000/095/633/medium640/3d_printing_aseprite.jpg?1602443523)

Walk through the sprite sheet animation learn guide for more information and instructions on using the Aseprite program.

[Sprite Sheet Animation Guide](https://learn.adafruit.com/pixel-art-matrix-display/sprite-sheet-animation)
Download the zip file below to use our "ready-to-go" bitmaps. These were created for 32x64 RGB matrix in a portrait / vertical orientation.

[tombstone-bitmaps.zip](https://cdn-learn.adafruit.com/assets/assets/000/095/756/original/tombstone-bitmaps.zip?1602628363)

## Featured Products

### Adafruit Matrix Portal - CircuitPython Powered Internet Display

[Adafruit Matrix Portal - CircuitPython Powered Internet Display](https://www.adafruit.com/product/4745)
Folks love our [wide selection of RGB matrices](https://www.adafruit.com/category/327) and accessories, 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...

In Stock
[Buy Now](https://www.adafruit.com/product/4745)
[Related Guides to the Product](https://learn.adafruit.com/products/4745/guides)
### 64x32 RGB LED Matrix - 4mm pitch

[64x32 RGB LED Matrix - 4mm pitch](https://www.adafruit.com/product/2278)
Bring a little bit of Times Square into your home with this sweet 64 x 32 square 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...

In Stock
[Buy Now](https://www.adafruit.com/product/2278)
[Related Guides to the Product](https://learn.adafruit.com/products/2278/guides)
### 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)
### USB Li-Ion Power Bank with 2 x 5V Outputs @ 2.1A - 5000mAh

[USB Li-Ion Power Bank with 2 x 5V Outputs @ 2.1A - 5000mAh](https://www.adafruit.com/product/4288)
Here's a hand-held-size&nbsp;rechargeable battery pack for your&nbsp;[Raspberry Pi](http://www.adafruit.com/raspberrypi)&nbsp;(or&nbsp;[Metro](https://www.adafruit.com/category/17), or anything else that uses 5V!). This pack is intended for providing a lot of power to...

In Stock
[Buy Now](https://www.adafruit.com/product/4288)
[Related Guides to the Product](https://learn.adafruit.com/products/4288/guides)
### USB Type A to Type C Cable - 1ft - 0.3 meter

[USB Type A to Type C Cable - 1ft - 0.3 meter](https://www.adafruit.com/product/4473)
As technology changes and adapts, so does Adafruit. This&nbsp;&nbsp; **USB Type A to Type C** cable will help you with the transition to USB C, even if you're still totin' around a USB Type A hub, computer or laptop.

USB C is the latest industry-standard connector for...

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

## Related Guides

- [Adafruit MatrixPortal M4](https://learn.adafruit.com/adafruit-matrixportal-m4.md)
- [Cardboard Window Skull With Animated LED Eyes](https://learn.adafruit.com/cardboard-window-skull-animated-led-eyes.md)
- [Adafruit Protomatter RGB Matrix Library](https://learn.adafruit.com/adafruit-protomatter-rgb-matrix-library.md)
- [Network Connected RGB Matrix Clock](https://learn.adafruit.com/network-connected-metro-rgb-matrix-clock.md)
- [LED Matrix Display for Bitmap Pixel Art and Animation](https://learn.adafruit.com/pixel-art-matrix-display.md)
- [LED Protest Sign](https://learn.adafruit.com/led-protest-sign.md)
- [AdaBox 016](https://learn.adafruit.com/adabox016.md)
- [NextBus transit clock for Raspberry Pi](https://learn.adafruit.com/nextbus-transit-clock-for-raspberry-pi.md)
- [Weather Display Matrix](https://learn.adafruit.com/weather-display-matrix.md)
- [Custom Scrolling Quote Board Matrix Display](https://learn.adafruit.com/aio-quote-board-matrix-display.md)
- [Matrix Portal Flow Visualizer](https://learn.adafruit.com/matrix-portal-flow-visualizer.md)
- [Moon Phase Clock for Adafruit Matrix Portal](https://learn.adafruit.com/moon-phase-clock-for-adafruit-matrixportal.md)
- [Matrix Portal Scoreboard](https://learn.adafruit.com/matrix-portal-scoreboard.md)
- [Matrix Portal Sand Handles](https://learn.adafruit.com/matrix-portal-sand.md)
- [Matrix Portal Creature Eyes](https://learn.adafruit.com/matrix-portal-creature-eyes.md)
