Thursday, November 15, 2012

Validating battery capacity under end-use conditions for battery powered mobile devices

One aspect (of many) I have talked about for optimizing battery life for battery powered mobile devices is assessing the battery’s actual capacity. Not only do you need to assess its capacity under conditions as stated by the manufacturer but also under conditions reflecting actual end use.

Validating the battery under a manufacturer’s stated conditions establish a starting point of what you might be achievable in how much capacity you can obtain from the battery and if it is in line with what the manufacturer states. Sometime it can be less for a variety of reasons. Even subtle differences in stated conditions can lead to fairly substantial differences in capacity. The stated conditions usually provide a “best case” achievable value for capacity. Do not be surprised if your results for the battery’s capacity fall a little short of the best case value provided by the manufacturer. With a little work you may be able to determine what subtle difference caused it, or simply, the best case value given is a bit optimistic.

Validating the battery under end-use conditions helps establish the difference you can expect between the battery’s capacity for rather ideal stated conditions against end-use conditions. Battery powered mobile devices draw current in a pulsed fashion, with high peaks in relation to the overall average current drain. An example of this kind of dynamic current drain is shown in Figure 1. In this case it is the active mode current drain of a GPRS smart mobile phone.

Figure 1: GPRS smart mobile phone dynamic current drain waveform

This usually significantly degrades the battery’s delivered capacity in comparison to the manufacturer’s stated conditions, which are based on a constant DC current discharge. If you do not take the impact of end-use loading conditions on the battery’s capacity into account there is a good chance the mobile device’s run-time will fall quite a bit short of expectations.

The usual way to validate a battery’s capacity under end-use conditions is to actually hook the battery together with its device, connect up logging instrumentation for recording the battery run down voltage and current over time, and then placing the device in a desired operating mode and let it run until the battery is run down. While a battery run-down test like this is useful to do it has a couple of issues when trying to focus explicitly on just the battery:
  • It is a test of the combination of the battery together with its host device. The host device also has influence on the test’s outcome and must be taken into account in assessing just the battery under end-use.
  • It can often be complex and difficult to set up the device in its desired operating condition, requiring a substantial amount of supporting equipment to recreate its environment for providing a realistic operating condition.
  • It can sometimes be difficult to get consistently repeatable results with the actual device.

An alternative to repeatedly using the actual device is to use an electronic load that can draw a dynamic current representative of the actual device the electronic load is being used in place of. In some cases a simple low duty cycle, high crest factor pulsed current waveform can be directly programmed into the electronic load. In cases where the host device’s current drain waveform is a bit more complex it may be useful to have an electronic load that is able to “play back” a digitized waveform file that is a representative portion of the device’s actual current drain, on an ongoing basis to run down the battery. As one example we put features into our 14585A software to simplify this record and playback approach using our N6781A 2-quadrant DC source measure module. This set up is depicted in Figure 2.

Figure 2: Current drain record and playback set up using the 14585 and N6781A

In the first half of this process the N6781A serves as a voltage source to power up the device while digitizing its dynamic current drain waveform. In the second half of this process the captured current drain waveform is inverted and then played back by the N6781A now instead operating as a constant current load connected to a battery to discharge it. A colleague in our office recently completed a video of how to do this record and playback process using a digital camera as an example, capturing the current drain waveform of the process of taking a picture. This could be played back repeatedly to determine how many pictures could be taken with a set of batteries, for example. I know with my digital camera I need to take a spare set of batteries with me as it uses up batteries quite quickly! The video is available to be viewed at the following link:“record and playback video”


  1. Hi Ed,

    according to the documentation both N6781A/N6785A can be configured either as a battery emulator and also as a battery charger. In that case, how would you control end-limit type conditions to prevent the battery from overcharge or undercharge. Same issue would happen if you keep playing some profile 'forever'.

    There is no clear indication those devices can support that (aside from setting some sort of Over Voltage Protection or Current Limit which is not what I'm talking about). It would be necessary that the instrument could be configured in CC & CV charging mode and be able to set V & I limits, and similarly for discharge, but this does not seem to be the case and it seems this important feature is missing.

    Can you please confirm?

  2. The N6781A/N6785A are multi-purpose SMUs that can do a lot of things with all the features built into them but will often need some additional software developed to support a specific application. Together with the 14585A software they are used to measure and analyze current and energy consumption on battery powered devices without any extra software. These SMUs can be used to charge and discharge the cells as well but to have automated charge termination or automated discharge termination would require the user to write some software to perform the monitoring and termination.