I'm hoping this is a nice easy one, but my own lack of knowledge about transistors leads me to ask:
The Sparkfun Tri-Color LED Breakout Kit is designed to run off 5V. The schematic is here:
I have a 3.3V Arduino Pro Mini which takes 5V into the RAW pin and regulates it to 3.3V for its own use. 5V is also fed in parallel to the VCC line on the LED breakout board. This is all fine.
The problem is that the RED, GRN and BLU lines on the breakout board are triggered by the Arduino Pro Mini, which is only outputting 3.3V. Resultantly, the base of the transistors isn't getting as much juice as they would if the board were running (as designed) from 5V pins.
Is it possible to adjust for this by using a lower value for the R4, R5 and R6 resistors in the schematic (presently 330 Ohm between the RED, GRN and BLU pins and the transistors)? If so, what value would be the closest replacement (I have a choice of all E12 values) for the present resistors?
I know that R = V / I, but I don't know what values to use on the right.
I hope someone can help me. I didn't foresee this problem, and now I'm still hoping to get this project together in time for my girlfriend's birthday this weekend.
Is it possible to adjust for this by using a lower value for the R4, R5 and R6 resistors in the schematic (presently 330 Ohm between the RED, GRN and BLU pins and the transistors)?
No. The ckt shown in the pdf file shows the Leds are being driven by emitter
followers. If you use 5V signals to the transistor bases, you'll get the full Led
currents, approx (5V - 2V)/Rx, where Rx = R1,R2,R3.
With only 3.3V drive, the Led currents are only about 1/3 as large, approx
(3.3V - 2V)/Rx.
You don't want to lower the Rx values to increase drive, as they are already tiny
[actually they seem to be "too" tiny to me, but I don't have a board to play with,
so I'll assume Sparkfun choose the correct values, but they look way too small
???????].
Aside from going to a 5V Mini-Pro ordered in 2 days, for a quick fix, I would tie the
R4, R5, R6 inputs directly to 5V and connect the Arduino pins straight to the transistor
"bases" using regular Leds [anode to base, cathode to Arduino]. When the Arduino
pins go low, the extra Leds will turn on, and the color Leds will turn off.
@CrossRoads:
Was your answer generic to circuits in general or did it take into account the schematic?
@oric_dan(333):
I'm not sure if this makes a difference, but the LEDs come on when the pins are HIGH. Having LEDs that came on when the pins were LOW would be counterproductive.
I'm not sure if this makes a difference, but the LEDs come on when the pins are HIGH. Having LEDs that came on when the pins were LOW would be counterproductive.
There are MANY ways to fix a ckt like this. I tossed out something simple so you might
get it working before the weekend. You could cover over the extra Leds with tubing
so you couldn't see them, or use IR Leds. OTOH, it should also work by replacing the
extra Leds with 2 regular diodes [eg, 1N4148] in series.
Since it's an emitter follower ckt, changing the base drive won't significantly change
the collector current. You need to get a much larger voltage on the base to do that
[or smaller Rx's] - as I indicated. All in all, I would have designed it with the Leds and
Rx's in the collector ckt [ie, regular inverting amp config], then you could easily
control it with 3.3 or 5V cpu.
I hadn't considered that the emitter voltage would rise with current flow.
As oric_dan indicate, that is crummy way to set up an LED driver circuit.
If the emitter had been grounded and the resistor/LED were connected to 5V and then the collector, it would be a much more useful circuit.