# Improving a linear LED driver for a "breathing LED" circuit

I'm trying to improve driver stage of this circuit:

(the "main LED" is 12 V automotive LED light bulb)

The 555 outputs a triangular wave voltage in range 4 to 8 V and it should be converted to LED current in range like 0 to 40 mA.

This circuit contains a strange driver stage: output is in voltage mode, the R1 doesn't makes much sense to me, behavior of circuit depends on particular transistor characteristics and supply voltage etc.

I've tried to tune R6 and R2 values to achieve full brightness range, but to do this R2 should be to low and T2 gets overheated.

I'm wondering is there some simple and clever design to solve such purpose (without multiple op-amp stages etc.)? Or maybe I should get away with 555 and use some other triangular wave generator (with output in range like 0 to 5 V) instead?

## 2 Answers

This circuit produces a linear-ish 0 to 40mA from a 4V to 8V signal:

simulate this circuit – Schematic created using CircuitLab

It works by scaling the input by a factor of $$\\frac{R_2}{R_1+R_2}=0.28\$$, to obtain a potential going from 1.1V to 2.2V. The darlington pair subtracts about $$\2 \times V_{BE} = 1.2V\$$ , and applies 0V to 1V across R3, setting the current in D1 to something between 0 and 40mA or so.

Given this input, at IN:

you get this current through D1:

• Yep, I came up with pretty much the same circuit. Thank you! Commented May 16, 2023 at 11:11

It sounds like the LED has current limiting built-in. If this is correct, then you can eliminate R1.

A real 0 V - to - 12 V driver probably is more complicated than you want to do, and is almost certainly unnecessary.

To make a full-range driver, you need to know the max voltage the LED needs to just barely come on, and the min voltage it needs to appear full-brightness. For example the LED might need a minimum of 4 V to barely glow, and anything above 10 V appears equally bright. With these numbers, the 555 capacitor waveform can be scaled to match.