LED matrix display - MD_Parola, MD_MAX72xx and MD_MAXPanel

Hi Marco,
First, Thanks for a great project. I used the ICStation 8x8 MAX7219 Red LED Light Lamp Display Dot Matrix Module Panel DIY Kits to make a display. They are good because the PCB is exactly the same size as the led matrix. I used the "upside down" version of the font in MD_MAX72xx_font.cpp to get the text shown properly.
Regards,
Hamilton

in the beganing i faced some problem but now every thing is ok except one.
How i can display text in Arabic language ?

Displaying any text requires a font in that language. You can change the font to a different language by modifying the font file in the MD_MAX72xx library. Read the library documentation as it has a small section on the font format. If you do create an arabic font, send me the font file and I can include it in the next version of the software.

Marco you are great man.
Is there a software to help me to create arabic font?

No, you will need to code the font manually at this stage.

My dear
i tried too much time but not succeeded
however
the folowing is arabic font code 8*8:

0x00,0x04,0x06,0x1D,0x25,0x24,0x20,0x20, //129/ --> ?
0x20,0x20,0x20,0x20,0xA0,0x20,0x28,0x30, //130/ --> ‚
0x00,0x30,0x28,0x20,0xA0,0x20,0x30,0x20, //132/ --> „
0x20,0x20,0x20,0x22,0x20,0x22,0x28,0x30, //133/ --> …
0x20,0x20,0x20,0x22,0x21,0x22,0x28,0x30, //136/ --> ˆ
0x20,0x20,0x20,0x22,0x31,0x22,0x20,0x20, //137/ --> ‰
0x00,0x30,0x28,0x22,0x21,0x22,0x30,0x20, //138/ --> ?
0x20,0x20,0x28,0x28,0x28,0xB0,0x20,0x20, //139/ --> ‹
0x20,0x20,0x28,0x2A,0x28,0x30,0x20,0x20, //141/ --> ?
0x00,0x24,0x24,0x24,0x38,0x20,0x20,0x20, //142/ --> ?
0x00,0x24,0x25,0x24,0x38,0x20,0x20,0x20, //143/ --> ?
0x00,0x80,0x80,0x40,0x30,0x20,0x20,0x20, //144/ --> ?
0x00,0x80,0x80,0x40,0x34,0x20,0x20,0x20, //145/ --> ‘
0x20,0x20,0x20,0x38,0x20,0x38,0x20,0x18, //146/ --> ’
0x20,0x20,0x38,0x20,0x38,0x20,0x38,0x20, //147/ --> “
0x60,0x80,0x80,0x78,0x20,0x38,0x20,0x18, //148/ --> ”
0x20,0x20,0x20,0x38,0x22,0x39,0x22,0x18, //149/ --> •
0x20,0x20,0x38,0x22,0x39,0x22,0x38,0x20, //150/ --> –
0x60,0x80,0x80,0x78,0x22,0x39,0x22,0x18, //151/ --> —
0x20,0x20,0x30,0x20,0x30,0x28,0x28,0x18, //152/ --> ?
0x60,0x80,0x80,0x60,0x30,0x28,0x28,0x38, //154/ --> ?
0x20,0x20,0x30,0x20,0x30,0x28,0x2A,0x18, //155/ --> ›
0x60,0x80,0x80,0x60,0x30,0x28,0x2A,0x38, //157/ --> ?
0x20,0x20,0x3E,0x30,0x28,0x28,0x38,0x20, //158/ --> ?
0x20,0x20,0x3E,0x30,0x28,0x2A,0x38,0x20, //159/ --> ?
0x20,0x20,0x20,0x20,0x30,0x28,0x28,0x00, //160/ -->  
0x20,0x20,0x20,0x30,0x28,0x28,0x20,0x20, //161/ --> ?
0x20,0x20,0x20,0x20,0x30,0x28,0x2A,0x30, //166/ --> ¦
0x20,0x20,0x30,0x2A,0x28,0x32,0x20,0x20, //170/ --> ?
0x60,0x80,0x80,0xB2,0xA8,0x7A,0x20,0x20, //171/ --> «
0x22,0x25,0x25,0x25,0x25,0x25,0x25,0x19, //172/ --> ¬
0x20,0x20,0x20,0x1C,0x22,0x21,0x20,0x20, //173/ --> ­
0x20,0x20,0x20,0x20,0x20,0x20,0x1F,0x00, //175/ --> 
0x20,0x20,0x20,0x20,0x1F,0x20,0x20,0x20, //176/ --> °
0x00,0x30,0x40,0x40,0x3F,0x20,0x20,0x20, //177/ --> ±
0x20,0x20,0x20,0x20,0x30,0x48,0x48,0x30, //178/ --> ²
0x20,0x20,0x30,0x48,0x48,0x30,0x20,0x20, //179/ --> ³
0x80,0x40,0x30,0x48,0x48,0x30,0x20,0x20, //180/ --> ´
0x20,0x20,0x20,0x20,0x22,0x20,0x18,0x00, //181/ --> µ
0x20,0x20,0x20,0x20,0x1A,0x20,0x20,0x20, //182/ --> ¶
0x30,0x40,0x44,0x40,0x30,0x20,0x20,0x20, //183/ --> ·
0x20,0x20,0x20,0x30,0x28,0x3A,0x2C,0x18, //184/ --> ¸
0x20,0x20,0x30,0x28,0x3A,0x2C,0x38,0x20, //185/ --> ¹
0x00,0x18,0x14,0x14,0x18,0x20,0x20,0x20, //186/ --> ?
0x00,0x21,0x22,0x24,0x28,0x10,0x0F,0x00, //187/ --> »
0x00,0xB0,0xA8,0x78,0x20,0x20,0x20,0x20, //188/ --> ¼
0x20,0x20,0x20,0xA0,0x20,0xA0,0x28,0x30, //189/ --> ½
0x20,0x20,0x20,0xA0,0x30,0xA0,0x20,0x20, //190/ --> ¾
0x00,0x60,0x80,0x80,0xA0,0x50,0x10,0x20, //191/ --> ?
0x00,0x1E,0x20,0x20,0x20,0x20,0x20,0x20, //192/ --> ?
0x00,0x20,0x30,0x28,0x28,0x20,0x00,0x00, //193/ --> ?
0x00,0x04,0x02,0x02,0x3A,0x02,0x02,0x01, //194/ --> ?
0x00,0x00,0x04,0x06,0x3D,0x05,0x04,0x00, //195/ --> ?
0x00,0x00,0x04,0xB6,0xAD,0x7D,0x04,0x00, //196/ --> ?
0x00,0x00,0x80,0xC0,0xBF,0xA0,0x80,0x00, //197/ --> ?
0x04,0x66,0x85,0x95,0xA8,0xA8,0x48,0x00, //198/ --> ?
0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00, //199/ --> ?
0x00,0x30,0x28,0x20,0xA0,0x20,0x28,0x30, //200/ --> ?
0x00,0x00,0x30,0x2A,0x28,0x32,0x00,0x00, //201/ --> ?
0x00,0x30,0x28,0x22,0x20,0x22,0x28,0x30, //202/ --> ?
0x00,0x30,0x28,0x22,0x21,0x22,0x28,0x30, //203/ --> ?
0x00,0xC0,0xA8,0xA8,0x28,0xB0,0x20,0x20, //204/ --> ?
0x00,0xC0,0xA8,0xA8,0xA8,0x30,0x20,0x20, //205/ --> ?
0x00,0xC0,0xA8,0xAA,0x28,0x30,0x20,0x20, //206/ --> ?
0x00,0x00,0x24,0x24,0x24,0x38,0x00,0x00, //207/ --> ?
0x00,0x00,0x24,0x25,0x24,0x38,0x00,0x00, //208/ --> ?
0x00,0x80,0x80,0x40,0x30,0x00,0x00,0x00, //209/ --> ?
0x00,0x00,0x80,0x80,0x40,0x34,0x00,0x00, //210/ --> ?
0x60,0x80,0x80,0x78,0x20,0x38,0x20,0x18, //211/ --> ?
0x60,0x80,0x80,0x78,0x22,0x39,0x22,0x18, //212/ --> ?
0x60,0x80,0x80,0x60,0x30,0x28,0x28,0x18, //213/ --> ?
0x60,0x80,0x80,0x60,0x30,0x28,0x2A,0x18, //214/ --> ?
0x00,0x22,0x14,0x08,0x14,0x22,0x00,0x00, //215/ --> ×
0x20,0x20,0x3E,0x30,0x28,0x28,0x18,0x00, //216/ --> ?
0x20,0x20,0x3E,0x30,0x28,0x2A,0x18,0x00, //217/ --> ?
0x00,0x00,0x40,0xA0,0xB0,0x28,0x28,0x00, //218/ --> ?
0x00,0x00,0x40,0xA0,0xB0,0x2A,0x28,0x00, //219/ --> ?
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, //220/ --> ?
0x00,0x18,0x20,0x20,0x30,0x28,0x2A,0x30, //221/ --> ?
0x00,0x60,0x80,0x80,0xB2,0xA8,0x7A,0x00, //222/ --> ?
0x00,0x30,0x28,0x2C,0x2A,0x20,0x3F,0x00, //223/ --> ?
0x00,0x40,0xA9,0xAA,0xA8,0xF0,0x00,0x00, //224/ --> à
0x00,0x00,0x60,0x80,0x80,0x7E,0x00,0x00, //225/ --> ?
0x00,0x40,0xAA,0xA9,0xAA,0xF0,0x00,0x00, //226/ --> â
0x00,0x00,0xC0,0x20,0x30,0x28,0x28,0x30, //227/ --> ?
0x00,0x00,0x60,0x80,0x88,0x80,0x60,0x00, //228/ --> ?
0x00,0x00,0x30,0x28,0x28,0x30,0x00,0x00, //229/ --> ?
0x00,0x00,0x00,0xB0,0xA8,0x78,0x00,0x00, //230/ --> ?
0x00,0x30,0x40,0x40,0x50,0x28,0x08,0x00, //236/ --> ?
0x00,0x30,0xC0,0x40,0xD0,0x28,0x08,0x00, //237/ --> ?
0x00,0x00,0x02,0x79,0x02,0x00,0x00,0x00, //238/ --> î
0x00,0x00,0x02,0x78,0x02,0x00,0x00,0x00, //239/ --> ï
0x00,0x00,0x00,0x00,0x00,0x05,0x05,0x05, //240/ --> ?
0x00,0x00,0x00,0x04,0x03,0x0B,0x06,0x06, //241/ --> ?
0xA0,0xA0,0xA0,0x00,0x00,0x00,0x00,0x00, //242/ --> ?
0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00, //243/ --> ?
0x00,0x40,0x60,0x50,0x48,0x50,0x40,0x40 //255/ --> ?

