In August of last year, I wrote an article describing a design based on Texas Instrument’s TPS61200 low input boost converter. Soon after that, Sparkfun expressed interest in producing and selling this design. In just six short months, a LiPower has become available from Sparkfun store. It is a switchable 5V/3.3V boost converter designed to run from single cell Lithium-Polymer battery.
The TPS61200 converter is extremely versatile. It will start into full load from 0.5V, it can output decent current, it can operate when input voltage is higher than output, it can be programmed to switch off at certain input voltage level, preventing rechargeable battery from going into polarity reversal. It can also do many other neat things – to get an idea, take a look at Application Notes section on TI site. However, it is very hard to make a product capable of all this neatness at the same time. Out of the box, LiPower is exactly what is stated on the product page – the output can be switched from 5V to 3.3V and the undervoltage lockout (UVLO) is set to 2.6V, which is minimum safe voltage for LiPos. In this article, I will show you how to modify converter’s UVLO threshold to make it suitable for other types of batteries. I will start from very simple mod which eliminates UVLO completely and then explain more advanced modification, where UVLO can be set to a certain voltage.
1. Simple UVLO eliminator
If you want to use primary cells, such as alkaline or non-rechargeable lithium, you don’t want your switch to turn off at 2.6V. On the contrary, you want your supply to run until the last drop of juice gets sucked out of the battery. To set UVLO to the minimum possible value, which is 250mV, UVLO pin must be tied to Vin; the easiest way to do it is to place a short across resistor R3 (see schematic). A picture on the left shows how to achieve this – the green asterisk marks the place on the boards where mod is located.
Take a 4-6″ piece of bare thin wire, tin one end of it. If you have a vise, clamp the board so that JST connector is on the left and component side is on top. Apply some liquid flux to R3 and C2. Take wire in the left hand and place tinned end between R3 and C2. Heat up with soldering iron until soldered. Cut the excess wire leaving a little extra in case you later decide to revert to the original configuration.
To demonstrate that you don’t need to be NASA-certified electrical assembly technician to solder SMT parts I tried to produce as sloppy a soldering job as I possibly can – despite somewhat scary look modified circuit works just fine. Look closely and you will notice that I inadvertently de-soldered R3 from its place. Should this happen to you, solder it back somewhere so you won’t lose it.
This is it – the modified LiPower will work as long as input voltage is higher than 250mV. Note, however, that maximum output current is going to be low as well. According to figure 1 of the datasheet, it will be around 50ma depending on output voltage.
One last thing about this mod. Since R4 – the lower resistor of the voltage divider is left in place, some current will flow through it all the time. The amount of current depends on input voltage and can be calculated using Ohm’s law; for example, for 3V input the current through R4 is 13uA (it’s micro-amperes). If such amount of current is of concern, remove R4 from the board (it is located on the right of R3) and make sure its pads are not shorted together.
Do not use this mod if your power source is of secondary type, such as a battery of NiMH cells. For rechargeable batteries, you do need UVLO and it has to be different from default UVLO setting. Keep reading – modifying UVLO is a liitle bit more involving.
2. Modifying UVLO. An introduction
The UVLO circuit of TPS61200 works like this: converter switches off when negative-going voltage on UVLO pin reaches 250mV. Converter switches on when positive-going voltage on UVLO pin reaches 350mV. This property is called a hysteresis. Hysteresis protects the converter circuit from oscillations when battery drains down to the threshold – we all know that when you remove the load, the battery voltage raises a little. Consequently, if there were no hysteresis, the converter would switch off at UVLO and then immediately switch on because unloaded battery voltage would raise above UVLO. It should be noted that purpose of capacitor C2 is to temporary disable the UVLO – it momentarily shorts R3 when power is applied making starting the converter from less than freshly charged battery possible.
To program UVLO threshold to a certain value, a voltage divider R3/R4 is used. It is set to output 250mV when it has desired voltage on the input. The input of a divider is connected to Vin, i.e., the battery. The formula for ULVO divider can be found on page 16 of the datasheet at the very top.
At present, two main types of rechargeable cells are used – Lithium and Nickel-Metal-Hydride. End of discharge voltage for NiMH is specified at 0.8V per cell and we are only really interested in UVLO values of 0.8V, 1.6V, and 2.4V for single, double and triple-cell MiMH batteries, respectively – the output voltage of four or more cell batteries is too high for TPS61200. 2.4V is close enough to default 2.6V, so LiPower can be used with 3-cell NiMH without modifications. We can see that we really only need to move UVLO voltage down from 2.6V and this can easily be done by soldering a resistor in parallel with R3. The value of resistance of R3 in parallel with this added resistor will be smaller than R3 alone, therefore, the output of the divider in relation to the input will “raise” and UVLO will go down.
3. Real life UVLO mod
Let’s say, we want to run 5V Arduino from single cell NiMH. We want LiPower to turn off when battery drains below 0.8V. First of all, we need to calculate new value for R3. From datasheet formula we find: R3 = 220K * ( 0.8/0.25 – 1 ) = 484K. Now we need to find a value for the resistor to put in parallel to existing 2M R3 to get 484K. The easiest way to do it is to launch this parallel resistor calculator, fill in R1 field with 2000, fill in Parallel resistance field with 484, press calculate and read result in R2 field. Regretfully, the 638.5224274406332 (kiloohms) value given is not very useful – we need real resistors. Two closest standard 1% resistor values (E96) are 634K and 649K. If we decide to use 634K, the UVLO will be set lower than 0.8V, run time will increase and battery life will decrease. Choosing 649K will have the opposite effect. There is no point in attempting to set UVLO precisely – NiMH cell has sharp voltage drop at the end of discharge and UVLO pin hysteresis will help keep converter off, so as long as UVLO is set in the ballpark, the cell will be OK.
When resistor value is known, it’s time to solder. Picture on the right shows the final result (click on the picture to make it bigger). Two 1/4W 5% resistors connected in series measure 325K-ish each. They are soldered across C2 instead of R3 because 0603 capacitor is slightly bigger and slightly less prone to de-soldering than 0603 resistor. Liberal application of solder flux is the key to a good solder joint. Quick testing of the modified circuit reveals that the TPS61200 switches off when input voltage falls to 0.863V and switches back on at 1.0V – given component tolerances this result is almost perfect.
Choosing parallel resistor for setting 1.6V is left as an exercise for the reader.
4. Final notes
Modifying LiPower’s UVLO settings board is simple, thanks to clever board layout and component value choice. With very little effort the board can be made suitable to work with one or two cell NiMH batteries. I am hoping that my explanations were helpful; if anything is not clear, please don’t hesitate to leave a comment with your questions. I am planning to write couple more articles explaining other LiPower board mods, such as solar cell MPPT tracker and white LED driver – stay tuned!
Oleg.
Related posts:



