In the past I already tested a nice boost circuit that allows us to power a 3 V LED with a discharged battery (around 1 V or less). This circuit uses just one transistor, one resistor and a small transformer (1:1 ratio) and it is better known, at least on the internet, under the name of “Joule Thief”.
The theory behind this circuit seems to be obscure as we can find lot of comments and questions like: “can I add turns ?”, “can I increase the resistor ?”, “will it work with two batteries ?” and so on…
I decided to figure out the working mechanism of this smart circuit in order to understand the rules behind it and try to improve the efficiency. I’ll carry out a theoretical analysis, supported by some scope screen-shots.
I’ll split the study in two parts:
I- Transistor ON
Let’s imagine to link the circuit to the battery. Forget the transformer for a second. The current has three possible paths:
- It flows through the secondary and enter into the emitter of the BJT (=> MAYBE, only if the transistor is turned on somehow, which means vBE >= vBEon)
- It flows through the secondary and enter into the LED (=> NO, since the Vt of the LED is about 3 V and our battery is just 1 V. we can’t forward bias it.)
- It flows through the primary and enter into the base of the BJT (=> YES, since the turn on-voltage of the base of a silicon transistor is about 0,6V)
We can conclude that the transistor is ON, the next step is to determine the currents flowing through its terminals and its region of operation.
The transformer helps us in this task: iB (base current) flows in the primary winding, iC (collector current) flows in the secondary. According to the laws of an ideal transformer (the sum of the currents is zero), these two currents are equals (iB = iC). We can therefore state that the transistor is not in the active forward region (iC should be hFE times greater than iB, this is not the case) but it is more likely in the saturation region.
It’s time to study the voltage levels across the transformer. On the secondary winding we have the BJT in saturation (vCE = vCEsat ~ 0,2V) so almost the entire VCC is presented across the transformer. This tension -(VCC – vCEsat) is presented on the primary side (ideal transformer).
Let’s calculate the voltage across the base resistor. It easy to compute and it is equals to VCC minus the voltage of the primary winding and minus the voltage of the base-emitter junction, therefore vR = VCC – vPRI – vBEon (in which we can substitute vPRI with – VCC + vCEsat as seen earlier).
Now we can determine the current flowing through the resistor iR, which is also the base current iB.
iB = iR = vR / R = ( VCC + VCC – vCEsat – vBEon ) / R
Under the assumption of a 1V battery and a silicon BJT we can state that VCC is almost equal to (vCEsat + vBEon). Thus, the approximate version of the current is:
iB = VCC / R
Before we treated our transformer as an ideal component but that is not 100% exact. A real transformer has also a magnetizing inductance, we’ll call it L. This impedance is responsible of a build up of energy inside the magnetic core (later used to light up the led). Let’s put L in parallel to the secondary winding to facilitate our study.
As every inductance, its current is a function of the voltage across the terminals and its value in Henry:
iL(t) = (vSEC / L)*t = [(VCC – vCEsat)/L]*t ~ (VCC/L)*t
The total current passing through the collector of the BJT is therefore the sum of two current:
- the copy on the secondary winding of the base current, created by the ideal transformer
- the magnetizing current that builds up inside the magnetizing inductance
so iC(t) = iB + iL(t).
Every voltage and current are now known and life is good… until the switching time.
As we have seen, the magnetizing inductance increases the collector current, linearly with the time. After a certain delay, the current through the transistor will be too high for the actual base current. An increase of iB would be necessary but it is not possible, because it is fixed by resistor R. The BJT tries to compensate this, increasing the vCE voltage but, because of the transformer, this will trigger a reduction of the tension across the base resistance. The result is a decreasing in the base current (exactly the opposite of what would be necessary to keep the BJT conducting in saturation). This trigger a new increase in vCE, which trigger a new decrease of iB… and so on. Until the complete turn off of the transistor.
To resume: when the magnetizing current reach a certain value (tens of time bigger than iB), the BJT is forced to change its operation region but the only viable solution in an automatic turn-off.
The current switch-off threshold is fixed by the temperature, the current gain of the transistor (hFE) and the base current.
II- Transistor OFF
The magnetizing current, now at its maximum value of iLmax, can’t disappear and therefore it needs a way to flow. Its previous path, the BJT, in now OFF thus the only solution is the LED. Despite the high threshold level, it is forward biased and so the LED finally lights up.
The voltage on the secondary is now:
vSEC = vLED – VCC (positive, because we assume that vLED > VCC).
This voltage is transfered to the primary winding as well, keeping the BJT base reverse biased.
In this case the magnetizing inductance L is forced to decrease its current:
iL(t) = iLmax – (vSEC / L)*t = iLmax – (vLED – VCC)/L*t
After a certain amount of time, iL current reaches 0 and the LED turns off. All the energy stored as magnetic field inside the transformer is now gone and a new cycle can start.
Warning: use always a load, otherwise high (BJT killer) tensions will build up across the transformer.
I measured the current with a 8 Ohm shunt. In picture 1 is very easy to see the positive ramp caused by the small build up of magnetizing current created by VCC (@1V) and the fast discharge caused by the LED (@3,5V)
Figure 1: magnetizing current (peak: 45 mA, freq: 65 kHz)
In picture 2 I changed the base resistor to a smaller one. Increasing the base current, an higher current peak is reached, as stated in the theoretical part. This means a brighter LED.
Figure 2: magnetizing current (peak: 58 mA, freq: 50 kHz)
The slopes of the current are unchanged (only modification of VCC, vLED or L can influence that).
The aim is to have the good amount of current through the LED while keeping the base current (which is wasted) as small as possible.
Keeping the switching frequency low can reduce BJT losses as well.
The key factor to efficiency is the BJT NPN. Find an high hFE transistor (high means at least 100, better if 300). This will let you reduce the base current without sacrificing LED brightness.
Avoid devices with Absolute Maximum Rating under 50V and 0,2 A.
I tested 2N3904 and BC547 (X13003 as well, easily found in CFL lamps, solid but it has low hFE).
Start with a base resistor of 1k and try to maximize it. Try to reach a good trade-off between brightness and battery current.
The number of turns in the windings is not very critical: i tried from 3 to A LOT, an always worked (but remember that the frequency can be lowered to the audible range). Between 7 and 12 turns should be in the safe area of 40-80 kHz.
In the next 3 photos you can see some of the transformers that I used in my circuit (they all come from disposed circuits like CFL lamps).
The next scheme can guide you in the setup/adjust process.
I tried to explain all I learned about this boost circuit. This report can be a good starting point for other studies and tests. I estimated a total efficiency of about 72%, not bad for such a small circuit.
Where I found out the circuit:
A lot of photos about the construction: