A modular 7-segment clock you build from custom PCBs
A 17 cm, 10 cm-digit display built from custom PCBs and WS2812B pixels, with no diffusers glued into a mask and no soldering boards together.
Build sheet
- Controller
- ESP32-C3 Super Mini
- Pixels
- WS2812B on custom PCB
- Size
- ~17 x 10 cm digits
- Firmware
- Clock, NTP, OTA, MQTT
Can I build this?Intermediate · AI 4/5 · $50–120
- Difficulty
- Intermediate
- AI-buildability
- 4/5
- Time
- A weekend
- Cost
- $50–120
The author shares Gerbers, 3D files and firmware, so the reader mostly orders boards, prints parts, wires one data line and lets AI handle the firmware and MQTT customisation.
Based on "A modular 7-segment clock you build from custom PCBs" on Afterware: https://afterware.xyz/p/a-modular-7-segment-clock-you-build-from-custom-pcbs
Write Arduino firmware for an ESP32-C3 that drives a chain of WS2812B pixels on one data pin as a 7-segment digit. Include a function that takes a digit 0–9 and a colon option, and a clock mode that syncs time over NTP. Add an MQTT subscriber so Home Assistant can switch between time and a sensor value.
Estimates based on the original write-up. How AI-buildability is scored. Building with an AI assistant? Connect it to Afterware (free MCP server).
Story
Each digit is a custom KiCad PCB of WS2812B pixels, so the display shows the time or sensor readings like CO2 at roughly 17 x 10 cm per digit. The author tried other designs, found the diffusers, pixel placement or fixed clock layouts lacking, and set out to build one that was modular, sturdy and easy to extend.
The build starts with a choice: single WS2812B chips soldered by hand, or LED strips. The author went with the full custom PCB, which PCBWay sponsored as a prototype, and a 3D-printed back plane, digit case and diffusers. An ESP32 needs only one GPIO pin for the data line. A 330 to 470 ohm resistor is the recommended safety part, and a level shifter is optional because the WS2812B usually reads a 3.3 V signal on short runs.
Worth stealing: the PCB and 3D-printed parts are shared as Gerbers, schematics and a Printables kit, and the firmware repo has NTP and OTA clock examples. Chain the digits and drive them from Home Assistant over MQTT.
Resources · 5
Hardwareby Ingmar Stapel · Hackster