Dear Oleg:
my name is kent.
Sorry to bother you.
I send you this mail from Taiwan.
Glad to see your article about modifying TPS61200 undervoltage lockout.
I got TPS61200 samples 3pcs from TI
and going to make a D-D conve charge my cell phone
with rechargeable batteries 18650 type.
I want D-D conve to turn off when battery drains below 3V.
value for R3=2.0M and R4=180K then UVLU will be 3.03V
follow datasheet (without C2)
but it can’t switches on at Vin battery=3.7V
Could you teach me how does C2 work
and how to calculate and decide the C2 value
if change R3 value should change too.
to keep necessary RC time constant of R3 & C2
if C2 value more or less what it will be.
my poor English very sorry
Thanks!!
Best regards,
Kent
2011-16-march
UVLO has 50mv hysteresis, which means that voltage going up shall be larger than ((UVLO+50mv)*(divider ratio)) to turn the converter on. A capacitor across upper resistor in UVLO voltage divider shorts it momentarily so UVLO is off for the period of time. The value is not critical, 0.1uF will work.
Hi Oleg,
I am trying to use a 3.7V 2000mAh LiPo battery to power my Quadrabot. I need the batter to power the Arduino Mini Pro 3.3V board and 12x HXT900 servos. I dont think that the LiPower is giving enough current to power everything. Is there a way to boost the output current?
pre thanks
Output current of TPS61200 is internally limited. If you need more current, use another controller.
Any plans to produce a board where UVLO is jumper selectable? You may not need to NASA certified, but I’m sitting here with R3, C1 and C2 all lost inside different blobs of solder on my desk, so it seems you have to be a little better than me
I’d love to see a board revision that has easier UVLO modability too. These resistors and caps are really too small to solder through-hole resistors to it. Atleast, they can snap off too easily.
Hi Oleg,
Many thanks for this tutorial, detailed explanations and pictures!
It was easy to follow and great fun to do the UVLO mod.
I’m trying to connect to tps6120 Solar power 0.7 watts, but the scheme does not start. What can you advise?
try to start it without load. When you get output, load it. If it won’t hold then load is too heavy for the panel/amount of light
i adjust Vout to 5V, & Vin>3V & need output current to be in range 0.6A
but the output current that IC supplies for me is in range 0.09A
would you help me:
- how to adjust the limited current of IC?
or
- what parameter i should change?
Your prompt reply is highly appreciated.
Thank you.
How do you measure it? Does Vin stays at 5V when you load the converter?
I connect a 3.7V Li-ion battery @ output
Then increase Vin from 3.2V to 5V
but Iout (which i measure by ammeter) changes fom 0 to 0.09A max.
Does your battery have protection circuit inside? If yes, then it likely limits input current at such a high voltage. If no, the life of your battery will be shortened significantly (it could be dead already); the battery may also ignite – I suggest you to stop doing this.
yes my battery has a protection circuit inside
my design is to charge a mobile battery
i sometimes test by charging mobile directly through USB
of to battery terminals (that has protection circuit)
but another something happened with a test with me:
that one mobile was low battery, when connected it with output, it drains 0.3 .. but other mobiles also low battery didn’t take above 0.09A!
can you help me please?
You need LiPo battery charger circuit. They are aplenty, just google around.
yes my battery has a protection circuit inside
my design is to charge a mobile battery
i sometimes test by charging mobile directly through USB
of to battery terminals (that has protection circuit)
but another something happened with a test with me:
that one mobile was low battery, when connected it with output, it drains 0.3 .. but other mobiles also low battery didn’t take above 0.09A!
can you help me please?
Guys,
I found that to get the circuit working at 3.3v with the UVLO removed (as per the article) requires not only connecting the UVLO pin to VIN as described in the article, but also the removal of R4, as otherwise R4 upsets VOut.
Thanks
Kev
I think you shorted something out. Look at the value of R4 and how it is connected – it can’t possibly “upset” Vout (whatever this means) if everything is wired correctly. If it’s shorted out then UVLO will trip.
hi ,
i want to know, if i use Vin 0.3v , can the li power boost to 5v and how about the amp? It possible to charging the smart phone as i-phone or sony walkman ? thanks
See the datasheet. The current is going to be 10ma, it will take a lot of time to charge anything with this kind of current.
Oleg,
Thanks for the design of this circuit. I’m trying to use it to pull a constant voltage (5v) from the tail-end of a constant current supply (for an LED matrix), but it doesn’t want to work. If I power the LIpower from a battery, it runs fine. When I power it from the supply, I get (relatively) high frequency, low-voltage oscillations. I wonder if the LIpower is shutting down on initialization because the input voltage is dropping too low under while the supply tries to maintain its constant current.
Any ideas? Should this work? I’m considering doing the UVLO mod to see if it makes a difference, but I haven’t brought myself to hacking a perfectly good voltage regulator yet. Last resort, I guess.
What is the input voltage to the regulator?
5.2v without load. When its fully loaded with all the LEDs on, it drops to about 3.8v.
Been doing a little more testing today. I think I might have a bad board. I noticed that just touching the PCB around the 3.3/5v solder bridge (SJ1) and what appears to be the pad-side of R6, that I could get the voltage to jump up around 4.8 to 5v under load, sufficient to drive the Pi. I have two boards and I’ve only tried one of the boards so far since it requires soldering into the application. In any case, both boards have the same resistor values for R3(500k), R4(200k), and R6(200k), which are not matching the schematic. R5 and R7 do match the schematic values. My meter is unable to measure capacitance, so I can’t check those components. Continuity on traces seems to be good. idk.
I eventually broke down and swapped out the first LiPower with the second one.. It is behaving properly. I’m going to drop a line to SparkFun and see what can be done for the faulty one.
It seems that a power pad on the bottom of the TPS61200 package is not soldered. Try to reflow the board once again on a skillet.
Hi Oleg
Thanks for sharing this valuable experience for TPS61200. I want to use this IC in my project but I do not understand the behaviour when VIN is bigger than VOUT. I will have a single cell Lipo battery in the input and I will power the MCU and sensors with 3.3V output of TPS61200.
Datasheet says “power save” is forced when downregulating. Should I connect PS pin to GND or does it mean IC automatically enables PS although PS pin is connected to VIN (high).
Briefly, do I need a special configuration to get 3.3V stable output during lipo battery usage from a fully charged 4.2V state to 2.6V UVLO state.
What happens when you turn PS on and off while downregulating?
In the data sheet, it says
“The Power Save mode can be disabled by programming a high at the PS pin. In Down Conversion mode, Power Save mode is always enabled and the device cannot be forced into fixed frequency operation at light loads. The
PS input supports standard logic thresholds.”
What does this mean? Is it enough to enable powersave (PS pin LOW) to have 3.3V output even input voltage is higher than 3.3V I do not have any TPS61200, so I do not have any practical experience.
It means don’t worry about PS if you down convert.