Stainless Steel Word Clock

A 3D-printed word clock with minute resolution and a laser-cut stainless steel front plate

August 8, 2023 3 min read
Post Feature Image

I've always been fascinated with word clocks since I first saw the QLOCKTWO at an art gallery in New York. I believe that the ability for a seemingly random grid of letters to tell the time is magical.

Most of the commercially-available ones, however, only tell the time in five minute increments, opting instead to use a "four corners" system. This is where LED lights on each of the corners indicate how many "extra" minutes to add to the time spelled out. Instead of this, I wanted to spell out every possible time, just by using words.


Taking inspiration from the clock that I saw, I decided that the front plate should be laser-cut stainless steel, with the back being 3D-printed PETG.

In the future, I'd like to route out a nice piece of walnut wood for the back.

I started by creating a 16 x 16 grid of letters in Illustrator that would serve as the front plate of the clock. The grid spacing is 16.66mm, equivalent to a 300/meter LED strip.

I really liked the font that QLOCKTWO used on their clocks, so I just did the same!

This was then exported as a DXF and extruded to a 3D model, so I could use Fusion to design the backplate, which would hold both the PCB and front metal plate in place.

As usual, I started the PCB design in Altium. I created a chain of WS2812 LEDs and then copied over my ESP32-S3 supporting circuitry from the new PCB design for the sand table.


I had the PCBs manufactured through JLCPCB, as they were kind enough to sponsor this project.

I 3D printed the backplate and the diffusers on my Voron in PETG and PLA. The front panel was manufactured on a Fablight FL3000.

The PCB was assembled and then placed behind the backplate. The diffusers were placed on top.

The clocks are actually powered by the same boards used in my custom WLED controller project. The WLED software treats the 256 pixels as a 16x16 matrix and uses string manipulation to figure out which pixels to light up based on the time.

GitHub - acvigue/WLED: Control WS2812B and many more types of digital RGB LEDs with an ESP8266 or ESP32 over WiFi!Control WS2812B and many more types of digital RGB LEDs with an ESP8266 or ESP32 over WiFi! - acvigue/WLED
bookmark icon
GitHub acvigue
bookmark image

Don't miss out!Stay in the loop by signing up for my (infrequent) newsletter. No spam, unsubscribe anytime.