An easy to make but sophisticated ESP32 based Word Clock.
4
9
0
225
updated February 28, 2025

Description

PDF

This is a very easy to make Word Clock (80mm x 80mm face size or π inches x π inches) with many features thanks to the ESP32. The clock displays time in a natural language format, such as "IT IS HALF PAST TWO" or "IT IS TWENTY FIVE TO THREE".

  • Minimal soldering.
  • Easy install and setup options.
  • NTP, timezone and daylight savings aware.
  • (optional) Ambient light reactive.
  • Looks sexy as heck!

The original designs are great, but a lot of work. This... isn't.

Bill of Materials:

  • An 8x8 WS2812B individually addressable 5V LED panel (or equivalent) (Aliexpress, about US$5.30).
  • An ESP32, like these ESP32-C3 Super Minis (Aliexpress, about US$2.00).
  • (optional) A light dependent resistor (LDR) and 10kΩ resistor (Aliexpress, about US$0.20 each).

So, you'll need about US$7.50 in components. You'll also need a USB-C cable and power supply to power the clock, or you can solder a 5V connector/power supply on if you prefer.


Printing

All the parts should be printed in black except the Diffuser, which should be printed in white. No supports necessary. I use PLA+, but whatever floats your benchy. The print is not sensitive to layer heights. The back cover clips into places, and the back cover lid slots in so no screws are necessary, although you could add a dab of super glue if you want everything to hold together firmly.

Assembly

Detailed assembly instructions are on the Github site:

But briefly:

  • Download the code from GitHub:
git clone https://github.com/appositeit/esp32_word_clock  
  • Plug in your ESP32 with a USB cable, run the Python web installer, open your web browser to http:///wordclock.local/ and follow the installation instructions.
    • Set your timezone correctly.
  • Disconnect from power! Then solder as follows:
ESP32Connects to…
GroundLED Ground
5VLED 5V
GPIO10LED data (DIN pin)
Optionally, if you want it to be reactive to ambient light:
3.3VLDR leg 1
Ground10kΩ resistor leg 1
GPIO5LDR leg 2 and 10kΩ resistor leg 2
  • Trim the excess cables off the LED panel. They don't fit in the case, but you can reattach them later. 
  • Reconnect the USB cable to power it up and make sure everything works.
  • Physically assemble the 3D printed parts and electronics. It's pretty apparent how everything goes together. Jam all the electronics into the little compartment and hide your shame with the back cover lid.
    • If you use an LDR, there's a little nook to settle it into and a fiddly little retainer to hold it in place. The back cover lid will keep the retainer in place once it slides on.
  • Done! Gorgeous! And so is the clock!

You can tune the threshold for how bright the lighting is, and when it goes “dark” or “bright” through the web interface (http:///wordclock.local/).

The OnShape model is available here.

Tags



Model origin

The author remixed this model.

Differences of the remix compared to the original

This uses @xadow's base design, but shrinks it down to 80mm x 80mm, with an enlarged  (relatively!) electronics compartment to fit the wiring and ESP32 mini.

License


Highlighted models from creator

View more