MOSFET array

Thread Starter

allenpitts

Joined Feb 26, 2011
163
Hello AAC Forum,

Have been working on a large sequenced (320) LED display for some time now.
Worked first with MAX 7219 but got unpredictable results. Have redesigned
and rebuilt the display using 74HC595 shift registers.
https://forum.sparkfun.com/viewtopic.php?f=32&t=44668&p=191555&hilit=allenpitts#p191555

But as the blog explains when the display reached about 230 LEDS once
again the display became erratic. The Arduino just won't supply enough juice.

So now looking into two solutions.

The first is to use MOSFETS to use voltage instead of current to control the LED
voltage supply, like 2N7000.

Then I found Darlington arrays like UNL2803a which still use current but a lot less and instead
of having to wire eight discreet MOSFET devices to each 74HC595 (actually a SparkFun
breakout board called BOB-10690) use an octal array making construction much
easier.

So actually this is two questions.

1. Which solution, ignoring the construction hassle of the MOSFETs, would provide
the best chance of success? I thinlk it is the MOSFETs but would welcome some
expert advise.

2. Is there a MOSFET octal array? Like a UNL2803a but using mosfets instead of Darlingtons?
I have researched on 'MOSFET octal array' with no luck but perhaps the wrong terminology
is being used.

Thanks.

Allen Pitts, Dallas Texas
 

ci139

Joined Jul 11, 2016
1,898
Hi!
so they put 16mA through each LED ( http://bildr.org/2011/08/74hc595-breakout-arduino/ ) and route Ucc and GND through 1k module ( https://www.sparkfun.com/products/10680 ) usually there's 100nF capacitors near Ucc Gnd for simultaneous transitions not to cause too much waves on power rails

timing your OE - line right might just do the trick alone (you dont switch leds while shifting your data)
. . .
or along with keeping the power rails (also the visual display) in balance along the delta - chain-links --
perhaps by multiplexing the grounds for odd-even LED-s and odd-even "chain links" --
takes 4 mosfets near Ucc line start (i guess - not an expert)
-- also i may guess effect of such multiplexing incorrectly here !

. . .

(if i remember right the signal traces should be resistively terminated to ground at last module in chain)
and the clock line either shouldn't at all or had some special termination such as two upward diodes capacitor and resistor - or i remember wrong or this data is out of date for today's trends (not my speciality - just read some books decades ago)

Good Luck!
 

ci139

Joined Jul 11, 2016
1,898
Their likely are more.
yes, id use bus or line drivers / buffers or level converters - and why not simple mosfet arrays
but if it does not help cancelling the noise in long daisy-chain -- then adding more power to feed in even more noise would be a poor choice

what i assume is if they showed a chained module denoting it might be extended to thousand ?? 8x16kmA x 5V = 640W -- through
.64kWd.gif

. . . yes it reads correct - it's Vcc it's also over "640W" (128A) via - then they must know what they're talking about "That means if you have 1000 of these chained together, you will be able to say “setPin 7,432 HIGH”, and BAM!" -- whatever they mean by that . . .

another thing is not to grow the budget for the project
while there's no confidence it won't rise it futer on e.g. it does not solve the issue encountered . . .

my expertise is low on that area -- but i can conut to 10 -- 01,10
 
Last edited:

ronv

Joined Nov 12, 2008
3,770
Hello AAC Forum,

Have been working on a large sequenced (320) LED display for some time now.
Worked first with MAX 7219 but got unpredictable results. Have redesigned
and rebuilt the display using 74HC595 shift registers.
https://forum.sparkfun.com/viewtopic.php?f=32&t=44668&p=191555&hilit=allenpitts#p191555

But as the blog explains when the display reached about 230 LEDS once
again the display became erratic. The Arduino just won't supply enough juice.

So now looking into two solutions.

The first is to use MOSFETS to use voltage instead of current to control the LED
voltage supply, like 2N7000.

Then I found Darlington arrays like UNL2803a which still use current but a lot less and instead
of having to wire eight discreet MOSFET devices to each 74HC595 (actually a SparkFun
breakout board called BOB-10690) use an octal array making construction much
easier.

So actually this is two questions.

1. Which solution, ignoring the construction hassle of the MOSFETs, would provide
the best chance of success? I thinlk it is the MOSFETs but would welcome some
expert advise.

2. Is there a MOSFET octal array? Like a UNL2803a but using mosfets instead of Darlingtons?
I have researched on 'MOSFET octal array' with no luck but perhaps the wrong terminology
is being used.

Thanks.

Allen Pitts, Dallas Texas
Does your 5 volts come from a USB cable? If so It can probably only supply a reliable 1/2 amp.
 

Sensacell

Joined Jun 19, 2012
3,448
A band-aid that might just allow you to sneak by would be to install a massive, heavy power and ground bus (think #8 AWG wire) along the chain, with each board connected with the shortest possible wires to this bus. Connect a large regulated DC power supply to this bus at the starting end, with the computer connected with very short wires. Install additional bypass capacitors on each board across the supply.

The problems you are encountering are typical when "expanding" a simple design to much larger scale, you are banging into serious limitations imposed by the physics of the hardware.

1) The current required becomes rather large- this current creates voltage drops in your ground, this causes the chips in the chain to become
erratic as they must reference this ground to properly receive the logic input signals.

2) Adding buffers to each driver can help to "regenerate" the logic signals- but this comes at the cost of propagation delay, which adds up to slow the whole thing down- bad design.

