# 4x4 Addressable LED Matrix

**Type:** Product page · **SKU:** CE09639 · **Brand:** [Core Electronics](https://core-electronics.com.au/brands/core-electronics-australia)
**Page:** https://core-electronics.com.au/4x4-add-led-matrix.html ([markdown](https://core-electronics.com.au/4x4-add-led-matrix.html.md))

Add some sparkle to your projects!

## Pricing

- **Price:** $1.75 (inc GST) — $1.59 AUD, exc GST
- **Quantity discounts:** 5+ $1.56 (exc GST) · 15+ $1.51 (exc GST)

## Availability & dispatch

- In stock, ships same business day if ordered before 2PM (Australia/Sydney).
- We can dispatch 30 today; more stock is typically available with a 8–12 day lead time.

## Description

Perfect for showing basic data or making some flashy cosplay pieces!

This 4x4 WS2812 Matrix has lots of libraries for different development boards.

Talk to each pixel individually through the single-wire protocol.

### Specifications

- 4x4 WS2812 LED's
- 16 million colours per pixel (24-bit colour)

### Examples

#### Raspberry Pi Pico - Micropython

 ```
import glowbit
from utime import sleep

def remap_4x4_zigzag(x, y):
    if 0 <= x <= 3 and 0 <= y <= 3:
        if y == 0:
            return x
        elif y == 1:
            return 7 - x
        elif y == 2:
            return 8 + x
        elif y == 3:
            return 15 - x
    else:
        raise ValueError("Invalid input: x and y must be between 0 and 3")

matrix = glowbit.matrix4x4(brightness = 20, pin=16, mapFunction = remap_4x4_zigzag)

######## Set individual pixels ########
matrix.pixelSetXY(1,1, matrix.white())
matrix.pixelsShow()
sleep(1)

######## Blank pixels ########
matrix.pixelsFill(matrix.black())
matrix.pixelsShow()
sleep(1)

######## Set all ascending ########
print('testin')
matrix.pixelsFill(matrix.black())
for i in range(4):
    for j in range(4):
        matrix.pixelSetXY(j,i, matrix.white())
        matrix.pixelsShow()
        sleep(.2)

matrix.pixelsShow()
sleep(1)

######## Graphing data ########
matrix.pixelsFill(matrix.black())
matrix.pixelsShow()

graph = matrix.graph1D(originX = 0, originY = 3, length = 4, direction = "Up", minValue = 0, maxValue = 255)

for i in range(255):
    matrix.updateGraph1D(graph, i)
    matrix.pixelsShow()

for i in range(255, 0, -1):
    matrix.updateGraph1D(graph, i)
    matrix.pixelsShow()

######## Demo ########
matrix.demo()
```

## Images

- [Product image 1](https://core-electronics.com.au/media/catalog/product/s/n/sny09781-edit.jpg)
