8x8 Matrix, Rows with more light LEDs are dimmer

I have just completed the 8x8 Matrix project from the EarthshineElectronics guide. It uses 2x 74HC595's to drive a 8x8 matrix, 1 row at a time. I'm using a USB powered UNO.

It works fine, except the rows that have 5 LED's on, will appear dimmer than a row that has 1 LED on - I'm not surprised in a way, but what is the solution to this?

The pinout for the matrix wasn't very clear, I have 270R on each (what I believe is) common cathode. Should I just reduce the resistor and will the difference in brightness be reduced/less noticeable? - surely the underlying issue would still exist? Is this a limitation of using the 595 and would this be solved by using a different (LED Driver) chip?

I am interested in the principle of this, to complete the project and my understanding - but also with a view to building an LED cube in the future, because surely that would suffer the same issue?

If someone could point me in the right direction, I would be happy to read up further myself.


Well if you look at the datasheet for the chip, it says it can only provide 70ma. Assuming your LED's take 20ma each (as most normal ones do) with 5 on that's 100ma! so the LEDs are dim because they have to share the current. If you add a transistor to each output of the row register, it will be able to provide more current and it should solve your problem

Can you provide a link to the project?

http://www.earthshineelectronics.com/files/ASKManualRev5.pdf (Project 14)

Thanks, I had been doing some reading on this. I did wonder if, as the 595's are being used to both source and sink the current, whether a row is actually subject to a 20ma limit in total - because a row is limited to 1x 20ma pin for the sink, even though the source can provide 20ma x 8 pins (capped at 70ma).

Would this mean that on a fully light row, the limit is actually 20ma divided by 8 LEDs (sink)?

If this was the case, using transistors on the SINK for each row, would increase the current to the maximum of the output (70ma), meaning it would improve the brightness slightly, but still be subject to the 70ma limit for 8 LEDs you mention?

Using transistors on the SOURCE pins and SINK pins would would alleviate the problem completely.

Is this correct? I may not be using the correct terminology. I am interested understanding the concepts here as I would like to build an LED cube next and will encounter the same issue. The plan here is would be to use transistors on the sink (for a layer) and I believe a single PIN would be driving only one LED, but again the total limit on the chip would be the issue.

well if you are turning on your LEDs very quickly you can use the peak current. Look at the datasheet for your matrix. Mine can run at 100 ma. And no, you shouldn't need transistors for the columns because they only have one LED on at a time