driving darlington array

array has 25ma input current max

Do I need 200ohm resistors on every input of the array?

What about when I write the arduino pins to be low? Am I going to want high impedance pull-down resistors to hold it low?

What array is it.

Do I need 200ohm resistors on every input of the array?

Yes if there is nothing inside the array limiting the current.

What about when I write the arduino pins to be low?

What about it?

Am I going to want high impedance pull-down resistors to hold it low?

When? If the arduino pin is low then no. You might need them if it glitches on power up.

Grumpy_Mike:
What array is it.

Do I need 200ohm resistors on every input of the array?

Yes if there is nothing inside the array limiting the current.

Array is driving 4 LED's on each output pin. LED's are 2.5V 20ma. In series-parallel, should come out to 5V 40ma requirement per pin.

Each 4 are a segment in a 7 segment display.

I'm going to put 330 ohm resistors to each set of 4 LED's to test with. That should put 5V 15ma to each array, correct? I'd like to be able to adjust the contrast/brightness, so I was thinking to put an appropriate potentiometer on the common ground coming from the panel, before going back to the main ground (so effectively in-line with the display).

Grumpy_Mike:

What about when I write the arduino pins to be low?

What about it?

Am I going to want high impedance pull-down resistors to hold it low?

When? If the arduino pin is low then no. You might need them if it glitches on power up.

I wasn't sure is low meant ground, or a very small 0.000001 volt reference. I don't know what the transistor array will consider on/off (if it's the same ~2.5V as the arduino or not).

When I ask what array I expect an answer like a part number or better still a link. Then I know what you have and can make sensible comments.

That should put 5V 15ma to each array, correct?

I don't know because I don't know the Vsat of the device. That is the saturation voltage, this is higher in a darlington than a single transistor.

I'm going to put 330 ohm resistors to each set of 4 LED's to test with.

No you need a resistor for each LED that is in parallel.

I wasn't sure is low meant ground, or a very small 0.000001 volt reference.

Much bigger than that, a logic low can be anything up to 0.3V. However this is nothing to worry about because a darlington will not turn on until the voltage on its base is at least 1.4V.

The darlington is a 2803A

I'm testing right now with my converted bench-ATX PSU @ 5V with and without a 330 ohm resistor with the entire segment in one parrellel system. With resistor is really dim, without is stupid bright (granted each LED is 40mcd each and there's 28 of them).

I dont understand having to resistor every single LED. Since I'm not having to make a voltage drop (Vs = VLED), I shouldn't have to limit current (The whole it-only-takes-what-it-needs thing)?

In implementation, this will be powered by a 5 volt regulator.

I'm setting them up in paired parallel.

...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |
...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |
...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |
5V -> 330 Ohm -> | -> (LED1 || LED2) + (LED3 || LED4) -> | -> GND
...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |
...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |
...............................| -> (LED1 || LED2) + (LED3 || LED4) -> |

The darlington is a 2803A

In which case no you do not need any resistors between the inputs and the arduino's outputs.

I shouldn't have to limit current (The whole it-only-takes-what-it-needs thing)?

No LEDs are non linear devices, they take what they can get.
See:- LEDs
You need a resistor in line with each LED because they do not share current equally when directly in parallel because the forward volts drop of ant two LEDs is not identical.

With resistor is really dim, without is stupid bright

Yes because the current through the 330R is being shared between all the LEDs so they are dim.

So say I take ohms law

5V / 0.04A per segment = 125 ohms

Which says I can put a 125 ohm resistor on each segment.

KCL then dictates how much current each LED gets. Ideally, they should split.

Found this-> Is a current-limiting resistor required for LEDs if the forward voltage and supply voltage are equal? - Electrical Engineering Stack Exchange

Without knowing the graph for the specific LED, if I lowered my spec to 15mA per LED an 30mA per segment, R goes to 167 ohms.

In testing,

5V / 330 = 15ma going to all 7 segments. 2ma per segment.

If I operated it at half power, 10mA per LED, 20mA per segment, R is 250.

The system is already built and assembled. So I can't go back and add an LED for each parallel lamp. That would be 88 resistors, on a 3" x 5" board with 88 LED's, an Arduino Mini, and 5V regulator. All I can do is limit it per segment. Plus all kinds of un-soldering.

magnethead794:
So say I take ohms law

5V / 0.04A per segment = 125 ohms

Which says I can put a 125 ohm resistor on each segment.

No, you need to take the supply voltage (5v), minus the voltage drop of the LEDs (2.5v is you don't connect them in series), minus the saturation voltage of the ULN2803 (about 0.9v at 100mA, will be slightly lower at lower currents). That gives you the voltage across the resistor. Then you divide by the current to get the value of the resistor (Ohm's law).

Since your LEDs drop around 2.5v each, connecting 2 in series when the supply you are driving them from is only 5v is not on. Either use a higher voltage supply (in which case you could connect all 4 LEDs plus the resistor in series, if your supply voltage is high enough), or connect them in parallel, using a separate series resistor for each LED.

The system is already built and assembled. So I can't go back and add an LED for each parallel lamp.

Then you are screwed.

dc42:

