Introduction: Led Matrix Arduino Clock

This a week-end project.

Six 8x8 led matrix, Arduino nano and Real Time Clock.

It just gives time. No fancy alarm or display mode even though I wanted to do so in the begining.

The RTC clock is very precise so I don't need buttons to adjust time. Twice a year, just need to reupload the program to adjust time with DST.


Video available here :

Step 1: Hardware

6 led matrix with integrated MAX7219

Arduino Nano (chinese version on ebay)

LM7805 circuit to make a 5V power distribution for leds, Arduino and RTC

Real Time Clock RTC DS3231 (this model is very efficient, I have only a few second drift in 6 months.

The setup is very simple.

The Arduino is connected to the RTC through I2C (ports A4, A5 on Arduino).

The matrix are daisy-chained, so it only require 3 wires (D10, D11 and D12).

A LM7805 gets between 7,5 V to 12 v on one side and delivers 5 V on the other.

Everything is soldered on a board. A few wires on the back and we have a clean setup.

I also added a 1N4007 led to prevent polarity inversion.

Step 2: Software

The program is quite simple.

I made custom fonts in 6x9 size.

The main loop reads time in the RTC and triggers the animation for every digit if it changed.

The tircky part is to convert the 6 independent 8x8 matrix into a single 16x24 matrix adressable through xy coordinates.

I used the ledcontrol.h library to help me in this process.

The code :

Step 3: The Box

Made of pine wood (22mm x 40 mm), the housing is basic.

Tainted with red wax, the finish is simple but clean.

The bottom is plywood of 2mm. All the electronic is fixed on the back plane.