8x8 RGB LEDMatrix Desktop Word Clock

Color changing words tell you the time...

Similar projects worth following
The idea behind this Word Clock is to have all the words necessary for telling the time and to place these words in an 8x8 letters layout as in a word search puzzle. In this way, with a small number of leds we can tell the time minute by minute. Because the words are placed randomly you can tell the time by reading the color changing words each after another (the words are already displayed on the clock face).

Pros of my project?

  • very affordable, cheap electronics and other parts;
  • opensource web server for easy management;
  • accurate time from ntp server;
  • it is possible to have multiple languages;
  • minute by minute time indication (not by 5 minutes like standard word clocks), dynamic time display and amazing flexibility for future ideas...

I.The Enclosure

Wooden photo frame

You can make your own frame, there are a dozen of articles about this, everywhere on the net. But a simpler solution would be finding a framing company where you can order a personalized frame with your required dimensions and you can choose from many frame types. This is exactly what I did. I ordered my frames with a specific dimension: the framed photo, in my case object (display) is 80x80mm. I also asked for an accurate dimension, I didn't want the frame to be too big for the 3D printed plastic grid.

Plexiglass support

The plexiglass support can be also be made DIY but for an amateur it is not very easy to cut and blend plexiglass. So I ordered several supports from an advertising company that makes all kinds of plexiglass objects. The dimensions I used are: width - 120mm, first part length - 180mm, second part length - 50mm, 15° bending angle.

Display plexiglass sheet

The 3mm grey smoked plexiglass sheet can be cut from a bigger sheet, obtaining the required 80x80mm dimension.

Plastic grid

The STL file for 3D printing can be downloaded from Tinkercad

Display Printed Paper Sheet

The SVG file for the Printed Paper Sheet is attached, and it can be edited with Inkscape. You can make your own display layout based on this SVG file, I used Word Search Construction Kitsoftware to generate a words layout for the time display. You can print the file repeatedly on the same sheet of paper to achieve a good, opaque, black background. I got very good results with a cheap inkjet printer and standard white copier paper. I cut off the layout with a pair of scissors.

Plastic box for electronics

The files that you can 3d print are also on Tinkercad. I used some already purchased jewelry boxes, I only designed a new box base because the boxes were too tall. The files on Tinkercad are based on this type of boxes.

II.The Electronics

ESP-01 board

Cheap and versatile microcontroller module with WiFi capability, if you don't know about it there are many howto's on the net. (For example you can read this good instructable by TonesB ESP8266 WiFi Module for Dummies)

3.3v stabilizer module

The ESP-01 requires to be powered with 3.3v, I used here a 4pin module.

Led Matrix 64led RGB Matrix with WS8212 IC

You can read more in Getting Started With NeoPixel / WS2812 RGB LED by Open Green Energy.

3 Pin Header and connector

I used this connector because it permits easy assembly-disassembly of the enclosure.

DC connector and DC power supply

The power supply is 5v and 1.5A maximum, it is rather enough because not all leds are lightened up at full brightness and full white. Also I opted for a separate DC connector because it is simple to replace a defective power supply

Schematics - Very simple, made with Fritzing, see the image bellow.

III.Programming the ESP-01 Board

My way for flashing the ESP-01 is using an adapter with a PL2303 chip (USB to Serial converter). Also to make the programming easier, I used a breadboard adapter like this and I connected it to the USB to Serial converter. You can see in the images the wiring between these two modules: 3.3v-RED, Ground-BLACK, RX from the converter to TX on adapter-PURPLE, TX from the converter to RX on adapter-GREY. On the adapter I soldered a switch (PROG) between GPIO0 and GND pins and a switch (RESET) between RST and GND pins.

IV.Configuring and Using the Clock

After correctly flashing the ESP-01 module, start the clock. On the display you will see an animation like bellow.

You will find a new WiFi Access...

Read more »


The SVG file for the Printed Paper Sheet

svg+xml - 69.01 kB - 12/29/2019 at 11:40


  • 1 × wooden photo frame wide frame (2cm), thin frame (1cm);
  • 1 × 3mm plexiglass support bended as in enclosure description
  • 1 × XH Pin Header+Connector 3pin 2.54mm Pitch
  • 1 × Female DC Conector cable 5.5mmx2.1mm(2.5mm);
  • 1 × Power supply 5v/1.5A, with 5.5mmx2.1mm(2.5mm) Male connector.

