Joule Thief Efficiency

The Joule Thief is a deceptively simple circuit of enduring popularity. With just a handful of components, a transistor, a resistor, and a small transformer, it can coax enough useful energy to light an LED from batteries that would normally be considered “dead”.

But behind that simplicity is a surprisingly interesting bit of physics and electronics. The Joule Thief is essentially a self-oscillating boost converter. In this post, I’m going to take a closer look at what’s really happening inside the circuit with a particular eye toward circuit efficiency.

For those only interest in the results. I suggest you jump to the summary.

All data used gathered from a real joule thief circuit used in this article is available here. (LibreCalc + raw CSV data)

What You’ll Need

Schematic

Here I’ve replicated the standard Joule Thief circuit with a few minor modifications. I’ve introduced a 1Ω sense resistor (Rsense) to monitor the current through the primary coil, and replaced the usual LED output with a Schottky rectifier diode (D1) and a fixed 200Ω load. C1 has also been added to smooth the output.

The circuit will be powered from a fixed 1V supply to approximate the voltage of an almost-empty AA battery.

Transformer

I constructed the transformer on a green MnZn core with dimensions:

  • Outer Diameter: 22 mm
  • Inner Diameter: 14 mm
  • Height: 8mm

The winding consists of 10 bifilar turns of 0.5 mm enameled copper wire. The measured electrical characteristics are:

  • 0.657 Ω resistance
  • 274.5 μH inductance
The Toroidal transformer used for these experiments

Primary Coil Branch Measurements

First I’m going to analyze the current through the transformer’s primary coil.

The current through the primary coil is observed by capturing the voltage waveform across RSense over a complete cycle.

Primary Current (CHAN1) and Transistor base voltage (CHAN2)
1V = 1A

In the above chart, CHAN1 (Red) is the voltage across Rsense, and CHAN2 (Blue) represents the transistor’s base voltage.

The primary coil is charging when CHAN2 is high, and discharging when it is low.

Most of the key performance metrics can be derived from this chart:

MeasurementValue
On Period (μs)33.650
Off Period (μs)13.500
Duty Cycle0.714
Switching Frequency (Hz)21,208
Peak Primary Current (mA)120
RMS Primary Current (mA)65.833
Average Primary Current (mA)56.730
Average Primary Voltage (V)0.920
RMS Primary Current On (mA)70.667
Average Primary Current Off (mA)43.705

RMS Primary Current

This is the current through the primary winding, calculated by taking the RMS of every data point over a full switching cycle—from zero primary current back to zero primary current. This value will be useful for calculating resistive losses that occur during the entire switching cycle.

Average Primary Current

To accurately calculate the power drawn from the battery and the resulting efficiency of the Joule thief, I use the average primary voltage and average primary current rather than their RMS values. While RMS is useful for determining resistive heating, it can overestimate the energy drawn from a battery when voltage and current are not perfectly proportional — which is the case in the inductive, pulsed waveforms of the primary winding.

RMS Primary Current On

The root mean square (RMS) current calculated over the 33 µs interval during which Q1 is conducting. This value will be useful later when calculating resistive losses that occur only during the on portion of the switching cycle.

Average Primary Current Off

The average current over the interval during which Q1 is not conducting. It will be useful for calculating D1s losses, which do not have an RMS ( I2) relationship with voltage.

Average Primary Voltage

The average voltage applied to the primary winding branch. It is slightly less than the 1 V supply due to the voltage drop across Rsense. To account for this loss when calculating input power, the voltage after RSense is averaged over a full switching cycle.

Feedback Coil Branch Measurements

The feedback coil branch is analyzed in much the same way as the primary coil branch, except the 1.5 kΩ RBase resistor is used to determine the current. RBase is positioned after the feedback coil, but it is an equally valid location to measure the current, since Kirchhoff’s current law states that the current through a branch is the same at every point along that branch.

For readability, I’ve normalized the following chart so that 1 V corresponds to 1 A, just like in the previous chart.

Current through feedback branch. 1 V = 1 A

As before, I extract and calculate the RMS current through this branch. The RMS voltage is simply 1 V, since this branch is connected directly to the supply and contains negligible ripple.

