Dot Matrix 32x8 Max7219 Interfacing With Ardiuno

by Amit_Jain in Circuits > Arduino

2308 Views, 17 Favorites, 0 Comments

Dot Matrix 32x8 Max7219 Interfacing With Ardiuno

IMG_20200204_215636-02.jpeg
IMG_20200204_215427-03.jpeg

Hi All,

Dot Matrix based o Max7219 are not new in 2020, until recently, the setup process was well documented, one would download hardware library from MajicDesigns. and changed few lines in the header files and FC16 worked like a charm. This was till MajicDesigns fixed all bugs in the library. Now the documented method doesnot work..

I spent few days searching and discovered it by chance..It may be some experts may know it already. But thought to document and share it, to help other newbies like me

What Do We Need?

IMG_20200204_194123-01.jpeg
  • Max7219 32 x 8 dotmatrix board
  • Ardiuno Nano
  • Bread board
  • Some wires
  • Laptop or Desktop with Ardiuno ide

Max7219?

IMG_20200204_194232-01.jpeg
  • If you are unsure if you have max7219, not pop out the led dot matrix
  • Use your mobile phone to zoom and take a pic
  • This makes it easier to read

Install Driver

InkedImg0135_LI.jpg
Img0136.jpg
  • in Ardiuno Ide, go to "Tools" > "Manage Libraries"
  • Then search for md_max
  • Install "MD_MAX72xx" and "MD_Parola"
  • Restart Ardiuno just to make sure libraries are loaded

Error and Solution

Img0139.jpg
Img0138.jpg
Img0137.jpg
Img0140.jpg
IMG_20200204_200018-01.jpeg
IMG_20200204_204429-01.jpeg
  • Make connections as per the code
    • CLK_PIN 13
    • DATA_PIN 11
    • CS_PIN 12
    • Adjust Max_device to 4
  • I tested it with different examples but i noticed that the characters were jumbled
  • Sometimes it may be because of loose connection/wire on breadboard
  • In most of the case it is due to incorrect HW initialized
  • There are 4 hw based on connections
    • MD_MAX72XX::PAROLA_HW
    • MD_MAX72XX::GENERIC_HW
    • MD_MAX72XX::ICSTATION_HW
    • MD_MAX72XX::FC16_HW
  • "Parola_HW" is default, we need to test one by one to check which works best
  • Remember to reset power for Ardiuno before you test each setting
  • For me FC16_HW worked

Adjust the Code

Img0146.jpg
Img0141.jpg
IMG_20200204_215636-02.jpeg
  • Update hardware type to "FC16_HW"
  • Max_device as 4 for 32 x 8 matrix
  • Write the code back into the Ardiuno Nano
  • Test the display
  • Voila it works !!

Hope this helps someone in future.

Please share your comments and suggestions