DIY Arduino LED Matrix Display - 80x8 Px




In this instructables guide I will show you how to make your own Arduino LED Matrix display!

Main Features:

  • Time
  • Day of the week
  • Date
  • Temperature and Humidity
  • Ticker Text
  • Adjustable brightness level
  • Bluetooth communication

Can be controlled from your Android phone or Windows computer!

Watch it in action:

Official project page and future updates can be found here:

Let's get started!!!

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: What You Will Need - Hardware

For this project you will need:

For the case-box you will need:

Use black - transparent plexiglass, 3mm thickness:

  • 2pcs 33x4 cm
  • 2pcs 33x6 cm
  • 2pcs 6.6x4.6 cm (left and right)

Optional, if you have a 3d printer you can print the left and right side (attached .stl files).

Step 2: The Circuit


8x8 MAX7219 LED Matrix Display module:

  • Vcc - 5VGND - GND
  • DIN -From the last one to Arduino pin 10
  • CLK - Arduino Pin 13
  • CS - Arduino Pin 11
  • DOUT - to previous DIN as the schematic


  • Vcc - 5V
  • Data - Arduino pin 9
  • ---
  • GND - GND


  • Vcc - 5V
  • GND - GND
  • RX - Arduino Pin 3
  • TX - Arduino Pin 4

RTC DS1307 Module

  • Vcc - 5V
  • SDA - Arduino pin A4
  • SCL - Arduino pin A5


  • As the schematic, to Arduino pin A0

Step 3: The Code

Download the code from here and open it with Arduino IDE. Inside you will also find all necessary libraries.

Step 4: Software and Configuration Protocol

From here you can download the software for windows os.

The application for Android devices will be soon available.

If you want you can make your own application, or make an app for a different operation system.

Bellow you will find the protocol that we are using.

Configuration protocol:

For time and date send: HH:MM:SS dd/mm/yyyy>

For ticker text send: Your Text Here>

For brightness level send: Auto> or value> (value from 1 to 16)

Step 5: Android Application

Download it from Android PlayStore

Features of current version:
-Update time and date with your device clock

-Update brightness level

-16 available levels (set to 0 for automatic adjustment)

-Change the ticker (scrolling) text (set to blank to deactivate it)

How to use it:

Turn on Bluetooth and pair your display. The default name of the Bluetooth module is "HC-06" or "HC-05" and usually the password is "1234". Now open the application, press the "Load Paired Devices" button and select your BT module. (see also the video)

Note: If you can't establish a connection with your LED Matrix Display, just restart it.

If you have any problem with this application just send me an email.

For android ver. >4.4, screen size >4.5"

Step 6: Well Done!

That's it!

I hope you liked this, let me know in the comments!

I would also like to see some photos with your new Arduino LED Matrix display!

Microcontroller Contest 2017

Participated in the
Microcontroller Contest 2017

5 People Made This Project!


  • Made with Math Contest

    Made with Math Contest
  • Multi-Discipline Contest

    Multi-Discipline Contest
  • Robotics Contest

    Robotics Contest

18 Discussions


2 months ago

If I made an 8 x 12 led matrix by hand, would this software work?

1 reply
Christian 63

Question 8 months ago on Step 4

Bonjour et il est possible de rajouter une sonde extérieure au montage quel sont les modifications merci


Question 1 year ago

Mi correo para que me envíen la información de como hacerlo
K j e j 2 0 2 5 @ y a h o o . Com


Question 1 year ago

Alguien tiene el diagrama de como hacerlo con cinta leden vez de módulos les


Question 1 year ago on Step 2

Se puede hacer con cinta Led en vez de modelo led


Question 1 year ago

Hi Michalis, could you possible know this error? All the matrix are turned on and nothing happens. Any idea? I have tried to upload code on pro mini, nano and it is allways the same. Followed you circuit as you described. How is that here the bluetooth modul has the same voltage 5V. When I watched others how they use bluetooth module they allways use voltage drop to 3V? Thanks and keep the good work.


1 year ago

Great project! Could you send me "code of software for windows os." in this project? I'd like to develope for my owner project in next time. My email:


Question 1 year ago on Step 4


Super le projet avec Bluetooth ! a distance pour changer le Texte Etc. Pour moi je serais intéresser de l’amélioré

Es possible d'avoir ? Le Fichier aia pour modification à mon goue le APK sur Mit Inventor 2

Merci d'avance !

Bien Cordialement


2 years ago

if i choose to make use of 7 x max7219 led modules instead of 10 does anything changes electrical wise (power source should be of less Amperage? and does it effect the coding too ?)


2 years ago

Good morning I have placed 3 amp source, I have soldered directly to wires to interconnecting pins of matrixes and the failure continues to me some matrices is as if they were left without communication, what can be?


2 years ago

Good afternoon I do the project But I had a problem is that when I sent the program IN SOME occasions I'm turned off Some of the matrices is as if I stopped communicating between them and I have to resend the program, sometimes they leave How to unconfigure the letters in the arrays What could be what causes this thank you.

3 replies

Reply 2 years ago

Hi! I just upload an updated code, also check your power supply, I am using 5V-3A.


Reply 2 years ago

Hello how are you where can i find the code updated thanks?


2 years ago

I want to help but I can't understand you. Could you please send me your message in English? Thank you.

1 reply

Reply 2 years ago

Good afternoon, the project but I have presented a problem is that when I sent the program to the Arduino card occasionally I turned off some of the matrices is as if I stopped communicating between them and I have to resend the program sometimes The letters in the arrays appear as unconfigured that could be what causes this thanks.


2 years ago

Hola , a mi me ha pasado en ocasiones y suele ser una mala conexion entre los modulos , revisa bien las conexiones o las puedes soldar (vcc gnd data cs clk )