Smartphone battery life remains a frustration for many users. The same problem also applies to a wide range of IoT devices. Although it’s easy to bury yourself in detail seeking a perfect solution, it’s important not to lose sight of the broader picture.
To ensure reliable long-term operation of your smart device, consider battery type, peak power consumption, wireless connectivity protocol, latency, throughput, sleep-states and data transfer requirements.
Rule number one: Always have your end user in mind. Even the most desirable product will be ditched if the battery lets it down.
Expected lifetime of a coin cell battery
Ultra low power wireless connectivity is often added to devices powered by coin cell batteries, popular due to their low cost, size and weight. Considering the battery lifetime of such products is vital, as coin cell batteries are sensitive to peak current consumption: Bursts of too high current consumption may hurt the overall lifetime of the battery and cause intermediate voltage drops.
To establish the expected lifetime of the battery, you have to either calculate or measure the expected average power consumption.
Average power consumption is what matters the most for your battery lifetime, unless your power source is current-limited. In that case, peak current consumption will be equally important.
Peak power consumption for current-limited power sources
Lithium-ion coin cell batteries are popular choices for small, inexpensive sensor gadgets, however they can only source about 5 mA current peaks without getting damaged. By demanding larger peaks you risk reducing the battery capacity by more than 10 percent of the manufacturers’ stated figures.
As the magnitude and length of the peaks increase, it hurts your battery life three-fold:
Firstly, you get shorter battery life simply because your average energy consumption is increased over the peak period.
Secondly, the capacity of the battery drops because the current drawn is too high, damaging the battery's capacity.
Finally, unless the device you're powering tolerates a wider range of supply voltages, you may have effectively reduced the battery's lifetime simply because the current surge lowered the output voltage of the battery. So even though the battery still has some charge left, your device may stop working if the battery voltage drops below a given level.
So for example, if you plan to transfer data in large bursts you may exceed the recommended peak, applying all these negative effects to the lifetime of your battery.
And don’t compare peak currents using the quoted figures from the manufacturers! The most common way to measure current consumption, is with an ammeter or oscilloscope:
The impact of the wireless protocol used
Although Wi-Fi has become the standard for audio and home automation devices that require high throughput rates, power consumption is high and the devices are usually plugged into power outlets. Most wearables, for example, should use other standards with a better power efficiency.
Here is a comparison of popular wireless standards (click for larger version):
Bluetooth Low Energy
When doing connectable or scanable advertising, the advertising device consumes significant power, but still less than its nearest competitor. The power per bit can be further improved by increasing the payload to 31 bytes per packet, and by configuring it for broadcast only. You may also take advantage of chips with integrated DC / DC regulators that enable peak current reduction of up to 20% for 3V cells.
Latency considerations of Wi-Fi
For bulk high-speed transfer, Wi-Fi is the preferred protocol. Unfortunately, the current consumption is not reduced even if the throughput is reduced. Although Wi-Fi has low latency, the constant listening of the receiving device will consume considerable amounts of power. For this reason, it’s not recommended to use Wi-Fi for devices on a strict power budget.
Measuring average power consumption
While the best power measurement tools are very expensive, there are cheaper solutions that - albeit less accurate - can still prove helpful.
For a purely resistive or static load, all you need to calculate the power consumption is a digital multimeter to take measurements using the simple formula: power = voltage x current
For a connected device, the voltage and current varies depending on its operating state: If it's transmitting or receiving, power consumption increases. This table compares estimated power requirements for the communications part of autonomous sensor devices (click for larger version):
The sensor itself also consumes power, which could range from hundreds of microamps to several dozen milliamps for a small amount of daily transfers. The table above assumes 50 microamperes (μA) per message.
Increase battery life for smart technologies
Picking the right RF protocol and hardware is still not enough to ensure good battery life. Remember rule one and ask yourself the question “Is a low latency/high data rate more valuable to the user than longer battery life?”. Or for example: "How often is the user of this application OK with changing batteries, and how does that dictate data transfer schemes".
To send large quantities of data, look for ways to optimize the transfer:
- Adjust connection intervals, advertising intervals and slave latency accordingly
- Combine multiple small packets into fewer large ones, to reduce RF overhead
- Consider compressing data locally before transmission to reduce RF throughput
- Identify non critical data that can be sent at a slower rate, or not at all
Note that the second and third point above requires CPU work, which is also power-consuming.
For Bluetooth Smart sensors, don’t waste power by measuring and preparing data if the client hasn’t subscribed to the associated characteristic. Conversely, if you are designing the client too, such as a smartphone app, enable it to unsubscribe from irrelevant characteristics whenever possible.
Finally, consider how much of the day your product will be actively used. If the device will spend long periods inactive, make sure the idle-state current consumption is low. Consider a “wake-up” button, which typically allows for a lower idle current, compared to waking up periodically on a timer.