View all 13 components

  • 1

    Detailed instructions for enclosure (follow the images bellow)

    - choose (and mark) a side of the frame to be the top of the clock, clean the smoked plexiglass sheet, put it in the frame;

    - place the printed paper sheet and the 3D printed grid;

    - drill with 2 mm diameter bit through the plastic grid to make room for the screws in the frame;

    - screw the plastic grid;

    - mark on the frame the place for holes and lock the frame to the plexiglass support;

    - drill the holes with a 2mm diameter bit (enlarge the holes in the support with a 3mm diameter bit, make the coining with a 10mm diameter bit) and screw it all together.

    The last two images shows an almost finished enclosure.

  • 2

    Detailed instructions for electronics (follow the images bellow)

    - solder the 3pin connector to the LED Matrix;

    - change the order of the red and black wire in the header (it is good to respect some rules for colors used in wirings, so a red color wire for 5v and a black color wire for ground);

    - drill a hole in the plexiglass support where the 3pin connector is located and enlarge the hole (with a Dremel for example) to accommodate the 3pin connector;

    - make the modules soldering like in images;

    - place in the box the modules, the power and the XH wire ends in the plastic box;

    - twist and solder together the wire ends; isolate and strengthen the twisted wire ends with 2mm interior heat shrink tubing;

    - fix the Led Matrix to the 3D printed plastic grid (with a hot melt glue gun);

    - assemble all :)

  • 3

    Step by step instructions:

    - download and install the Arduino IDE;

    - download the source for the Verbis word clock;

    - install in Arduino IDE the ESP support libraries - more here;

    - insert the ESP-01 Board in the breadboard adapter and connect the USB to Serial converter to an USB port of the computer;

    - open in Files-Examples-ESP8266 the CheckFlashConfig sketch and then make the configuration options in TOOLS like in the image (you will have another COM port eventually);

    - open a serial monitor (TOOLS - SERIAL MONITOR), make the configs (Both NL&CR, 115200 baud) and push the RESET switch on the breadboard adapter;

    - you will see something like in the image bellow with the 'ready' word on the last line, it means the ESP Board is working and you can find on your phone a new WiFi Access Point;

    - to put the ESP board in programming mode, gently push the PROG switch and keep pushing, then push and release the RESET switch, THEN(!) release the PROGRAM switch, in the SERIAL MONITOR you must see a garbled line after the ready line (see image);

    - click the UPLOAD button in the Arduino IDE, wait for the sketch to be compiled and uploaded, then verify the SERIAL MONITOR again, if you have a line with 'Flash Chip configuration ok' then the programming options in the Arduino IDE are good. If no, make the necessary changes;

    - unzip the sources and open, with the Arduino IDE, the VerbisMain.ino file, put the ESP board in programming mode and upload the program, if everything is good you will see in the SERIAL MONITOR the word clock's initial configuration and a WiFi Access Point on your phone.

View all 3 instructions

Enjoy this project?



danjovic wrote 01/03/2020 at 20:09 point

Nice Work! Congratulations!

I have started my #Stranger Board solely with a ESP01 but could not get it to generate reliable timing for the addressable LEDs.

  Are you sure? yes | no

andrei.erdei wrote 01/03/2020 at 21:33 point

Hi. Thank you for your appreciation. I had also problems with the led matrices but or was a defective (poor) power supply or this missing line from the code "#define FASTLED_INTERRUPT_RETRY_COUNT 0". - I'm using the fastled library... Hope it helps.

  Are you sure? yes | no

danjovic wrote 01/03/2020 at 22:31 point

Thanks for the tip. I have tried the fast led but haven't used that directive. I'll give it a try.

  Are you sure? yes | no

Dan Maloney wrote 12/30/2019 at 17:10 point

Great write up! And a good looking clock - I like the color change to prompt the user. Nice job!

  Are you sure? yes | no

andrei.erdei wrote 12/30/2019 at 17:19 point

Thank you!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates