ESP32 + LED dots DIY digital clock with transparent panel

This is a HUD-like (Heads Up Display, aka Flat Panel Display) clock that gets the current time via WiFi. It is based on an ESP32 controller and uses four common 8×8 dot-matrix display units driven by a MAX7219 chip.

Component List
8×8 dot matrix display unit (MAX7219) × 4
ESP32 microcontroller × 1
1mm thick, 165 x 75mm acrylic board × 1

3D Printed Case

The enclosure is printed without support and is made of acrylic sheet.
The specific values are: W=165mm, H=75mm.

The final shell can be painted with matte black paint. I used a very low reflectivity paint (MUSOU BLACK) and painted all over the top of the unit and the fuselage.

3D print file, download in the project file library.
https://make.quwj.com/project/458

Installing the ESP32 microcontroller

Connect the ESP32 microcontroller to the dot matrix display unit. Install the MAX72XX library into the Arduino IDE.

As an example, my project connects DIN-16, CS-17, CLK-21. the connections in the source code are variable. It can be found in lines 115-117 below.

1
2
3
#define CLK_PIN   21  // or SCK
#define DATA_PIN  16  // or MOSI
#define CS_PIN    17  // or SS

Configure WiFi in the source code. you can also use the SmartConfig smartphone application to do this.

1
2
#define WIFI_SSID "SSID" // your WiFi's SSID
#define WIFI_PASS "PASS" // your WiFi's password

Mount the microcontroller to the outside of the enclosure. Of course, you can use any other microcontroller.

For the clock file, download it from the project file repository.

https://make.quwj.com/project/458

Finish

With the display unit in place and inserted into the acrylic board, the entire project is complete.