Introduction: The Any Value Joule Thief - Single AA High Power White LED Driver

This instructable will show you how to build a single  AA battery white LED driver that can deliver more 200mW, hence allowing you to use high power brighter LEDs, not those wimpy 5mm standard LED, and  it operates with an efficiency greater than 70%!

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
  1. On powering up, with a ramping supply (0->1.2V)
  2. 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
  3. 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) 
  4. 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
  5. Q1 turning hard on shorts out C1 to Vcesat (~0.3V), this also pulls Q2 off.
  6. 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.
  7. 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).
  8. When this happens, C2 comes into action, plunging the Vbe of Q1 below 0v, turning it off.
  9. With Q1 off, once again the current through R1 gets ßeta up with Q2 charging up the inductor current and the cycle repeats.
  10. Until the battery depletes of course...
Now for the real work, getting the values of components to drive the current needed for your white LED.

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 ILED = 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 ILED = 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 = Icollector/Ibase of a bipolar transistor 

Let ßeta2 of Q2 = 30, Vbe2 = 0.8V, Vbatt = 1.2, ILmax = 390mA

Vbe2 = 0.8 for collector current (ILED) in hundreds of mA
Vbe2 = 0.7 for collector current (ILED) 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  - Vbe2 ) * ßeta2 / ILmax= 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 VL = L * di/dt

VL = Vbatt - Vcesat2, di or delta i is 30% of ILED x 2  = 180mA

The reason for selecting delta i = +/- 30% of ILED 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,  Vcesat2 = 0.3V, usually this is between 0.1~0.4V, depending  on the nominal ILED 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 Vcesat1 (of Q1) to Vbe2 (Q2 turn on at 0.7V)

Since Q1 sink a collector current of only tens of mA, let Vcesat1 = 0.1V 

C1 = -(dt / R1 )  /  ln( (Vbe2 - Vcesat1) / 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 ILED = 300mA:
L= 100uH
R1 = 33ohm
R2 = 3.3Kohm
C1 = 470nF
C2 = 2.2nF
Q1 and Q2 = 2n4401

  • An exercise for ILED = 50mA, wimpy 5mm LED

Chose L = 47uH, with max ILmax = 50mA + 30% = 65mA

R1 = ( Vbatt - Vbe2 ) * ßeta2 / ILmax

Let Vbatt = 1.2V, Vbe2 = 0.7V (tens of mA for ILED), ßeta2 = 30, ILmax = 65mA

R1 = 230.76ohm ~220ohm

R2 = 100 * R1 = 22Kohm

LED 'on' time dt = (L * di ) / (Vbatt - Vcesat2)

For Vcesat2 = 0.1V ( ILED is tens of mA )and di =  30% of 50mA *  2 = 30mA

dt = 1.28us

C1 = -(dt / R1 ) / ln( (Vbe2 - Vcesat1) / Vbatt ), Vbe2 = 0.7V and Vcesat1 = 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

1st simulation plot for 1AA operation, 2nd simulation plot for 2AA operation.

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