Introduction: The Any Value Joule Thief - Single AA High Power White LED Driver
There are plenty of Joule Thief project around, but most seems to require you to coil a ferrite core transformer, a puzzling task if you are new to electronics, and offers little to learn about its workings except following terse instructions.
Hence this instructable offering a more satisfying way to build a neat useful little circuit, allowing you to calculate around the components that you might already have, to the current you want to deliver to the LED.
The uploaded image of schematic is pretty woeful, for a better capture, download joule_thief.pdf
On the first schematic, left side, is the basic design, you will need:
2 x General purpose NPN transistor (e.g. 2n4401 or 2n2222A or 2n3904)
2 x 5% tolerance 1/8W rating resistor
2 x 10% tolerance capacitors (these can be ceramic, electrolytic or polypropylene, whatever suits the value)
1 x Inductor (more on this later)
1 x Switch (SPST or if needed DPDT depending on how you want the circuit to function)
1 x AA battery holder
Some* white LEDs - use only one single diode drop (~3.3v), connect in several parallel if need to, but this circuit is not suitable for a stack of diodes, because of the limits of reverse Vbe breakdown at ~5V.
*Using diode in parallel is not always ideal, in particular with white LED, as the forward bias voltage may not match well, hence you may get varying brightness from each of them.
Briefly, how this circuit works
- On powering up, with a ramping supply (0->1.2V)
- Transistor Q2 bias up, an increasing current is delivered through the inductor, a delta change in current maintains a voltage drop across the inductor (V = L*di/dt), this current is limited by R1 and gain up by the ßeta of Q2
- Q1 also get bias up but with a weaker current as there's an IR drop across R2, below Vbe of Q2, Vbe = kT/q*ln(Ic/Is)
- Once the current through the inductor stops increasing, the voltage across the inductor collapses to a short to the supply rail, with the capacitive coupling of C2, this tugs the base of Q1 high, turning it hard on
- Q1 turning hard on shorts out C1 to Vcesat (~0.3V), this also pulls Q2 off.
- The current through the inductor, not ceasing (as what inductor should do) then dump its current through the LED forward bias it (~3.3v), hence the boosting action of this circuit.
- Meanwhile, C1 is now being charged up via R1, and when the voltage across C1 reaches the forward bias Vbe (~0.7V) of Q2, it turns on, collapsing the voltage across of the LED (turning it off) to Vcesat (~0.3V).
- When this happens, C2 comes into action, plunging the Vbe of Q1 below 0v, turning it off.
- With Q1 off, once again the current through R1 gets ßeta up with Q2 charging up the inductor current and the cycle repeats.
- Until the battery depletes of course...
The steps below allow you to roughly calculate the value you will need, based on your choices of components
- Let Vbatt = 1.2V
The battery voltage is based on rechargeable, but you could still use alkaline = 1.5V
- Decide what is the nominal current to drive you white LED
In this case I choose a nominal I_{LED} = 300mA
- Decide the value of inductor you can use
Now this circuit, it is possible to use any value of inductor between 1mH to 10uH, the ideal is somewhere in-between these. Chosen value is use for calculation. The inductor is usually harder to obtain in terms of correct value and often cost more than capacitors or resistor.
I choose L = 100uH, with max current rating of +30% of I_{LED} = 390mA
You can use differential EMI power choke (those with 2 leads), the known difference between these and those meant specifically for switching DC converters, is so said that power choke tended to have distinct lossy parallel parasitic impedance and avoid the peaking in impedance at self resonance frequency.
- Calculate the value of R1
See (2) on how this circuit works... ßeta = I_{collector}/I_{base} of a bipolar transistor
Let ßeta_{2} of Q2 = 30, Vbe_{2} = 0.8V, Vbatt = 1.2, I_{Lmax} = 390mA
Vbe_{2} = 0.8 for collector current (I_{LED}) in hundreds of mA
Vbe_{2} = 0.7 for collector current (I_{LED}) in tens of mA
The ßeta is selected at 30 because when a bipolar transistor is in saturation, its ßeta tails off and can drop as low as 10, from a nominal of 100.
R1 = ( Vbatt - Vbe_{2} ) * ßeta_{2} / I_{Lmax}= 30.77, round up to nearest standard value, 33 ohm.
- Find the 'on' time of the LED, this is (6) and (7) on how this circuit works...
Inductor voltage V_{L} = L * di/dt
V_{L} = Vbatt - Vcesat_{2}, di or delta i is 30% of I_{LED} x 2 = 180mA
The reason for selecting delta i = +/- 30% of I_{LED} is that we don't the inductor current is be discontinuous (i.e current flowing through the inductor shouldn't go to zero/terminate)
where I chose, transistor Vce saturation voltage, Vcesat_{2} = 0.3V, usually this is between 0.1~0.4V, depending on the nominal I_{LED} you have chosen and the transistor, for collector current in tens of mA, use 0.1V, for excess of hundreds of mA use 0.3V
Substituting the values dt = (L * di ) / (Vbatt - Vcesat2) = (100u * 180mA) / (1.2V - 0.3V) = 20us
dt or the LED 'on' time will be 20us
- Find C1 on schematic
R1 * C1 sets the time constant in which LED stays on, and we have previous obtain the figure 20us (dt)
So C1 charges up from Vcesat_{1} (of Q1) to Vbe_{2} (Q2 turn on at 0.7V)
Since Q1 sink a collector current of only tens of mA, let Vcesat_{1} = 0.1V
C1 = -(dt / R1 ) / ln( (Vbe_{2} - Vcesat_{1}) / Vbatt )
C1 = -( 20us / 33ohm) / ln( (0.7V - 0.1V)/1.2V ) = 420nF, ideally round down to nearest standard value (ensuring the inductor never goes discontinuous) or use next closest value which is 470nF, hence I am using this.
- Find R2 and C2
Now here's a short cut to these R2 = 100 * R1, and R1*C1 = 1.5 * R2 * C2, hence C1 = 150 * C2
So R1 = 33 ohm, R2 = 3.3kohm
And C1 = 470nF C2 = 3.13nF, rounding up or nearest closest value = 2.2nF
- Recap of components you had work out
For I_{LED }= 300mA:
L= 100uH
R1 = 33ohm
R2 = 3.3Kohm
C1 = 470nF
C2 = 2.2nF
Q1 and Q2 = 2n4401
- An exercise for I_{LED} = 50mA, wimpy 5mm LED
Chose L = 47uH, with max I_{Lmax} = 50mA + 30% = 65mA
R1 = ( Vbatt - Vbe_{2} ) * ßeta_{2} / I_{Lmax}
Let Vbatt = 1.2V, Vbe2 = 0.7V (tens of mA for I_{LED}), ßeta2 = 30, I_{Lmax} = 65mA
R1 = 230.76ohm ~220ohm
R2 = 100 * R1 = 22Kohm
LED 'on' time dt = (L * di ) / (Vbatt - Vcesat_{2})
For Vcesat_{2} = 0.1V ( I_{LED} is tens of mA )and di = 30% of 50mA * 2 = 30mA
dt = 1.28us
C1 = -(dt / R1 ) / ln( (Vbe_{2} - Vcesat_{1}) / Vbatt ), Vbe_{2} = 0.7V and Vcesat_{1} = 0.1
C1 = 8.39nF ~ 10nF
C2 = 10nF / 150 = 66.7pF ~100pF
- For 2AA battery operation
The 2 schematic show how you can include a boost mode, allowing you to have a switch between normal brightness and high brightness, or even some variable resistor to control the brightness.
Step 1: Construction Details
I use prototype strip board for this.
4x7 is all you need for this circuit but of course you can be more generous on your own strip board.
See photo for drawing of how to utilise the tiny 4x7 board.
Step 2: Simulation Addendum
SPICE simulation models
.model 2N4401 NPN(Is=26.03f Xti=3 Eg=1.11 Vaf=90.7 Bf=4.292K Ne=1.244
+ Ise=26.03f Ikf=.2061 Xtb=1.5 Br=1.01 Nc=2 Isc=0 Ikr=0 Rc=.5
+ Cjc=11.01p Mjc=.3763 Vjc=.75 Fc=.5 Cje=24.07p Mje=.3641 Vje=.75
+ Tr=233.7n Tf=466.5p Itf=0 Vtf=0 Xtf=0 Rb=10)
* Fairchild pid=2N4400 case=TO92 * 88-09-13 bam creation
.model PN2222A NPN(Is=14.34f Xti=3 Eg=1.11 Vaf=74.03 Bf=255.9 Ne=1.307
+ Ise=14.34f Ikf=.2847 Xtb=1.5 Br=6.092 Nc=2 Isc=0 Ikr=0 Rc=1
+ Cjc=7.306p Mjc=.3416 Vjc=.75 Fc=.5 Cje=22.01p Mje=.377 Vje=.75
+ Tr=46.91n Tf=411.1p Itf=.6 Vtf=1.7 Xtf=3 Rb=10)
* Fairchild pid=19 case=TO92 * 88-09-07 bam creation
Cree http://www.cree.com/products/xlamp_mle.asp
.MODEL MLE D + IS=1.7448E-21 + N=2.4195 + RS=2.1425 + XTI=45.900 + EG=2.5000
What an awesome article! Thank you for doing this. It is a great help to us newbies trying to understand the math.
Cheers!
Would I be able to use a 18650 battery and replacing the Hi and Lo with a potentiometer?
hello, thanks for sharing your work with all of us, i'd like to ask you something,is there any other element i can use instead of an inductor but that would fucntion the same way? I've been trying to get an iductor for quite sometime to make this circuit as shown but the answer I always get is " we don't have them" , Im working on a solar garden light project in which I intend to hook up 2X1 w High power Leds, my battery bank is 6V 4Ah(20HR) and most importantly my solar cell is 7v,130 mA, your advise will be greatly appreciated.thanks
What values did you use for R1 and R2?