magnethead794:
So say I take ohms law

5V / 0.04A per segment = 125 ohms

Which says I can put a 125 ohm resistor on each segment.

No, you need to take the supply voltage (5v), minus the voltage drop of the LEDs (2.5v is you don't connect them in series), minus the saturation voltage of the ULN2803 (about 0.9v at 100mA, will be slightly lower at lower currents). That gives you the voltage across the resistor. Then you divide by the current to get the value of the resistor (Ohm's law).

Since your LEDs drop around 2.5v each, connecting 2 in series when the supply you are driving them from is only 5v is not on. Either use a higher voltage supply (in which case you could connect all 4 LEDs plus the resistor in series, if your supply voltage is high enough), or connect them in parallel, using a separate series resistor for each LED.

The trigger is coming from the arduino. So I can't increase that past 5 volts.

I can't change the LED's nor add parrallel resistors

All I can do is regulate the current going into each segment. I don't see why that is such a problem. Yes the LED's may go unbalanced, but if I simply don't run them at 100% power, then I don't see that as a problem. If I only run them at 75%, then there's a 25% variance in unbalancing before exceeding peak value. Seems to me that would be acceptable.

magnethead794:
The trigger is coming from the arduino. So I can't increase that past 5 volts.

You can run the LEDs from a higher voltage and still drive the ULN2803a inputs with 5v signals from the Arduino pins.

but if I simply don't run them at 100% power, then I don't see that as a problem.

Well that web page I posted should have told you the problem.

So you have built something totally wrong but you still expect it to work. You will not go far in electronics.

dc42:

magnethead794:
The trigger is coming from the arduino. So I can't increase that past 5 volts.

You can run the LEDs from a higher voltage and still drive the ULN2803a inputs with 5v signals from the Arduino pins.

How's that work? I don't see a separate Vin for the 2803?

I don't see a separate Vin for the 2803?

You don't see any Vin pin for that chip. It is a darlington that pulls down. The Vin is effectively what is connected to the other side of the load.

Grumpy_Mike:

I don't see a separate Vin for the 2803?

You don't see any Vin pin for that chip. It is a darlington that pulls down. The Vin is effectively what is connected to the other side of the load.

Wait..the darlington sinks? I designed for a switched source...everything is common ground

I would add the resistors if I were designing a PCB for this. As it is, I'm fitting an arduino, power regulator, 3 3" x 1.5" 7 segments and a decimal point onto a 3" x 5" board with 88 LED's total, where LED's must be the only thing on one side. Not a whole lot of room to work with on a perfboard. Everything is already set up, I can't just undo everything.

LED data sheet -> SSL-LX5093ID

Each LED is rated for 30ma according to that sheet. But apparently that sheet also says they've been derated from 2.5 to 2Vrms (mouser's page said 2.5 x 20ma nominal).

If I supply a segment with 30ma and run each LED at half power, then even with a burned out LED, they would only reach Imax. You may not be comfortable with that, but given what I have to work with, I am.

The 2803 outputs provide a path to ground.

The UDN2981 is a "high-side driver".

Adding link --
They're still available from Jameco.
http://www.jameco.com/Jameco/Products/ProdDS/1762681.pdf

Yes, resistors are (still) required.

runaway_pancake:
The 2803 outputs provide a path to ground.

The UDN2981 is a "high-side driver".

Adding link --
They're still available from Jameco.
http://www.jameco.com/Jameco/Products/ProdDS/1762681.pdf

Yes, resistors are (still) required.

I just poked google- Aren't ULN2003/2004 high side drivers?

If I set it up to run at half power (30ma), saturation voltage is 0.9-1.1 volt, to display an 8 is 240mA for the whole unit. Max power is .03*5 = .15 of a watt.

Half-power segment resistor would be ((5-0.9)-4.0)/.03 = 4ohm -> ((5-1.1) - 4.0)/.03 = 4ohm -> (5-4.0)/.03 = 35ohm

So the most conservative resistor would be 35 ohms or greater per segment?

No, the 2003 is a low-side switch, too, equivalent to a 2803 only the 2003 has 7 "switches" and the 2803 has 8.

Can't you sketch out your circuit and take a picture of that with your cell or something and post that? You haven't provided a schematic for what you're on about, but I think your maths are off.

runaway_pancake:
No, the 2003 is a low-side switch, too, equivalent to a 2803 only the 2003 has 7 "switches" and the 2803 has 8.

Can't you sketch out your circuit and take a picture of that with your cell or something and post that? You haven't provided a schematic for what you're on about, but I think your maths are off.

Per the datasheet I link, each LED is 2.0V 30mA nominal. So 4V 60ma nominal per segment, or to be safe with how it's set up, I'd like to run each segment at 25-30mA total.

I suppose I could have 2 sets of 7 TO-220 case NPN's, and put them on 3 rows of female headers, basically making my own 3 row/7pin transistor array. Easily mountable on a daughter board. I think I'll do that.

You need to post the schematic of how you are driving this, it sounds like you are trying to use the transistor array incorrectly.

Just for anyone reading this thread later note that connecting LEDs in parallel like this is wrong.