I have developed a pretty 'quick and dirty' font editor, as there seems to have been a number of questions around this aspect of the Parola software (file attached).

It is an Excel VBA program that pops up a form for editing each character (press the button next to each Id in the "Work Sheet" tab). Not fully completed yet but it does make the whole font editing/creation thing a lot easier. Happy for any feedback on bugs and/or functionality at this stage (bugs get fixed, functionality may wait).

The idea with this is that it creates the code to populate the font array via a simple cut and paste and the end of an editing session. The font data can be left in the excel workbook and copied to another sheet for future reference (as is the case for the standard font at the moment).

@alhootti - can you please check the arabic characters - I actually can't tell if they are correct. If there are errors in the import, can you please correct and send it back to me via PM. Arabic characters are in the Work sheet font at ASCII 129 onwards.

Anyone else who has created symbols/fonts, please let me know. This tool and any contributions will be in the next release.

Parola MD_MAX72xx Font Builder v1.xlsm (400 KB)

Hi Marco.
I just saw your font editor. Hey do you ever sleep XD I could not find anything on the Instructions tab. Thanks for another string for the Parola bow.

Hi Pedro - Instructions to come. As usual the documentation plays catchup.

Red area - no editing allowed. Green area - user changeable. Orange area - output for code arrays.

Thanks Marco.
I just thought that I would let you know in case there was a problem