MeasurementValue
RMS Feedback Current (mA)0.601
RMS Feedback Current On (mA)0.711
Feedback Voltage (V)1.00
RBase(Ω)1500

Collector Emitter Junction Measurements

The situation becomes more complex at the collector because the current has two possible branches:

  • Through the schottky diode D1
  • Through the collector emitter junction of Q1

However, the collector voltage waveform provides a useful simplification:

CHAN1 (Collector Voltage) CHAN1 (Base Voltage)

When the transistor turns on, the collector voltage is pulled below the forward voltage of D1 for nearly the entire on-interval, except for a brief moment during Q1’s turn-off transition. This means current flows through both paths simultaneously only for a very short switching interval. With this assumption, the collector–emitter losses of Q1 can be analyzed during the on-interval and the diode losses of D1 during the off-interval with negligible error.

The following data better captures the area of interest:

CHAN1 (Collector Voltage) CHAN1 (Base Voltage)

Again I calculated required measurements from this chart

MeasurementValue
RMS Collector Voltage On (V)0.140

Diode Junction Measurements

Next I need to determine the forward voltage of both the base–emitter junction of Q1 and the anode–cathode junction of D1 while they are forward biased.

CHAN1 – Q1 BE Voltage
CHAN 1 D1 Voltage

Q1‘s Base-Emitter junction is only forward biased when Q1 is On, and D1 is forward biased when Q1 is off, so we measure the RMS voltage over a different period for each.

MeasurementValueComment
Average Q1 BE Forward On (V)0.742Vfwd during the Q1 on part of the cycle
Average D1 Forward Off (V)0.315Vfwd during the Q1 off part of the cycle

Output Measurements

Lastly, I measure the output voltage. The RMS value is used to account for the small amount of ripple remaining on the output, even with C1 providing filtering.

MeasurementValue
RMS Output Voltage (V)2.580V
RLoad (Ω)200

Measurements Summary

Now that I’ve performed all the measurements. I can gather all of them in one place ready to do some calculations

MeasurementValueComment
Primary Branch
Average Primary Voltage (V)0.924Used for input power
RMS Primary Current (mA)65.833
Average Primary Current (mA)56.730Used for input power
RMS Primary Current On (mA)70.667During Q1 on period
Average Primary Current Off (mA)43.704During Q1 off period
Peak Primary Current (mA)120Peak inductor energy
RMS Output Voltage (V)2.580
RMS Collector Voltage On (V)0.140During Q1 on period
RMS D1 Forward Off (V)0.337During Q1 off period
RLoad (Ω)200
RWinding (Ω)0.657Same on both windings
Feedback Branch
Feedback Voltage (V)1.00Supply voltage
RMS Feedback Current (mA)0.601
Average Feedback Current (mA)0.495Used for input power
RMS Feedback Current On (mA)0.711During Q1 on period
RMS Q1 BE Forward On (V)0.742During Q1 on period
RBase (Ω)1500
Frequency
On Period (μs)33.650
Off Period (μs)13.500
Duty Cycle0.714
Switching Frequency (Hz)21,208

Total Power Supplied

The total power supplied to the circuit from the lab PSU is simply the power delivered to the primary branch plus the power delivered to the secondary branch:

Primary Supplied Power (mW): 52.419
P=Vavg×IavgP = V_\text{avg} \times I_\text{avg}
P=AvgPrimaryVoltage×AvgPrimaryCurrentP = AvgPrimary Voltage \times AvgPrimary Current
Feedback Supplied Power (mW): 0.495
P=Vavg×IavgP = V_\text{avg} \times I_\text{avg}
P=AvgFeedbackVoltage×AvgFeedbackCurrentP = Avg Feedback Voltage \times Avg Feedback Current
Total Supplied Power (mW): 52.914
Ptotal=PrimaryPower+FeedbackPowerP_\text{total} = PrimaryPower + FeedbackPower

I probably could have ignored feedback power here, its impact on total efficiency is very small.

Resistive Losses

Next I’ll calculate resistive losses, these are the simplest.

I’ll start with the power delivered to the load — after that I can calculate our overall efficiency

