Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

questions about powering leds in large matrix like mikes macmux design

Status
Not open for further replies.
In the following video, I am sending out 111111000000111111000000111111 via changing the pin states on the data line and sending a clock signal of low to high 6 times.The first shift register is the top right corner, as you can see code appears to work well at first, then it speeds up randomly.


The LEDs that are turned on at the bottom are disconnected from the data and clock lines, they are showing old data from the test bench when I tested the chips.

HOWEVER the LEDS at the TOP that are constantly ON are recieving EMI, they work without a (+) from the MIC5891 chips

as you can see this is a 8*96 matrix, it just changes directions everytime it goes down 8 rows because of daisy chanining.

here is a picture showing the horrible wire statistics were the data line begins from the arduino:

**broken link removed**
 
Last edited by a moderator:
Are you using proper decoupling?

All this switching is bound to drive hell into the circuit.

Also, I agree with using shielded wire. Every one of these wires is a LONG antenna.

Have you scoped any of the lines to see what "extra" they are picking up?
 
Are you using proper decoupling?

All this switching is bound to drive hell into the circuit.

Also, I agree with using shielded wire. Every one of these wires is a LONG antenna.

Have you scoped any of the lines to see what "extra" they are picking up?

There is a 15uF 20v tantalum cap at the power and ground at each chip, you can see it on the top of the circuit boards that hold the MIC5891 shift registers, the black rectangle is it.

and yea, there is a ton of EMI from all this switching power, What kind of shielded wire could I use for four wires at these distances? keep in mind there are 14 shift registers in this single letter.


I have this really old EICO oscilloscope I've never used with a round green crtv in it, I could try to hook it up, what should I look at? there are too many sources to start.

what gets me is that the very first chip gets some distortion in the clock line and data line as you can see in the short 11 sec video clip, so even the very first data lines are picking up too much crap. I tried aluminum foil and adding 2.2kohm resistors at the terminals of the data and clock lines to the ground (all at the mic5891 chip) to prevent some signal reflection, but I only tried it on a couple, is it necessary to rig the entire hookup like this to get prevented signal reflections?

Yea, diagnosing this is going to be a *****, luckily even if I can't program it in time for new years to do cool stuff, I could always strobe it two colors at a time. But eventually I will get this ******* working.
 
I would get a spool of shielded cat-5.

You can pick it up cheap, it is twisted pair and shielded, and gives you 8 wires (4 pair).

You can get cat-5 by the MILE these days.

As for what to look for on your scope, you will want to see nice, sharp, square waves with no (little) AC.

AC is interference in this case.

Check your clock line between every board.

Hopefully you will find a bad chip and not have to re-wire the sucker.

Could you have accidentially attached a clock line to the shift register out?

That would explain the odd/random timing changes. Look for solder bridges, or failed etching on traces.
 
Ok, I am thinking cat-5 will work, as I doubled checked the wiring and it is all good.

Here's a weird note, If I unplug the data line from the arduino after allowing 6 bits to be clocked out, I can watch it seamlessly scroll the 6 columns from top to bottom everytime.

However when I allow more data to clock out allowing the 6 0s and 6 1s after, it appears to speed up around the 3rd shift register, after the Second set of 1's comes rolling in around the 4th or 5th bit on the first shift register. How could new data so far away affect another shift register's clock speed?

almost as if the data line is influencing the clock line along the chain. or pherhaps the grid of LEDs is affecting the clock line a couple feet away, but not the LEDs close by. so weird. I'm going to swap over to cat-5 cable soon tonight, as I have a bunch of lan cat-5 cables laying around it turns out.

Is there a preferred method to cutting apart cat-5 cables for tapping signals from it to multiple circuits along the line?
 
Last edited:
I just saw something scary and odd, the bottom half of moving LEDs went into a "DIM" mode, still moving at random speeds, but all of a sudden half the power or less. only affected 3 of the 4 shift registers farthest from the arduino. I immediately turned everything off, feeling pale that maybe I broke a ton of ****, I turned it on again and it was running fine. this was after 30 minutes of running.

coincidently I was doing temperature checks with my laser temp measuring device when this happened, nothing was above 80 degrees fahrenheit, the mosfet grounding arrays were 69, the arduino being the warmest at 86 degrees on the atmega2560 and each MIC5891 was 82 degrees. except those at the bottom driving only 4 LEDs tall, they were 70 (room temp)


Any idea what could've happened?
 
Last edited:
I am not using max chips. I'm using mosfets for the cathode rows, and MIC5891 shift registers for driving the columns. the shift registers are decoupled with 15uF 20V caps at the chip.
 
I apologize, I meant to say MIC not MAX.

But still, it sounds like a decoupling problem, and hopefully an easy fix.
 
hmmm, well, shoot, I doubt I will be able to get a hold of caps in that particular range that fast. Just so I can know, how do we arrive to those particular cap values? I am just used to over shooting my cap values on everything I've made in the past.

So far it doesn't seem like the cat 5 cable is doing anything. I guess I will try radio shack for these caps, does it matter which type? electrolytic? tantalum?
 
hmmm, well, shoot, I doubt I will be able to get a hold of caps in that particular range that fast. Just so I can know, how do we arrive to those particular cap values? I am just used to over shooting my cap values on everything I've made in the past.

So far it doesn't seem like the cat 5 cable is doing anything. I guess I will try radio shack for these caps, does it matter which type? electrolytic? tantalum?

RS does sell .1uF capacitors!
They can be film, or ceramic disc capacitors. RS has both in .1uF values

-Ben
 
Last edited:
Thanks Ben! I took all they had, 6 ceramic caps, now to test them after I finish wiring in the cat 5 cable (only 8 more wires to strip, solder and shrink wrap) then I'll throw these caps on the first 6 chips (more than enough to test the theory of decoupling capacitor values.)


One question though. should I keep the 15uF cap in place as well? I just don't see why it couldn't hurt to have another capacitor there. Please correct me if I'm dumb in that assumption.
 
Where are you located deuplonicus?

Im sure someone is close to you with a handful of .1uf caps.
 
Portsmouth Virginia, oldetowne portsmouth to be exact, it's like a 200 year old town across the water from Downtown Norfolk, Va

also, the MIC chip has VDD and VBB, lol no VCC, of course the two are traced together on the circuit board, but if it matters I'll wait to verify. I would assume VDD (the Logic power supply) over VBB (The Load power supply) since VDD should be the only one that could influence the logic signals.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top