# LED Matrix Question

Hi all, I am wondering if you can help. I want to get an LED maxtrix to produce maximum light in the most efficient way, by having different (individual or rows of) LEDs illuminating at different intensities. So basically for a desired input of required light, I would like to achieve a minimum current draw from the the matrix.

I have looked at multiplexers and driving the matrix from my Arduino board, but i'm a bit lost. Can anyone point me a few directions?

Thanks

I want to get an LED maxtrix to produce maximum light in the most efficient way, by having different (individual or rows of) LEDs illuminating at different intensities.

Those requirements maximum light but varying intensities sound at odds with each other. Maximum light out is accompanied by maximum light on all LEDs.

A matrix is a poor way to get the maximum light out of an LED because of the multiplexing.
say what you actually want to do.

sorry, i don't mean maximum light. I would like to be able to set a level of required light eg: 5lumens, then have the matrix lighting up the required LEDs in a pattern which utilises the least amount of current. so instead of lighting 1 led to 5lumen, have 2 at 2.5lumen (VERY basic example, i understand it wont work like that).

which utilises the least amount of current.

Why?
This is making things difficult for yourself. It implies that you need brightness control on a multiplexed matrix if so then the MAX7219 is perhaps the easiest way to do it although it doesn't have many brightness levels and they apply to all on pixels in the array.

Ok, so keeping that in mind. If we ignore the varying intensity levels of the LED and focus on the pattern on the matrix.

Would it be possible to have custom patterns, optimised for lowest power consumption, for a specified amount of light which can be monitored?

EG: if i want 5lumen of light to be received by a sensor, I could have the furthest LEDS from the sensor on at >5lumen, or one which has zero losses to surroundings at 5lumen. (once again, very basic example, i'm just trying to get an understanding - hope i'm not adding confusion).

Sounds like you need PWM control of each LED so you vary their brightnesses individually. Suggest you look at a part like this

Daisy chain into whatever size matrix you want, can control the brightness of each one.

Sounds like you need PWM control of each LED so you vary their brightnesses individually. Suggest you look at a part like this
Breadboard-friendly RGB Smart NeoPixel - Pack of 4 : ID 1312 : \$7.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Daisy chain into whatever size matrix you want, can control the brightness of each one.

Hey thanks for this, but i've had a change of thought:

-Achieve optimal efficiency (minimum power consumption) by varying ONLY which LEDs are on/off.

My issue now is how to get this process to be automated based on power consumption, because in all the examples I see a user is manually choosing which LEDs to light up. I want this process to be automatic so if i decide on a light output value, the matrix chooses the LED pattern for me.

So, I think this would be achievable, please leave your thoughts/opinoins:

Say i input a value of 10lumen as the required amount of light.

Is it possible to systematically turn on additional LEDs one by one (at first) until i achieve 10lumen at the light sensor.

Yes. With a MAX7219, you have individual control over 64 LEDs.
There is a limit on how much power it can control - read the datasheet, I don't know how you convert mA/LED into lumens at the sensor. I imagine it would depend on the efficiency of the LEDs, whether they are diffused or have a narrow viewing angle, their color. The LEDs are multiplexed at 800 Hz - if that is not giving the brightness you want, then perhaps drop the use of the word 'matrix', which implies a multiplexed set of LEDs, and simply say a collection of LEDs layed out in a grid. Those LEDs could then be individually driven from the output of a shift register like TCIP6B595, and either be full on, or full off, but not multiplexed.

Thanks for all your help. Have you seen any similar projects which i could use as a reference?

NthLED:
Thanks for all your help. Have you seen any similar projects which i could use as a reference?

http://playground.arduino.cc/Main/MAX72XXHardware

Sure, you could use a card like this which can drive up to 96 LEDs in a non-multiplexed manner using TPIC6B595 shift registers. I designed it for sinking current from 12V LED strips. Can do individual LEDs also. Will be good & bright!