3) The "fan-out" or number of inputs a single output can drive is limited, long cables make this problem worse.
It's a disaster when you try to run it at speed. The claim that you can cascade "1000's of boards" is only true if there is almost no current being switched and you are running the logic dead slow- none of which is true in the real-world.

4) The real solution is a re-design of the whole concept, but then you are re-inventing the standard LED video wall.
Large LED displays have an architecture that addresses all these design problems with special techniques.
 
Last edited:

ci139

Joined Jul 11, 2016
1,898
i made a quick test assuming from datasheets Vcc.max 7.0V , I.OUT.MAX ±35mA the min R.DS.ON 20Ω for buffered outputs - QA ... QH- above 1k for other gates on that chip - M74HC595 - it displays dramatic difference for power peaks but as the leds are not shown there'll be likely 50% diference . . . anyway (about how the p13 - G is timed)
M74HC595 TEST.png
about this simulation
  • uses internally/autonomously powered logic gates that do not add up to power draw and thus to rail noise
  • only the output ports are switching the rails to outputs
  1. QA to QH assume 20Ω R.DS.ON
  2. QH' assumes 4k P-MOS 2k N-MOS
  3. the operation of M74HC595 5V-only/reconfigurable simplified model is not fully tested/verified
  4. usually i use that type of models for implementing driving controls for power swithes (where their particular power budget is insignificant compared to system total) - if you want to add power draw to internal gates - then such would likely dramatically slow down the simulation speed or generates too much noise for simulation to reliably run (especially for multiple components)
  5. the practical value is to verify/design your signals timing or get some general overview of your app.
M74HC595-LED TEST.png now with leds
 

Attachments

Last edited:

dl324

Joined Mar 30, 2015
16,918
Have been working on a large sequenced (320) LED display for some time now.
It would be helpful if you posted a schematic on this forum (so broken links don't become an issue).

It looks like you have 220 ohm current limit resistors which would give an LED current of about 13mA. 13mA * 320 is over 4A. A USB 2.0 port will provide up to 500mA.

You may have other issues, but I don't trace breadboarded layout; and can't read the signal names on your drawing anyway...
 

ci139

Joined Jul 11, 2016
1,898
i studied yesterday utilizing the ( compiled for this post 3ya(years ago) ) 595's spice model -- that there's a skew needed in between shift and display clocks (won't explain check the pic)

without the skew the data somehow gets lost ???
 
Last edited:

ci139

Joined Jul 11, 2016
1,898
About driving/multiplexing the LED-s is not so straight forward as it may first seem (about the I.peak and available duty range -- so your LEDs would be seen also and from some distance ? at the dispersed daylight)
even more if there are hundreds of them (keeping the supply steady = keeping I.F sufficient (@ all times))
keeping the budget at bay (control components at minimum)
. . .
 
Top