questions about powering leds in large matrix like mikes macmux design

Status
Not open for further replies.
ok, decoupling capacitors on 6 chips, seems to want to scroll better, but data and speed still changes, i'll upload a video...
 

Again, a duplicate of this program is running on another mic5891 next to my computer, and multiplexed to 8 LEDs at >60hz and 12.5% duty cycle, they run 111111000000111111000000 at 100milliseconds between each bit, perfectly. So no programming errors.

the data begins in the upper right hand corner. The bottom isn't hooked up to data, clk, output enable or strobe lines and is accurately displaying the last data it received from the test bench currently running.

It almost appears worse now than it was before, I cannot tell at this point, at least before it seemed to repeat the same crap every 3-4 seconds, now it appears to have more random data bits inserted at the beginning and less speeding up further down the line.

I am aware my data clock and other lines are acting like transmission lines at this length, should I ground each on at the source and termination with high ohm resistors?
 
Last edited by a moderator:
well since those caps didn't seem to fix the problem, but they did change something, what? who knows. I'm going to have to use an oscilloscope I fear. Well, until then i am going to finish building the entire sign and at least be able to strobe the whole thing before the show.

After I finish building I will continue diagnosing it with you guys. If you think of anything weird I'll see if I can test it.
 
Nah, the only chips, the arduino, the mic5891, and the si2312bd mosfets are not tri-state

What about the current output of the chips, they might be overloaded, causing the voltage to fluctuate, causing random led flashing etc...

-Ben
 
Nah, I've got resistors set at 60 and 80 ma for the leds, far under the limit of 200ma per pin. and the chips stay cool, at 80 degrees Fahrenheit, the mosfets stay super cool, 67-69, and the arduino sticks at 85.
 
Nah, I've got resistors set at 60 and 80 ma for the leds, far under the limit of 200ma per pin. and the chips stay cool, at 80 degrees Fahrenheit, the mosfets stay super cool, 67-69, and the arduino sticks at 85.

You should check the data signals using your o-scope and see if there is any noise on the data lines.

Hope that helps

-Ben
 
oh there is noise. I could show it with a video. If I unplug the data line, it typically punches out 2-5 random 0's and 1's after it becomes disconnected, then followed by pure 0's by the clock still moving.

sometimes after I unplug the data line, it will spit out 1010101010101 infinitely, as if picking up a perfect signal from thin air that creates itself over and over. but usually it just shows a couple of 0110101010 then all 0000000000000000s. all the while speeds are most stable without the data line plugged in, it will scroll almost perfectly slowly across the entire matrix, though often it speeds up between shift register #3 and #4 then back to normal speed for 5-8.
 
I am aware my data clock and other lines are acting like transmission lines at this length, should I ground each on at the source and termination with high ohm resistors?

You should probably try grounding your clock and data lines on each end with a 10K ohm resistor.

-Ben
 
OMG, so I wired up more of the matrix, the dimly lit LEDs disappeared and the top scrolls perfectly til the 5th chip which is decoupled as well as the 6th.

So it looks like finishing wiring may fix the issues alone. I'll be doing that tonight, as well as scrounging all the local radioshacks of caps.
 
Ahhh.. You are getting bounce back, or echoing from non terminated line, maybe?


You NEED to bypass/decouple the rest of those ICs.
 
Last edited:
yea, I went to a bunch of radio shacks, got enough caps to finish the P, but not the F. At the moment though I am waiting on a fool that was supposed to supply me the rest of the 12 gauge bare copper wire to show up so I can finish my wiring on the P (and the F for that matter)

I have less than 48 hours to finish, bolt it up and program it. yay!
 
crap, I accidentally put the capacitor from the ground to the data out pin on chip #6, the data stops there, and nothing else lights up after that, should I replace the chip?
 
oh nvm, it was a loose wire, yay. scrolling up top seems to sometimes work fine, but at other times gets messy.

added caps, they didn't fix it, seems finishing the grid makes the stuff earlier in the line work better, we will finish it tomorrow morning and find out.
 
you guys are the only people who know about these youtube videos.

and here's showing as the data and signal lines are tied in to the rest of the chips, the data up top is cleaning up slowly. every IC has the .1uF decoupling cap, but tying in the signal lines to more chips seems to cause a huge effect.

 
Last edited by a moderator:

what is the circuit again? generally distance and amount of inputs on an output both degrade the signal. and series terminating resistors tend to do better, though I can not imagine you are working at the frequencies that it would matter at. the more loads you put on a line the worse off it is... in the old TTL days they specified a fanout: how many inputs you can put on an output and expect it to still work. these days you see maximum load capacitance and saturation voltage on the outputs , and maximum rise/fall time and hi/low input levels on the inputs.

while you might have reflections on the lines it is much more likely that you are seeing power rail effects than reflections.
 
The circuit is just a large version of any cathode row LED matrix 8x96, so that is 12 MIC5891's chained together. that means the clock, strobe, and output enable lines are all chained from one chip to the next from 3 long ~16 foot wires from the arduino. The Rows are driven from yet another 8 pins from the arduino over a shorter 10 inch total distance to the mosfets that cycle through turning on each cathode row one at a time.

The data line however is an input and output from the IC, so the data comes from a 12 inch cord into the first MIC5891 and then from the output pin over another 12 inches to the next MIC5891's input pin.

**broken link removed**
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…