Skip to main content

How to estimate the battery life of the product you are developing?

How to estimate the battery life of the product you are developing?

November 17, 2020

We have all been there, at the start of a new development project trying to make an educated trade-off between product’s formfactor, what kind of battery to use to power it, and what it will actually do and for how long, before the battery is drained.   

You will most likely start with a specific battery size and capacity you have in mind for your product together with a best guess of what average current it will draw.  You will then divide these, and voilá, you have yourself an estimated battery life. 

For the longest time, this has been the most common approach amongst product developers. It is far from the truth and seldom an accurate prediction, but we recognize the need to have a quick and accessible estimate to get the sense of what is possible to achieve for a specific product.  

We gathered a few methods for you, that you should be using instead, and that you can apply on a daily basis depending where in the development project you are and how much accuracy you need in your estimation.  

#1 The go-to-everyday battery life estimator 

For a quick estimation, yet a bit more accurate one, the knowledge of the device behavior should be taken account of. You can find this feature in the Otii app (download here), look under Window. We simply call it: Battery Life Estimator! 

Here, you apply the data sheet capacity of your chosen battery but take into account the current consumption and time spent in the active respectively sleep mode during the duty cycle of your device.  

Preferably you should measure these, so the awesome thing about this estimator is that it can get these values from the actual measurement of current consumption during the device duty cycle. Open your measurement project or create ‘new’ with Otii Arc and  select the respective active  idle mode in the measurement graph. Then use the estimator, as shown in Fig. 1. 

Fig. 1 Battery life estimator used for estimation from measured current consumption of a LoRaWAN profile with a spreading factor of 12.  

As the results you get the battery lifetime and the number of duty cycle iterations estimated for the chosen battery capacity. 

Example 1: Assume a LoRaWAN prototype with a 620 mAh battery capacity and measure current consumption of 17 mA in active mode for 3.8 s and 1.3 uA for a bit less then 15 min in sleep mode. The battery life is estimated to 11.4 months.

Remember, measuring is important so don’t get stuck at only one assumption of usage for your device. The example above, in Fig 1, is just one of the states that the LoRaWAN device may end up, due to, for example, its proximity to the gateway. If this device ends up using a spreading factor of 7 (data rate DR5), the activity profile of the device will look a lot different and thereby also the battery lifetime, now resulting in a staggering 14.1 years, see Fig. 2. Furthermore, if the device in the example in Fig. 2 doesn’t receive the message of the acknowledgment, the device will be active longer, leading to a battery lifetime of 1.5 years compared to 14.1. This simply shows that for every change in the hardware and software, and for every use case and scenario you will have activity profiles that need to be measured and considered when estimating the battery life.   

Fig. 2 Battery life estimator used for estimation from measured current consumption of a LoRaWAN profile with a spreading factor of 7.  
Fig. 3 Battery life estimator used for estimation from measured current consumption of a LoRaWAN profile with a spreading factor of 7 but now acknowledgment.  

#2 Battery life estimation with profiled battery 

Whereas the #1 method is very accessible and a reasonable choice for fast sanity checks during everyday product development, where the device energy profile is changing due to hardware and software iterations, there is still room for improvement when it comes to accuracy.  In the estimation above battery self-discharge is not accounted for, which can significantly shorten the battery lifetime, especially if the sleep-mode current is low. Also, device cut-off voltage may limit the usable battery capacity to a lower value than specified by the battery manufacturer. 

To account for this we have introduced the Otii Battery Toolbox, and profiling feature where a battery can be profiled for the specific loads that represent the device behavior. By connecting a battery to the main connectors of the Otii Arc, you can test how the battery performs with different kind of loads, for reasonable profiling time, what we call an accelerated activity profile, as set in Fig. 4 and explained more in details here. The longer you choose to profile, i.e. less accelerated your activity profile is, the more accurate the results will be. However, the acceleration is needed since nobody really has the time to wait for a battery to drain for a couple of years to have the test results.

Fig. 4 Battery profiling settings in the Otii Battery Toolbox extension of the Otii app. The input is the accelerated device activity profile.

The profiling will not only provide you a discharge curve that you can later apply to your device, instead of the generic power supply, but also the battery capacity that is more realistic to expect. Using the Battery life estimator, you can apply the new, more realistic battery capacity and the device behaviors to receive the more accurate battery life.  

Example 2: The battery for the LoRaWAN prototype in previous the example was profiled with an accelerated activity, resulting in a capacity 492 mAh, see Fig 5. With measured current consumption of 17 mA in active mode for 3.8 s and 1.3 uA for a bit less then 15 min in sleep mode, the battery life was originally estimated to 11.4 years, however now resulting in 9 months.  

Fig. 5 An example of a Varta CR2450 battery profiled with the Otii Battery Toolbox. The profiled battery capacity is 492 mAh, almost 20% less than what is stated in the data sheet (620 mAh).  

#3 Battery life estimation with usable battery capacity 

You can further improve the accuracy of the estimation by applying the profiled battery discharge to the device (instead of powering it with a power supply) to find out what the actual usable capacity would be. This can be done manually in the Otii Battery Toolbox, by changing the used capacity in Fig. 5 (See Used capacity) and observing when the device shuts down or reboots. You can automate this with the Otii Automation Toolbox where scripting is used to get the usable capacity faster and with more accurate steps.  

You want to know how? Book a demo with our experts to show you the ropes! 

Battery life estimation is an important part of development work and you need to check it on regular basis throughout the project. Use different methods but be aware of the inaccuracies, of how well you know and how often you measure your device. What we presented above can be further improved, and you can be assured that we are working hard to bring you even better and more realistic ways to understand your current consumption and calculate the battery lifetime.

Become a member of our community

Gain access to exclusive resources, educational materials, and expert advice to enhance your knowledge and understanding of powering IoT devices and battery testing.