Using Lithium-Ion Batteries in Embedded Systems

Wednesday, September 5, 2018

ColibriCarrier BoardWelcome to this blog post which provides a broad overview of the application of lithium-ion batteries in embedded systems. This post is the first of a 4-part series.

Rechargeable lithium-ion batteries have among the best energy density when compared with other battery technologies. Due to its wide use in the consumer and fast-growing automotive market, lithium-ion batteries are becoming more affordable. With wrong handling, lithium-ion batteries can be dangerous. Therefore, a main task of the development process is to choose the right strategy to provide enough energy for the desired time to your custom embedded device. The focus of this post will be on the battery charging and management system with safety in mind. I will hopefully provide you with useful hints and links by explaining step-by-step some lithium-ion battery fundamentals; so you feel confident to soon start your own project using lithium-ion batteries. I will also show you possible solutions with USB charging as well. Towards the end, I am pleased to present you with our low power demonstration board based on the Colibri iMX7 using lithium-ion batteries. The development documentation of this demo is available for free, on request, as a reference design example which has been successfully presented at many exhibitions around the world.

Part 1: Lithium-Ion Battery Fundamentals

There is a lot to say about lithium-ion batteries. But here I will only concentrate on providing an electrical and system design point of view. The important design criteria for a battery management system will be presented in the next part of this blog post series.

Let us begin with the easiest aspect: the voltage. The voltage level of one battery cell varies in dependence of the actual State-of-Charge (SoC), which is often stated in percentage. A fully discharged cell (0% SoC) has a minimum voltage of approx. 2.5 volts, a cell with 100% SoC is fully charged at a maximum of approx. 4.2 volts. But these values depend on the chemistry of the cell and are specified in the corresponding datasheet. Most of the lithium-ion batteries on the market in a 18650 cylindrical package or flat polymer cells are in this range of voltage. The voltage constraints are given by the chemistry and must not be exceeded, otherwise, the batteries get permanently damaged due to undervoltage or may explode due to overvoltage. For this purpose, there are protection circuits. I recommend using internal protected lithium-ion batteries. With the additional in-built protection PCB, the battery will be protected against limit excesses of temperature, charging and discharging. The battery shut-off is only temporary and the cell will work properly in a regular environment. The most useful protection is the so-called Current Interrupt Device (CID). The battery cannot be used anymore after the over-pressure mechanical construction has been triggered, due to e.g. over-charging to prevent further hazards.

Typical capacity values are rated around 3 Ah for cylindrical 18650 cells. This means, that we can supply our embedded system for one hour with 3 amps constantly, whereas the voltage decreases from almost 4.2 to 2.5 volts. This is the definition of the C-rate, a commonly used term. A C-rate of 1C means that the cell is discharged in one hour. Let us take an example and assume that our device consumes in average 300 mA. This is equivalent to a 1/10 C-rate, so we can run our system for 10 hours. What could we do if the battery should last longer?

Let us first discuss the charging of the cell. The charging is divided into constant current (CC) and constant voltage (CV). At the beginning with the constant current charging the SoC and voltage are increasing, up to the maximum voltage of e.g. 4.2 volts. As we now know, we have to stop at the maximum voltage. This is executed by the battery charger circuit. This is exactly where the constant voltage charging starts. The voltage can’t increase anymore, so the current will decrease in an exponential way. Usually, at the point where the actual current is smaller than a predefined point of the C-rate, e.g. 1/10 or 1/20, the battery is considered as fully charged.

CC/CV Charging
CC/CV charging from

As we can see from the figure above, most of the capacity is charged in the constant current phase. This is also the reason why some product providers advertise that their product is charged within several minutes to 80% instead of 100%. More useful information can be found about batteries here.

Let us go back to the open question, where we want to increase the capacity. The easiest way to solve this problem is to take a second cell. But of which capacity? Wh or Ah? What we want is to increase the available energy (Wh), which is a product of current and voltage. Therefore, for the embedded system it doesn’t matter if we connect two cells in series or parallel. The energy will be doubled anyway.

But how do we connect the second cell now? In series or parallel? If our electrical system requires e.g. 12 volts, then we can use some cells in series, which increases the voltage. The current is limited by the maximum of one cell according to the datasheet. Of course, you should use a DC/DC power converter for the defined input voltage level of the embedded system, which we will address in the next part of this blog post series. The voltage range between the charged and discharged battery pack will be higher with each additional cell.

I propose that the battery voltage range be completely higher or lower than the input voltage of the system, hence exclusively use a buck or boost converter. The aim is to avoid a buck-boost topology, which is more complex and generally more expensive. Let us take a short example: Our system requires 3.3 volts and we have 1S1P (one serial, one parallel) cell solution. The voltage range will be between 2.5 and 4.2 volts for a common 18650 cell. At lower battery values than 3.3 volts, we have to boost the system voltage, while at higher battery voltage we need a buck converter. This is what we want to prevent. Therefore, how about putting two cells in series?

What happens when we connect one fully charged and one fully discharged cell in series? We can’t charge or discharge the pack anymore without violating the voltage constraints! This has to be avoided by mounting cells at the same SoC to a battery pack. Through its lifespan, the cells can mature differently. This means the cells in a battery pack can get different SoC. Therefore, we need cell balancing during its lifetime to keep the same overall SoC. There is active and passive cell balancing, wherein the passive method the energy is burned in resistors. Active balancing keeps the energy by reloading from one to another cell.

What happens if we put the cells in parallel? The available current in parallel connection is obviously higher, whereas the voltage range remains of one cell. What will happen when we connect two cells in parallel, which don’t have the same SoC? There will be a high current flow from the higher to the lower charged battery, which we have to prevent. Due to the high current, there will be an uncontrolled heat deployment and could end in an explosion. I do not recommend that you build parallel battery packs yourself. But it is possible to buy ready-made packs.

It is not easy to choose the right battery. The first step is to of course consider the datasheet. But on the datasheet, you can only find some basic characteristics. I like visiting web pages such as, where I can find a whole bunch of test reports and ratings about different cells. The lifetime of the battery is important and has to be considered as well. The operating temperature should not be neglected. There is a so-called State-of-Health (SoH), which decreases with the amount of charging cycles. The capacity will lower during the lifetime. So, the designed capacity should be higher than the system required and depends on how much money you will spend on additional capacity. Not exploiting the voltage limits of one cell (upper and lower) will increase the lifetime and capacity stability. But that goes along with reducing the actual used capacity. It is always a trade-off between capacity (money) and lifetime.

Let us summarise what design criteria we need to move on to the next part of this blog post. We have to know or define the requirements of our embedded system like input voltage, the power consumption, and the desired battery life. After that, a simple battery configuration can be engineered. Of course, these are the basics, but it starts with them. In the next part, I am going to talk about power electronics parts and charger constraints that are also needing to be taken into consideration for our design.

Author: Andrija Stojkovic, Hardware Development Engineer, Toradex AG
Share this on:

Leave a comment

Please login to leave a comment!
Have a Question?