TURN A ULANZI PIXEL CLOCK INTO A LIVE DASHBOARD FOR YOUR WHOLE SMART HOME
Flash open firmware onto the Ulanzi TC001 pixel clock and turn it into a local Home Assistant display, with no vendor cloud in the loop.
by Blueforcer
DisplaysAutomation
Built withESP32
- difficulty
- ●●○○○
- time
- an evening
- license
- CC-BY-NC-SA-4.0
- repo
- repo FINISHED (SUCCEEDED BY AWTRIX NG)2,359 stars
●●○○○ · an evening · CC-BY-NC-SA-4.0 · 2,359 stars · repo FINISHED (SUCCEEDED BY AWTRIX NG)
WHAT YOU’LL NEED
Jump to section
COMPAREE VERDICT
Awtrix 3 is firmware for the Ulanzi TC001, a pixel clock with a 32x8 RGB matrix (it also runs on self-built ESP32 clocks with the same pinout). You flash it from the browser, with no soldering or disassembly, and it becomes a local display for Home Assistant notifications, sensor readings, timers, weather, and custom pages, fed over MQTT or HTTP. Out of the box it already shows time, date, temperature and humidity. Going back is possible: the docs provide a dump of the original Ulanzi firmware to flash back. The single hardest part is not the flash, it is getting MQTT and Home Assistant talking if you have never done that before; if you do not run a broker yet, budget extra time to set up Mosquitto. Note that the creator ended development of Awtrix 3 in 2026 - it keeps working but gets no new releases, and new work happens in its successor, AWTRIX NG. The non-commercial license means you cannot sell clocks running this firmware, but for personal use it is one of the cleanest hardware hacks around. If flashing fails, the docs' first advice is to try a different USB cable and port.
IN THE REPO
GOOD TO KNOW
- —Firmware repository is complete: web flasher, compiled binaries, JSON API docs, and a full wiki.
- —No hardware files — this is firmware for the commercial Ulanzi TC001 clock.
- —The wiki covers installation, MQTT setup, Home Assistant integration, and custom apps.
- —License is CC BY-NC-SA 4.0: non-commercial use only, share-alike required.
- —The flasher runs in Chrome or Edge from the official docs site (blueforcer.github.io/awtrix3, Online flasher page), no local toolchain needed.
- —2,300+ stars; development has ended (archive since 2026) and continues in the successor AWTRIX NG.
Parts to buy
2 itemsFrom our check of the build. Exact quantities and part numbers are in the creator’s BOM.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Videos
Community video by Smart Home Junkie, linked from the AWTRIX 3 README: the Ulanzi pixel clock as a Home Assistant display.
More builds like this
All projectsGallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Check you have an ESP32-based clock: the Ulanzi TC001, or a self-built clock wired to the documented Ulanzi pinout(AWTRIX 3 runs only on ESP32 hardware)
- 2.Open the online flasher in the AWTRIX 3 docs (blueforcer.github.io/awtrix3, Online flasher) in Chrome or Edge, tick 'erase' for the first flash, and follow it(Fully browser-based, no local toolchain needed)
- 3.Set up an MQTT broker if you do not have one — Mosquitto on Home Assistant is the common path(The wiki assumes MQTT is already running; if not, budget an extra hour)
- 4.Configure the clock's WiFi and MQTT settings via the web interface at its IP address(The clock broadcasts its own AP on first boot for setup)
- 5.Install the Home Assistant integration or send test messages over MQTT to confirm it works(The wiki has JSON examples for every app type)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
KNOWN ISSUES
- Flashing errors are usually the cable: the docs recommend trying a different USB cable and port, because some users had trouble with the cable supplied with the clock. Tick 'erase' the first time you flash a Ulanzi.
- Not having an MQTT broker running before you start — the clock will flash fine but you will see nothing until MQTT is configured, and setting up Mosquitto from scratch takes an hour if you have never done it.
- Expecting the clock to do something on its own — Home Assistant discovers it over MQTT, but every custom app or notification still has to be sent by your own automations.
- Using Safari or Firefox for the flash — the web serial API only works in Chrome and Edge.
- The non-commercial license: you cannot sell these clocks or run them in a commercial setting without separate permission.
- Assuming the clock keeps perfect time offline — it syncs time over NTP via WiFi, so after a long network outage the time can drift.
Can I go back to the stock Ulanzi firmware if I change my mind?
Yes. The Awtrix docs provide a dump of the original Ulanzi firmware; you flash it back from the browser (esp.huhn.me) the same way you installed Awtrix.
Do I need Home Assistant, or can I use this standalone?
You can send MQTT messages from anything — Node-RED, Python scripts, cron jobs. Home Assistant is just the most common use case.
What is the refresh rate like for sensor updates?
Updates show as soon as your system sends them over MQTT or HTTP; in practice the limit is how often your sensors and automations publish.
Can I run custom animations or icons?
Yes. Download any LaMetric icon by its ID from the clock's web interface, or upload your own GIF (up to 32x8 pixels) or JPG (8x8) icons through its file manager. The paid AWTRIX app adds a database of over 1,800 icons and animations. Custom pages and notifications are sent as JSON over MQTT or HTTP.
Does it work with other smart home platforms like Google Home or Alexa?
Not directly. It takes content over MQTT or its HTTP API, so you need a bridge or automation that relays events from those ecosystems.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
AWTRIX 3 is archived and its successor, AWTRIX NG, is a full rewrite. If you already run AWTRIX 3 on a TC001, would you stay on the version that works, or move to NG for on-device apps?
Blueforcer
Blueforcer built Awtrix 3 as the successor to the original Awtrix project, moving from custom hardware to a flash-and-go approach using the widely available Ulanzi TC001. Developed from 2023, it attracted a Discord community of over 5,000 people; in 2026 Blueforcer ended Awtrix 3 and moved development to a full rewrite, AWTRIX NG.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.
CompareeTEAM2mo agoedited
Practical notes from our verification: the GitHub repo is the primary source, but AWTRIX 3 is no longer maintained. The README now says development has ended, the repository stays online as an archive and the firmware keeps working, while all new work happens in the successor, AWTRIX NG. The online flasher is still the easiest way to install it. The README links community-made YouTube walkthroughs and a large Discord community. You do not strictly need an MQTT broker: AWTRIX 3 has both an MQTT and an HTTP API, and supports Home Assistant MQTT discovery if you already run a broker. The licence is CC BY-NC-SA 4.0, so commercial use of the firmware is not allowed. If you are starting fresh today, look at AWTRIX NG before committing to the archived version. Correction (4 October 2026): we re-checked this page line by line against the project's own repository, documentation and videos, and fixed errors in earlier versions.