Max7219 and 7 Segment LEDs

Hola Everyone,

I am trying to wire up a clock. I have some 7 Segment LEDs and a Max7219 Chip. Before I can mess with the clock code, I am having problems getting the lights to light up.

I have a kit like this:

and when I hook that up, I can get multiple 7 Segments to light up but the LedControl.h library does not correctly print the right numbers. Its also hard to figure out which pinout is Dig0 or Dig1 etc. As all 8 seem to be "active".

I have also tried a more basic approach by wiring up a raw Max7219 chip to my UNO. I dont think I quite understand how the capacitor goes tho. Here are some pics max7219 - Album on Imgur of how my wires go now.

I can only power 2 segments of a single 7 - Segment this way. When I try to connect any more segments they all go out. I have seen a lot of tutorials where they are powering many digits off a Max and I dont get why I cant even get 1 digit to light up all the way.

At this point I would use either the raw chip or the kit. But I cant get either method to work 100%. Any help would reaaally be appreciated. I am so confused and lost at this point.

Thanks for Reading!

Hi Johnny,

Your picture shows a led matrix kit, not a 7 segment display. Did you post the correct picture?

Is your 7 seg display common anode or common cathode?


Yeah that is the right picture. I could not find a specific kit that would allow me to power individual 7 segments so I was hoping to improvise.

It does kind of work? I can do like


but the resulting digits are never correct. (unless its an number "8" ). Like a 7 makes weird shape, so does a 0. 0 looks like a lowercase e.

Even just using a raw max chip is giving me problems tho. I can only get like 2 segments to light up at a time.

Also I ordered Common Cathode 7 segments off of amazon. I can post the link if you want, but I specifically searched for and ordered that kind.

Thanks for checking this out!

Edit: Here is an "action" shot of what is going on.

You didn't answer my question.

Post your sketch. Use code tags

so it looks like this.

Sorry I for code I am copying from the arduino website. I am trying the setDigit only. This is for the kit. Running the examples exactly from here: Arduino Playground - LedControlDemos

#include "LedControl.h" //  need the library
LedControl lc=LedControl(12,11,10,1); // lc is our object
// pin 12 is connected to the MAX7219 pin 1
// pin 11 is connected to the CLK pin 13
// pin 10 is connected to LOAD pin 12
// 1 as we are only using 1 MAX7219
void setup()
  // the zero refers to the MAX7219 number, it is zero for 1 chip
  lc.shutdown(0,false);// turn off power saving, enables display
  lc.setIntensity(0,8);// sets brightness (0~15 possible values)
  lc.clearDisplay(0);// clear screen
void loop()

On the Max Only setup tho, I cant even connect all the wires before the whole thing shuts off? any more than 2 segments and it stops working.

Also, when I connected the LCD 8x8 matrix, that works 100% fine on the kit. That code I got from here:

Thank you for your help so far!

Can you post a schematic of how you are connecting up the max to your 7 seg displays (impossible to tell from those pictures) ... and ... you still haven't answered my question from the earlier post!

Hmm maybe I am not understanding you, I thot I answered your questions.

Yes That is the correct picture. I have an 8x8 matrix kit I am trying to repurpose.

I have for sure ordered Cathode style lights from amazon.

The wiring on the Kit is working because the 8x8 matrix works fine.

The wiring on the max chip by itself I am following this setup: Tutorial – Arduino and the MAX7219 LED Display Driver IC |

I have for sure ordered Cathode style lights from amazon.

Finally the answer! So they are common cathode? (All 7 seg displays have both cathodes and anodes. Common cathode have only one or two cathode pins per digit vs 8 anode pins).

Can you post a link to the data sheet or at least a pinout diagram?

Also list the connections you have made between the max and the display.

The wiring on the Kit is working because the 8x8 matrix works fine.

That is not correct. The wiring to 7 segment displays is totally different to the wiring on a matrix.

The fact that the segments are lighting up incorrectly proves you have not wired them up.

You can play about with trial and error swapping segments over trying to get the segments correct or you can work it out from the schematic which you steadfastly refuse to post.

You can make your own breakout wiring, just need to find the right pins to connect to.
Seg A from MAX7219 goes to A pin on each display (in parallel to all devices)
Seg G from MAX7219 goes to G pin on each display.

Digit0 from MACX7219 goes to common cathode on display 0
Digit7 from MACX7219 goes to common cathode on display 7

So it's really just a matter of paying attention.

If you have to, use a meter and determine which pin is connected to the MAX7219 pins.