Skip to content
MCU Atlas
ESP32ESP32ESP8266Draft

PixelIt: pixel-art LED matrix display for ESP32

A WS2812B 8x32 matrix display that shows clock, pixel-art animations and smart-home notifications via MQTT or HTTP.

Difficulty:BeginnerCost:Source available

Photos

PixelIt: pixel-art LED matrix display for ESP32 photo 1
PixelIt: pixel-art LED matrix display for ESP32 photo 2

Photos: pixelit-project/PixelIt

Key Facts

  • Chip: ESP32 / ESP8266
  • Display: WS2812B 8x32 matrix
  • Integration: MQTT, REST, Home Assistant, Node-RED
  • Content: pixel-art gallery

About This Project

PixelIt turns an 8x32 WS2812B matrix and an ESP32 or ESP8266 into a pixel-art status display, similar in spirit to commercial Ulanzi/Awtrix clocks. It shows time, sensor data and pixel-art icons from a large community gallery, and receives content from Home Assistant, Node-RED or ioBroker via MQTT or a REST API. A popular weekend build.

Source & Attribution

Source: GitHub
License: MIT
Last verified: 10/16/2026
PixelIt: pixel-art LED matrix display for ESP32
How to Build It
PixelIt drives an 8x32 WS2812B matrix (or a Ulanzi TC001 clock) to show pixel-art animations, the time, and notifications. It's controlled through a web UI, MQTT, REST, Home Assistant or Node-RED, and has a community gallery of pixel art.

Parts Needed

  • ESP32 or ESP8266 board (or a prebuilt Ulanzi TC001)
  • WS2812B 8x32 LED matrix
  • 5V power supply
  • Optional: BME280 or other sensors, DFPlayer Mini for sound

Steps

  1. 1

    Wire the matrix

    Connect the matrix's data in to the ESP's LED pin, power the matrix from 5V, and share GND. A Ulanzi TC001 needs no wiring.

  2. 2

    Flash with the web flasher

    Use PixelIt's web flasher in Chrome or Edge to install the firmware over USB. Developers can build with PlatformIO instead.

  3. 3

    Join Wi-Fi

    Connect to the PixelIt hotspot and enter your Wi-Fi details in the captive portal.

  4. 4

    Configure in the WebUI

    Open the device's IP to set the matrix layout, brightness and sensors, and to enable MQTT and Home Assistant discovery.

  5. 5

    Send content

    Push pixel art from the gallery, or send text and bitmaps through the REST or MQTT APIs from Home Assistant or Node-RED.

Parts List (BOM)
Parts list inferred by MCU Atlas — check the original
inferred
PartQtyRoleEst. PriceBuy
1main board$5–$10View
1display$12–$25View
1sensor$3–$15View
Estimated Total$17–$35 USD

Not included: 3D-printed case, wire, solder, USB cable

Download CSV

Related Projects

Watchy: open-source ESP32 e-ink smartwatch
Illustration
ESP32Draft
An open-source smartwatch with a 1.54in e-paper screen and ESP32, hackable watch faces in Arduino.
Beginner·Under $15·Code
2 parts listed
Low-power ESP32 e-paper weather display (7.5in)
Illustration
ESP32Draft
A wall-mounted 7.5in e-paper weather display on an ESP32 that runs for months on one battery charge.
Intermediate·Cost varies·Code
5 parts listed
OpenEPaperLink: reuse e-ink shelf labels with an ESP32 access point
Illustration
ESP32ESP32-S3Draft
Turns cheap second-hand electronic shelf labels into a Wi-Fi-managed e-ink display fleet via an ESP32 access point.
Advanced·Under $15·Code
3 parts listed