Thank you Marco.
I will do .
Actionally, now im out of my town when i go back to my town i will keep you posted.

Just updated the font builder file in previous post. Should be finished now - including Instructions :slight_smile:

The file currently has Katakana (Japanese), Arabic to be checked, standard font and a bunch of symbols. I am looking for a good source for a greek alphabet in dot form - any ideas?

Marco I have some Questions:
when i cut and paste code it show like this:

uint8_t  _fontname[] PROGMEM = { 
"0,		// 0 - Empty Cell"
"5, 62, 91, 79, 91, 62,		// 1 - Sad Smiley"
"5, 62, 107, 79, 107, 62,		// 2 - Happy Smiley"
"5, 28, 62, 124, 62, 28,		// 3 - Heart"
"5, 24, 60, 126, 60, 24,		// 4 - Diamond"
"5, 28, 87, 125, 87, 28,		// 5 - Clubs"
"5, 28, 94, 127, 94, 28,		// 6 - Spades"
"4, 0, 24, 60, 24,		// 7 - Bullet Point"
"5, 255, 231, 195, 231, 255,		// 8 - Rev Bullet Point"
"4, 0, 24, 36, 24,		// 9 - Hollow Bullet Point"
"5, 255, 231, 219, 231, 255,		// 10 - Rev Hollow BP"
"5, 48, 72, 58, 6, 14,		// 11 - Male"
"5, 38, 41, 121, 41, 38,		// 12 - Female"
"5, 64, 127, 5, 5, 7,		// 13 - Music Note 1"
"5, 64, 127, 5, 37, 63,		// 14 - Music Note 2"
"5, 90, 60, 231, 60, 90,		// 15 - Snowflake"
"5, 127, 62, 28, 28, 8,		// 16 - Right Pointer"
"5, 8, 28, 28, 62, 127,		// 17 - Left Pointer"
"5, 20, 34, 127, 34, 20,		// 18 - UpDown Arrows"
"5, 95, 95, 0, 95, 95,		// 19 - Double Exclamation"
"5, 6, 9, 127, 1, 127,		// 20 - Paragraph Mark"
"4, 102, 137, 149, 106,		// 21 - Section Mark"
"5, 96, 96, 96, 96, 96,		// 22 - Double Underline"
"5, 148, 162, 255, 162, 148,		// 23 - UpDown Underlined"
"5, 8, 4, 126, 4, 8,		// 24 - Up Arrow"
"5, 16, 32, 126, 32, 16,		// 25 - Down Arrow"
"5, 8, 8, 42, 28, 8,		// 26 - Right Arrow"
"5, 8, 28, 42, 8, 8,		// 27 - Left Arrow"
"5, 30, 16, 16, 16, 16,		// 28 - Angled"
"5, 12, 30, 12, 30, 12,		// 29 - Squashed #"
"5, 48, 56, 62, 56, 48,		// 30 - Up Pointer"
"5, 6, 14, 62, 14, 6,		// 31 - Down Pointer"
"2, 0, 0,		// 32 - Space"
"1, 95,		// 33 - !"
"3, 7, 0, 7,		// 34 - """
"5, 20, 127, 20, 127, 20,		// 35 - #"
"5, 36, 42, 127, 42, 18,		// 36 - $"
"5, 35, 19, 8, 100, 98,		// 37 - %"
"5, 54, 73, 86, 32, 80,		// 38 - &"
"3, 8, 7, 3,		// 39 - '"
"3, 28, 34, 65,		// 40 - ("
"3, 65, 34, 28,		// 41 - )"
"5, 42, 28, 127, 28, 42,		// 42 - *"
"5, 8, 8, 62, 8, 8,		// 43 - +"
"3, 128, 112, 48,		// 44 - ,"
"5, 8, 8, 8, 8, 8,		// 45 - -"
"2, 96, 96,		// 46 - ."
"5, 32, 16, 8, 4, 2,		// 47 - /"
"5, 62, 81, 73, 69, 62,		// 48 - 0"
"3, 66, 127, 64,		// 49 - 1"
"5, 114, 73, 73, 73, 70,		// 50 - 2"
"5, 33, 65, 73, 77, 51,		// 51 - 3"
"5, 24, 20, 18, 127, 16,		// 52 - 4"
"5, 39, 69, 69, 69, 57,		// 53 - 5"
"5, 60, 74, 73, 73, 49,		// 54 - 6"
"5, 65, 33, 17, 9, 7,		// 55 - 7"
"5, 54, 73, 73, 73, 54,		// 56 - 8"
"5, 70, 73, 73, 41, 30,		// 57 - 9"
"1, 20,		// 58 - :"
"2, 128, 104,		// 59 - ;"
"4, 8, 20, 34, 65,		// 60 - <"
"5, 20, 20, 20, 20, 20,		// 61 - ="
"4, 65, 34, 20, 8,		// 62 - >"
"5, 2, 1, 89, 9, 6,		// 63 - ?"
"8, 32, 32, 32, 32, 160, 32, 40, 48,		// 130 - ?"
"8, 0, 48, 40, 32, 160, 32, 48, 32,		// 131"
"8, 32, 32, 34, 32, 34, 32, 40, 48,		// 132 - ?"
"8, 32, 32, 32, 34, 33, 34, 40, 48,		// 133 - ?"
"8, 32, 32, 32, 34, 49, 34, 32, 32,		// 134 - ???"
"8, 0, 48, 40, 34, 33, 34, 48, 32,		// 135 - ??"
"8, 32, 32, 40, 40, 40, 176, 32, 32,		// 136 - ??"
"8, 32, 32, 40, 42, 40, 48, 32, 32,		// 137 - ??"
"8, 0, 36, 36, 36, 56, 32, 32, 32,		// 138 - ??"
"8, 0, 36, 37, 36, 56, 32, 32, 32,		// 139 - ??"
"8, 0, 128, 128, 64, 48, 32, 32, 32,		// 140 - ??"
"8, 0, 128, 128, 64, 52, 32, 32, 32,		// 141 - ??"
"8, 32, 32, 32, 56, 32, 56, 32, 24,		// 142 - ??"
"8, 32, 32, 56, 32, 56, 32, 56, 32,		// 143 - ???"
"8, 96, 128, 128, 120, 32, 56, 32, 24,		// 144 - ?"
"8, 32, 32, 32, 56, 34, 57, 34, 24,		// 145 - ??"
"8, 32, 32, 56, 34, 57, 34, 56, 32,		// 146 - ???"
"8, 96, 128, 128, 120, 34, 57, 34, 24,		// 147 - ?"
"8, 32, 32, 48, 32, 48, 40, 40, 24,		// 148 - ??"
"8, 96, 128, 128, 96, 48, 40, 40, 56,		// 149 - ?"
"8, 32, 32, 48, 32, 48, 40, 42, 24,		// 150 - ??"
"8, 96, 128, 128, 96, 48, 40, 42, 56,		// 151 - ?"
"8, 32, 32, 62, 48, 40, 40, 56, 32,		// 152 - ??"
"8, 32, 32, 62, 48, 40, 42, 56, 32,		// 153 - ??"
"7, 32, 32, 32, 32, 48, 40, 40,		// 154 - ??"
"8, 32, 32, 40, 36, 52, 44, 32, 32,		// 155 - ???"
"8, 32, 32, 32, 32, 48, 40, 42, 48,		// 156 - ??"
"8, 32, 32, 48, 42, 40, 50, 32, 32,		// 157 - ???"
"8, 96, 128, 128, 178, 168, 122, 32, 32,		// 158 - ??"
"8, 0, 40, 44, 42, 42, 32, 32, 31,		// 159 - ?"
"8, 32, 32, 32, 28, 34, 33, 33, 33,		// 160 - ??"
"7, 32, 32, 32, 32, 32, 32, 31,		// 161 - ??"
"8, 32, 32, 32, 32, 31, 32, 32, 32,		// 162 - ???"
"8, 0, 48, 64, 64, 63, 32, 32, 32,		// 163"
"8, 32, 32, 32, 32, 48, 72, 72, 48,		// 164"
"8, 32, 32, 48, 72, 72, 48, 32, 32,		// 165"
"8, 128, 64, 48, 72, 72, 48, 32, 32,		// 166"
"7, 32, 32, 32, 32, 34, 32, 24,		// 167"
"8, 32, 32, 32, 32, 26, 32, 32, 32,		// 168"
"8, 48, 64, 68, 64, 48, 32, 32, 32,		// 169"
"8, 32, 32, 32, 48, 40, 58, 44, 24,		// 170"
"8, 32, 32, 48, 40, 58, 44, 56, 32,		// 171"
"8, 0, 24, 20, 20, 24, 32, 32, 32,		// 172"
"7, 0, 33, 34, 36, 40, 16, 15,		// 173"
"8, 0, 176, 168, 120, 32, 32, 32, 32,		// 174"
"8, 32, 32, 32, 160, 32, 160, 40, 48,		// 175"
"8, 32, 32, 32, 160, 48, 160, 32, 32,		// 176"
"8, 0, 96, 128, 128, 160, 80, 16, 32,		// 177"
"8, 0, 30, 32, 32, 32, 32, 32, 32,		// 178"
"6, 0, 32, 48, 40, 40, 32,		// 179"
"8, 0, 4, 2, 2, 58, 2, 2, 1,		// 180"
"7, 0, 0, 4, 6, 61, 5, 4,		// 181"
"7, 0, 0, 4, 182, 173, 125, 4,		// 182"
"7, 0, 0, 128, 192, 191, 160, 128,		// 183"
"7, 4, 102, 133, 149, 168, 168, 72,		// 184"
"4, 0, 0, 0, 63,		// 185"
"8, 0, 48, 40, 32, 160, 32, 40, 48,		// 186"
"6, 0, 0, 48, 42, 40, 50,		// 187"
"8, 0, 48, 40, 34, 32, 34, 40, 48,		// 188"
"8, 0, 48, 40, 34, 33, 34, 40, 48,		// 189"
"8, 0, 192, 168, 168, 40, 176, 32, 32,		// 190"
"8, 0, 192, 168, 168, 168, 48, 32, 32,		// 191"
"8, 0, 192, 168, 170, 40, 48, 32, 32,		// 192"
"6, 0, 0, 36, 36, 36, 56,		// 193"
"6, 0, 0, 36, 37, 36, 56,		// 194"
"5, 0, 128, 128, 64, 48,		// 195"
"6, 0, 0, 128, 128, 64, 52,		// 196"
"8, 96, 128, 128, 120, 32, 56, 32, 24,		// 197"
"8, 96, 128, 128, 120, 34, 57, 34, 24,		// 198"
"8, 96, 128, 128, 96, 48, 40, 40, 24,		// 199"
"8, 96, 128, 128, 96, 48, 40, 42, 24,		// 200"
"6, 0, 34, 20, 8, 20, 34,		// 201"
"7, 32, 32, 62, 48, 40, 40, 24,		// 202"
"7, 32, 32, 62, 48, 40, 42, 24,		// 203"
"7, 0, 0, 64, 160, 176, 40, 40,		// 204"
"7, 0, 0, 64, 160, 176, 42, 40,		// 205"
"8, 32, 32, 32, 32, 32, 32, 32, 32,		// 206"
"8, 0, 24, 32, 32, 48, 40, 42, 48,		// 207"
"7, 0, 96, 128, 128, 178, 168, 122,		// 208"
"7, 0, 48, 40, 44, 42, 32, 63,		// 209"
"6, 0, 64, 169, 170, 168, 240,		// 210"
"6, 0, 0, 96, 128, 128, 126,		// 211"
"6, 0, 64, 170, 169, 170, 240,		// 212"
"8, 0, 0, 192, 32, 48, 40, 40, 48,		// 213"
"7, 0, 0, 96, 128, 136, 128, 96,		// 214"
"6, 0, 0, 48, 40, 40, 48,		// 215"
"6, 0, 0, 0, 176, 168, 120,		// 216"
"7, 0, 48, 64, 64, 80, 40, 8,		// 217"
"7, 0, 48, 192, 64, 208, 40, 8,		// 218"
"5, 0, 0, 2, 121, 2,		// 219"
"5, 0, 0, 2, 120, 2,		// 220"
"8, 0, 0, 0, 0, 0, 5, 5, 5,		// 221"
"8, 0, 0, 0, 4, 3, 11, 6, 6,		// 222"
"3, 160, 160, 160,		// 223"
"6, 0, 0, 1, 1, 1, 1,		// 224 - Beta"
"8, 0, 64, 96, 80, 72, 80, 64, 64,		// 225 - Gamma"
"5, 2, 126, 2, 126, 2,		// 226 - Pi"
"5, 99, 85, 73, 65, 99,		// 227 - Sigma"
"5, 56, 68, 68, 60, 4,		// 228 - Theta"
"5, 64, 126, 32, 30, 32,		// 229 - mu"
"5, 6, 2, 126, 2, 2,		// 230 - Tau"
"5, 153, 165, 231, 165, 153,		// 231"
"5, 28, 42, 73, 42, 28,		// 232"
"5, 76, 114, 1, 114, 76,		// 233"
"5, 48, 74, 77, 77, 48,		// 234"
"5, 48, 72, 120, 72, 48,		// 235"
"5, 188, 98, 90, 70, 61,		// 236 - Zero Slashed"
"4, 62, 73, 73, 73,		// 237"
"5, 126, 1, 1, 1, 126,		// 238"
"5, 42, 42, 42, 42, 42,		// 239 - 3 Bar Equals"
"5, 68, 68, 95, 68, 68,		// 240 - +/-"
"5, 64, 81, 74, 68, 64,		// 241 - >="
"5, 64, 68, 74, 81, 64,		// 242 - <="
"5, 0, 0, 255, 1, 3,		// 243 - Top of Integral"
"3, 224, 128, 255,		// 244 - Bot of Integral"
"5, 8, 8, 107, 107, 8,		// 245 - Divide"
"5, 54, 18, 54, 36, 54,		// 246 - Wavy ="
"5, 6, 15, 9, 15, 6,		// 247 - Degree"
"4, 0, 0, 24, 24,		// 248 - Math Product"
"4, 0, 0, 16, 16,		// 249 - Short Dash"
"5, 48, 64, 255, 1, 1,		// 250 - Square Root"
"5, 0, 31, 1, 1, 30,		// 251 - Superscript n"
"5, 0, 25, 29, 23, 18,		// 252 - Superscript 2"
"5, 0, 60, 60, 60, 60,		// 253 - Centered Square"
"5, 255, 129, 129, 129, 255,		// 254 - Full Frame"
"5, 255, 255, 255, 255, 255,		// 255 - Full Block"
};
  1. where can i paste the code do you mean this file (MD_MAX72xx_font.cpp)
    Please explain more
    Sorry for disturbing

