A DC boost converter designed around a single cell lithium battery using surface mount components on a custom designed PCB.
Using an inexpensive boost converter IC, it’s able to boost the battery voltage of 3.7 Volts to between 5 & 24 Volts. The board includes a battery management system and microUSB connector for charging.
To use the board:
- Connect a 3.7 Volt lithium ion or polymer cell to the battery input screw terminal
- Ensure nothing is connected to the output yet
- Connect a micro USB cable to the board to activate the battery system
- Turn on the output using the large switch on the side
- Use a screw driver to turn the potentiometer while measuring the voltage on the output screw terminal using a multimeter
- Turn off the output and connect your load (whatever you want to power)
- Flick the switch to turn on the output!
The design is on its second revision, with a handful of boards assembled and partially tested.
This project has been a huge learning experience for me, and I wanted to share some of the things that I have found out so far. I hope there’s some useful info for anyone looking to design their own boost converter using surface mount components and I also hope that any obvious blunders could be excused by the power electronics designers out there.
As of now, I can get 200 mA at 5 Volts, and about 60 mA at 22 Volts. The board is not as powerful as I would have hoped, but I suppose that’s the fun in learning. In the future I will continue to play around with it, and see how I can integrate it into projects. I'll also try and have a few available to purchase on Tindie for anyone who would like their own to experiment with.
I intend to put together a documentation site to have more detailed information on the board's design.
Source FilesThe design is open source, so be sure to check out the repository if you’d like to fork the repo, or have your own boards fabricated from the gerbers.
The PCB is designed in KiCAD, the lovely open source ECAD suite.
What is a Boost Converter and how does it work?I'm still learning about these technologies, so I would like to refer to others who can explain it better than I could.
Eugene Khutoryansky has a wonderful video showing how the boost converter works.
Technical resources are also very helpful when learning about these systems.
Basic Calculation of a Boost Converter's Power Stage by Brigitte Hauke has a great overview of the formulas and considerations when choosing your power supply parameters.
Another application note Working with Boost Converters by Frank De Stasi helps to shine some light on the nomenclature, topology, and common issues for buck and boost converters.
The test instrumentation equipment manufacturer Tektronix has a very thorough primer on Power Supply Measurement and Analysis.
InspirationI have in the past reused PC fans and 12V AC/DC adapter to put together a fume extractor that could help suck away the soldering fumes.
While the solution worked to help get rid of the fumes while soldering, I wanted to break free from the need to mind the wires and taking up an AC power socket and dealing with bulky adpaters.
I wanted to try and power one of those DC Fans from a lithium battery, and have it be easy to recharge.
I had two modules in mind that I thought could do the trick. The TP4056 Li Battery module and the generic DC DC Boost converter modules.
I have used the TP4056 modules in a few projects with good results, and wanted to boost the battery voltage to use with a 12 volt fan.
I tested the boost converter module to see if it could output anything near the voltages I wanted:
Input : 3.0 to 4.2 Volts
Output : 5.0 Volts to 24 Volts
Unfortunately, the XL6009 module couldn’t do it, and was unable to boost such a low input voltage range. I looked up the module’s IC, and found that not only is it a disappointing datasheet, it also has a minimum input voltage of 5 Volts, so this wasn’t going to cut it.
Doing it Myself?I thought that this would be a great excuse to try and learn how to design a module that could both manage a single cell lithium battery and boost that voltage to cover 12 Volt and 24 Volt DC fans. I wanted it to be useful for others, so a wide voltage range with a healthy amount of current for good measure.
I didn’t set formal requirements, so most of the design would be based around cost. I wanted to challenge myself with the bill of materials as well as the technical issues. The design should not only be functional, but also cost effective with few supply chain risks.
Looking at the MarketFor most of my designs, I start my search using the parametric search functions of your favorite local internet electronics store. Availability is a good indicator, so I start by searching by function and sorting by number in stock. I hope that this gives me the industry favorites that still have spares laying around. From there it was the usual exercise of exploring features and limits.
I eventually settled on the AP34063 from Diodes Incorporated as it had a lot of what I desired:
In Stock
Inexpensive
Minimum Input Voltage of 3.0 Volts
Switch Current of 1.6 Amps
This particular IC is not recommended for new designs, but there are plenty of drop-in replacements that are active and in stock.
This is probably the biggest lesson for me. I am so used to seeing current specs as the maximum average current that the power supply can deliver and could rely on that when looking at power budgets for an embedded system
However, what I thought was going to be a 1.6 amp output from the module was something much different.
The Switch Current will be the maximum nominal value of current that can be on the coil during the boost conversion process. This coil current can be much higher than your output current, and I fooled myself into thinking that I could get anything close to 1 Amp at 24 Volts output.
I didn’t catch this until much later in the design phase, so I was expecting to draw upwards of 6.5 Amps out of a single cell lithium battery. That has meant some parts of the board are over-engineered with higher power specs. Although a safer option, that means there could have been some cost savings by selecting parts that are not way beyond the needs of the.
It’s hard to know what the needs of a design are if you haven’t specified its capabilities.
Determining Switch CurrentSo if I was starting from scratch and wanted a 24 Volt 1 Amp boost converter from a single cell lithium battery, what kind of switch current can I estimate?
I would try and use a calculator to quickly check feasibility and play around with parameters. Taking a look around the internet search engines for a SMPS calculator, I found this calculator that can generate graphs for the calculated current and voltage characteristics:
Design of Switch Mode Power Supplies
Dr. Heinz Schmidt-Walter, Holger Wenzel, Thomas Zänker, Richard Morgan and Johnalan Kegan
Plugging in with what should be the worst case scenario for the system, we can start to get a picture of what is needed:
Wow! A 10 amp coil current would be needed to have margin above the calculated coil current.
What if we changed the output current to only 0.1 Amps at 24 Volts?
This reduces the coil current to only 0.99 A, which is less than the IC's 1.6 Amp rating.
Diode Recovery Rate MattersOne important part of how the switch mode power supply functions is using the switching diode to act as a one way valve as we charge the output capacitors. This lets us add energy to the output with an increasing voltage.
We need to switch between adding energy, and discharging that energy to the load and not back into the boost converter. We are going to switch at around 20 Khz, so this will need to be able to keep up.
I didn’t pay enough attention to this on A01, and used a general purpose diode. This proved to be quite the mistake, as the output voltage would collapse at the slightest hint of a load. The boost converter IC also got tremendously hot, and would probably burn if left alone.
Changing the general purpose diode to a Schottky diode resolved the issue, as the Schottky diode is designed for fast switching applications.
How to set the output voltage rangeInside the boost converter IC, there is a voltage comparator that is used to control when to turn on and off the switch. This uses a voltage reference of 1.25 Volts to compare against a scaled version of the output voltage.
So, if we wanted to set the output voltage to 5 Volts, we would need to divide that voltage such that it creates 1.25 Volts at the feedback pin. Now if we wanted to adjust this feedback voltage to create 24 Volts, we would need a resistor circuit to change the voltage divider such that it divides 24 Volts down to 1.25 Volts.
A potentiometer is an easy choice to make this adjustable, but it won’t be as simple as adding the potentiometer alone.
From the datasheet, the output voltage is determined by:
Which is based off of the voltage divider circuit below
To change the factor of division for this voltage divider, we can start to experiment with the two resistor values. An increase in R1 will increase the output voltage, and an increase in R2 will decrease the output voltage. If we only want one potentiometer to adjust, we should think about where to place it.
I decided to place it on the high side, between R1 and the output voltage. I would like to think you could make it work with a potentiometer on the low side, but I haven’t tried.
The unused wiper on pin 3 of the potentiometer R_pot is shorted to the output pin 2 just to make sure we don’t have an antenna. I’m not convinced it is necessary, but it has been recommended as a good practice for the unused pin.
For an ideal world, we could get a potentiometer that is just the right resistance to produce the needed voltage division. However, we should consider what we can actually purchase.
Another consideration is the quiescent current draw of this circuit, as it will be constantly drawing some power from the battery. So, a high impedance will help to reduce the current consumption of this part of the board.
To start off we can choose a resistor value for R2. For this exercise we can pick 10k, as it will be a value that is already on the board. Reusing component values can help reduce complexity and overall cost.
So now we have an equation for the output voltage that is only dependent on one value:
If we consider the potentiometer at its lowest setting, it will be zero ohms. This lets us set our minimum voltage of 5v by selecting just R1 that gives us
If we now want to know what the resistance of the potentiometer needs to be such that we can get 24 Volts out, our equation shows:
Here we run into a problem: potentiometers don’t come in 152 kOhm variants. (Or rather, it would be a waste of time looking).
Instead, we can use a standard value potentiometer and create an equivalent resistance that matches our desired 152 kOhm. For this, we will use a parallel resistor circuit that has a potentiometer that is greater than our desired resistance.
200 kOhm potentiometers are available in high stock and at low cost, so let’s go with one of those.
If we add another resistor R3 in parallel with the potentiometer, we can use this to scale the equivalent resistance.
Hmm, they don’t tend to make 633.333 kOhm resistors. What we can do instead is add another resistor in series with R3 such that they add up to as close to 633.333 kOhm.
Looking at what is available, we can get a 620 kOhm and a 13 kOhm to add up to 630 kOhm.
Now this is slightly off from our ideal, so what kind of error are we expecting?
That’s pretty close! We’re only 24 mV off target, for an error of 0.1 percent. We will of course see a greater error just from the passive components’ tolerances. However, this shows us that with accessible parts we should be able to get the voltages we want.
I ended up using different resistor values than what is shown here, but the same method was used to determine the values needed.
A note on linearityWith the above exercise we can plot the relationship between the potentiometer’s resistance and the output voltage.
Looking for an exercise in algebra? Determine the equation that relates the potentiometer resistance to the output voltage!
It’s not perfectly linear... However, it is plenty good enough for me. I suppose there is some mathematical way to characterize just how non linear it is, but that will have to wait for another time.
Pay attention to the on time neededThe on time is the amount of time (some times as low as microseconds) that the switch is activated. The IC uses a timing capacitor whose value depends on the on-time needed.
I haven't see a detailed explanation for selecting a frequency, so I'm still unsure on this topic.
Some internet searching leads to the idea that higher frequencies carry some advantages when considering part sizes and costs.
I need more test equipmentI need a programmable load, and I might as well build one!
While I was trying to test the output power the module is capable of, I was getting frustrated with not having a way to programmatically change the load. Instead, I was using a whole mess of power resistors so that I could add and subtract resistance.
While the power resistors do work to create a basic load for testing, it lacked the finer results that I was hoping for. I wanted to find the maximum load before the output voltage starts to drop, and do this for the full range of the output voltage.
So, to help with current and future testing I have created a new repo for an electronic load. I’m thinking of something battery powered and WiFi enabled to keep up with the theme.
https://github.com/stasiselectronics/ElectronicLoad
Be mindful of what you put on the silkscreenI learned that I should probably wait on verifying specs before committing them to the silkscreen.
I accidentally wrote that the module can output 1 Amp. Whoops!
Now this board will need a new round of fabrication to fix what could have been updated in the documentation!
What's NextI want to try and optimize the board some more, and continue to use it as a good test device for some of the lab equipment around me. I hope to continue the documentation for this project with more detailed explanations of what is happening on the board.
In the mean time, you can see more frequent updates on my Instagram@Stasis.Electronics
The repository for this project is up on Github
The documentation website is under construction!
Comments