Display individual characters on the Matrix display

How to use the AZ-Delivery of 4 x 64 LED Matrix Display on our Nano V3 into operation, in our free eBook step by step explains.

What, however, if you want to show not only Text, but a small graphic. As long as the graphic does not exceed a width of 8 pixels, the Library MD_Parola the possibility of this as a "custom char" process.

In today's example, we take the AZ-Delivery Logo as a base, but you can be Creative, and graphic design. The height is 8 pixels limited, but we circumvent this limitation.

I use a table calculation to the Logo, as the included Font Builder creates only up to 8 Pixel wide characters.

You can download my template from the Dropbox Link.

Download template

After opening a table will be displayed in our Logo enter can by in the rows 1 to 8 the corresponding value for the Pixel from 0 to 1 change:




I'm trying the AZ-Delivery of Logo to make. You can enter your own Logos, graphics, or symbols.

After a little poking around to see my result as follows:



In line 9 is displayed for each column of the corresponding binary code, for each column, from the bottom of the box to the top. So we can use this in the MD_MAX72XX library, we need the number of columns for the total, followed by a comma, followed by the individual values in the Hexadecimal Format.

This is cell A12 is responsible. This counts the number of columns for the selected area (in my case, A to BB), adds a comma, and hex values, each followed by a comma.

If we now cell A12 to select, copy, and somewhere in the insert, the following message appears:

54,0x1E,0x9,0x9,0x9,0x1F,0x88,0xC8,0xA8,0x98,0x88,0x0,0x8,0x8, [...] ,0x7C

, This complete line, we must now only in the MD_MAX27XX library.
If you are the example in our eBook followed, the corresponding file in the folder Dokumente\Arduino\libraries\MD_MAX72XX\src\MD_MAX72xx_font.cpp

To edit this file, I recommend using a Text-Editor such as Notepad++, as it is in normal Notepad is very confusing is.

From line 168 of the character set used is defined. We are looking for a character to be replaced by our Logo. I guess the semicolon ";"

For this, we comment on the existing line 227 of / to/ from, and add to our line.


Now save the file, and we are done.

For testing we connect our Arduino, open the example code from file → examples → MD_Parola → Parola_Scrolling, and replace the Text "Hello! Enter new message?" by our desired text. The semicolon character is replaced by our new Logo. So I write "; - your expert for micro-electronics",


The code now only on the Arduino to upload, Display & Arduino, for example in a PC to install via USB connect to the PC, and already has to an individual, via the Software customizable PC-Front self-made.



If you want to send text over the Serial interface to the Display, and the show Logo, to use just the character used – so in our case, the semicolon ";".

By adjusting the file MD_MAX72xx_font.cpp you can now insert any of the icons and small graphics, and then like normal characters use.

We hope that you find our today's blog post with the 4 x 64 LED Matrix Displayand the Nano V3has, and we look forward to your comments. Until the next post AZ-Delivery, your experts for micro-electronics!

For arduinoProjects for beginners




You probably have the cell width set to a size that will not show the contents of that cell, just make the width wider by grabbing the cell edge and stretching it.



Hallo, die Tabelle lässt sich mit excel NICHT öffnen. Hätten Sie evtl. auch davon eine Version die mit excel kompatibel ist?
Danke sehr.



If the word “textjoin” is not automatically changed to capital letters it means Libreoffice calc didn’t recognize it as a function.

There where issues with that function but they have been fixed.

“TEXTJOIN ) are implemented in LibreOffice since Version 5.2. There were issues, but since V5.3.3. the function is actually usable.”

Could you please check if you have installed V5.3.3 or newer?




I use it in French and the cell reads: =COLONNES&“,0x”&textjoin(“,0x”, 1, A11:BB11)

Is that expected?



Hello Zala,

the code below worked for me:

What Language of LibreOffice do you have installed?

I noticed that in the German version the correct content vor A12 is:


I hope this helps.



Good evening,

Thanks a lot for this article! I have a problem: I use Libre Office 5 on Debian Linux 7 and the A12 cell keeps reading ‘##’. What am I doing wrong, please?

Best regards,


Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. Install ESP32 now from the board manager
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP programming via WLAN