Power dissipated in the load is an I^2 * R calculation so needs to use RMS Current values:

Load Power (mW): 33.282
P=V2RP = \frac{V^2}{R}
P=RMSOutputVoltage2RLoadP = \frac{RMSOutputVoltage^2}{RLoad}

Finally I can calculate the total efficiency:

Efficiency (%): 62.90
P=LoadPowerInputPower×100P = \frac{Load Power}{InputPower} \times 100

Losses for other resistive elements in the circuit the same way:

Primary Winding Loss (mW): 2.852
P=I2×RP = I^2 \times R
P=RMSPrimaryCurrent2×RWindingP = RMSPrimaryCurrent^2 \times RWinding
Feedback Winding Loss (mW): 0.000
P=I2×RP = I^2 \times R
P=RMSFeedbackCurrent2×RWindingP = RMSFeedbackCurrent^2 \times RWinding

Looks like I could have ignored feedback resistive losses. This isn’t too surprising as the current through the feedback winding is small.

RBase Loss (mW): 0.542
P=I2×RP = I^2 \times R
P=RMSFeedbackCurrent2RBaseP = RMSFeedbackCurrent^2 * RBase

We can safely ignore Rsense here, since the voltage drop across this resistor is already accounted for in the RMS Primary Voltage, which was measured after Rsense.

Junction Losses

The junction losses do not follow an I2 relationship, their voltage is almost constant with current, so as an approximation we calculate power using the average forward voltage drop and current over the conduction cycle:

Q1 BE Junction Loss (mW): 0.377

TODO: This approximation overestimates power slightly

P=D×VRMS,on×IRMS,onP = D \times V_{\text{RMS,on}} \times I_{\text{RMS,on}}
P=D×RMSQ1BEForwardOn×RMSFeedbackCurrentOnP = D \times RMS Q1 BE Forward On \times RMS Feedback Current On


(Multiplying by the duty cycle D converts the power during the on period to an average power over the full cycle)

Q1 CE Junction Loss (mW): 7.061

TODO: This approximation overestimates power slightly

P=D×VRMS,on×IRMS,onP = D \times V_{\text{RMS,on}} \times I_{\text{RMS,on}}
P=D×RMSCollectorVoltageOn×RMSPrimaryCurrentOnP = D \times RMSCollectorVoltageOn \times RMSPrimaryCurrentOn


(Multiplying by the duty cycle D converts the power during the on period to an average power over the full cycle)

D1 Loss (mW): 3.942 mW
P=(1D)×Vavg,offIavg,offP = (1-D) \times V_\text{avg,off} * I_\text{avg,off}
P=(1D)×AvgD1ForwardOff×AvgPrimaryCurrentOffP = (1-D) \times AvgD1ForwardOff \times AvgPrimaryCurrentOff


(Multiplying by the duty cycle (1-D) converts the power during the off period to an average power over the full cycle)

Efficiency Summary

When operating from 1V the joule thief used 60.5 mW and delivered 33.28 mW to the load.

For a total efficiency of ~62.90%.

Per-Component Losses

Most of the power is delivered to the load, while resistive and junction losses account for smaller fractions.

Loss Remaining (mW)Percent Total (%)
Total Supplied Power52.914100.00%
RPrimaryWinding-2.852-5.39%
D1-3.942-7.45%
Q1 CE Junction-7.061-13.34%
Q1 BE Junction-0.377-0.71%
RBase-0.542-1.02%
RLoad-33.282-62.90%
RFeedBackWinding0.0000.00%
Remaining4.8599.18%

Most of the losses occur in Q1 and D1

Replacing Q1 and D1 with MOSFETs in a synchronous configuration could significantly reduce junction losses, raising overall efficiency to around 80 %

There is also a relatively large unaccounted for loss of about 9 %. Most of this loss is likely losses in the core from hysteresis and other magnetization effects.

Considering the simplicity of the circuit, the Joule Thief performs quite well. If higher efficiency is desired, reducing switching losses seems the most promising place to start.

Leave a Reply

Discover more from Silicon Junction

Subscribe now to keep reading and get access to the full archive.

Continue reading