posting a new thread.. as I have things wired up..but am having issues with the brightness I am getting:
I soldered up one of the led 'matrix' strips....
grabbed a MAX7221 chip, my Arduino and a breadboard.
prototyped up the circuit per my images and the data sheets/tuts..
I tried to be as proper as I know how..
pre-tin all my 'pads' of the 5050 led's.. (all 120 of them!!!!!) to make 2 x 60 led strips each.. (60 per MAX7221 chip).
solder my backing 'wire' that is also doubling as my GROUND bar/wire (just a thin brass wire to serve as something to mount my leds to and use for common ground).. when everything is all said and done.. I'll go back and cut the GND wire at every 8th led as needed.. but for now its keeping things together.. until the positive wires are complete...and the backing is applied
here is my first one.. a bit 'janky'.. but you'll neve see the strip itself.. it'll be inside the prop.. the second one came out MUCH better very uniform and tight spacing.. (I use a bit of a 'jig' to slide the leds into place and solder them.
fired it up, worked out a few bugs I had in the jumpers/code..uploaded it.. and gave a 'look-see'. =)
background of the physical set-up/wiring.
I took a long, thin brass rod/wire and soldered 120 x 5050 leds to it.. bridging 2 of the 3 GND's and soldering them to the brass wire.. I did this on all 120 x 5050 led's..
so basically are all sharing 1 huge common ground.. (for now).. I dd this to help keep things aligned and uniform during soldering. (also this led strip.. will eventually make a half circle.. (and the other strip making the other half of the circle).
I then cut up 120 x little 'wires' the length of 8 x 505 led's..ore-tinned each end.. and continued to solder each wire to connect the leds (#0 led to the next group of 8 leds #0 led..etc..etc then the same for the #1's in each group of 8 leds..etc.. like a matrix needs to be wired)..
I have NOT cut the GND bar at every 8th led (yet) until my final installment into the prop.... but wanted to give a quick test to see if wiring went ok..
I was thinking if I use DIG0 from the MAX7221 to the common GND wires being used.. and then use SEGDP connected to just the #0 led in the first group.. all #0 (SEGDP) positioned leds will light up in each 'segment'.... (because of the common GND for now)..
so I uploaded this simple test code:
//We always have to include the library
#include "LedControl.h"
/*
Now we need a LedControl to work with.
***** These pin numbers will probably not work with your hardware *****
pin 12 is connected to the DataIn/Din/DIN
pin 11 is connected to the CLK
pin 10 is connected to LOAD
***** Please set the number of devices you have *****
But the maximum default of 8 MAX72XX wil also work.
*/
LedControl lc=LedControl(9,8,7,1);
/* we always wait a bit between updates of the display */
unsigned long delaytime=50;
/*
This time we have more than one device.
But all of them have to be initialized
individually.
*/
void setup() {
//we have already set the number of devices when we created the LedControl
int devices=lc.getDeviceCount();
/*The MAX72XX is in power-saving mode on startup*/
lc.shutdown(0,false);
/* Set the brightness to a medium values */
lc.setIntensity(0,15);
/* and clear the display */
lc.clearDisplay(0);
}
void loop() {
lc.setLed(0,0,0,true);
}
to just turn on, initialize and clear the MAX chip..and then turn on the first led in segment 1 (which, again, in turn will turn on all #0 leds due to the common GND wire not being separated/cut yet)..
it 'worked'!.. but the leds were VERY, VERY dim.. (I am only using 2 of the 3 smd leds housed under the 5050 led housing/dome)
vLed(v) | |||||
---|---|---|---|---|---|
Iseg(mA) | 1.5 | 2.0 | 2.5 | 3.0 | 3.5 |
40 | 12.2 | 11.8 | 11.0 | 10.6 | 9.69 |
30 | 17.8 | 17.1 | 15.8 | 15.0 | 14.0 |
20 | 29.8 | 28.0 | 25.9 | 24.5 | 22.6 |
10 | 66.7 | 63.7 | 59.3 | 55.4 | 51.2 |
SO there was 8 leds on at the one time.. (8 x section/segments, 1st led in each on) 8 x 40mA total (2 leds on out of 3, 20mA each = 40mA total per 5050 led..treating it as 1 led unit that draws 40mA total).. taking 240mA total? well under the limit the max7221 can give..?? (similar to if I had turned on all 8's in 1 section/segment)
I then disconnected my led strip.. and took my desktop PSU.. turned it to v3.0+ and only 40mA current and connected the led strip to it.. same way I had done the MAX7221 (one clip to GND one to #0 led).. and it lit up VERY brightly.. like it I believe it should be.
I am thinking maybe I have the Iset/Rset resistor wrong? I believe I am using a 10kOhm resistor.. which is probably a bit UNDER what it recommended by a 'smidge'?
Anybody suggest some troubleshooting advice here?
I wouldnt think its not a circuit layout problem..being as it 'works'... but not as bright as it should (ie: like I can look at them directly..and see the two leds under the dome faintly lit...one when is lit normally you cant do that.. much less having two lit)..
I even tried editing brightness value just to test/see..
pics of the set-up breadboard.
could it be because I have NOT split/cut the common GND into its respective 8 led 'sections/clusters'? and the GND is common for all 60 leds right now?
I read 1 MAX7221 can be powered by the Arduino.. but more would need external power....
but if I wanted to supply/use external power.. I see where the change of the v5+ is...but where does the GND go form the battery pack? I see we need to use the Arduino GND for the circuit.. but where does the GND line go from the battery pack if we choose to use external power?
Im completely stumped on why I am not getting bright leds?
if there is anything else I can provide to you help you, help me.. just say so! =)
thanks