You need to edit out the " marks at the start and end of each line. I am working on whether I can export from excel without these.

You have the right file name and just need to replace the data contained in the font definition with this new one. You will not need the array PROGMEM statement at the top as this will already be in the file.

My Dear Marco i follow your instruction

uint8_t _sysfont_var[] PROGMEM = 
{
5, 124, 18, 17, 18, 124,		// 65 - A
5, 127, 73, 73, 73, 54,		// 66 - B
5, 62, 65, 65, 65, 34,		// 67 - C
5, 127, 65, 65, 65, 62,		// 68 - D
5, 127, 73, 73, 73, 65,		// 69 - E
5, 127, 9, 9, 9, 1,		// 70 - F
5, 62, 65, 65, 81, 115,		// 71 - G
5, 127, 8, 8, 8, 127,		// 72 - H
3, 65, 127, 65,		// 73 - I
};

I wrote down" AB" "CD" in english lunguage just for testing in led matrix but on other word shown in led matrix like number 89 .

uint8_t _sysfont_var[] PROGMEM = 
{
5, 124, 18, 17, 18, 124,		// 65 - A
5, 127, 73, 73, 73, 54,		// 66 - B
5, 62, 65, 65, 65, 34,		// 67 - C
5, 127, 65, 65, 65, 62,		// 68 - D
5, 127, 73, 73, 73, 65,		// 69 - E
5, 127, 9, 9, 9, 1,		// 70 - F
5, 62, 65, 65, 81, 115,		// 71 - G
5, 127, 8, 8, 8, 127,		// 72 - H
3, 65, 127, 65,		// 73 - I
};

In your previous post you had the whole ASCII set (all 255 characters). Please confirm that you have copied all of them to the font file, as your next post only shown the letters for A-I (code just above here). As it is shown it will definitely not work because (a) you do not have the whole characters set and (b) the Arabic characters are not there.

As you told me i paste whole 255 words to font file all thing is fine except when i write done text in Arabic or in English i see on Matrix on other text totally except first word .

I am having trouble understanding what you are explaining. Can you post a picture or a video?

Thank you for your prompt replay
the problem is when i write done the following text "Parola for",
"Arduino", - led matrix display on other text like ( Plospmlo 9ps Asevjop) instead of (Parola for
Arduino)

See

All the lower case letters are one letter out (ie, you are getting b instead of a, s instead of r) - Pbspmb gps Asevjop. Try a message in uppercase and see if that works ok. If it does, then check that there are no ASCII characters missing between the end of the upper case and the start of the lower case letters in the table.