Replacing batteries of thousands of wireless devices is expensive and cumbersome so making the devices live as long as needed is important.
In this article we look at three ways to improve the lifetime of wireless IoT devices:
- Increase the power supply by using larger batteries.
- Decrease the power consumption by being smarter in using the available energy.
- Continuously supply power.
Depending on the situation, different trade-offs are needed. But being smart about power always pays off in the end.
Improve the lifetime of your IoT device:
1. Provide more power
2. Use less power
3. Find unlimited power
1. More Power Use a Bigger Battery
Sometimes the straight-forward, brute-force solution is the best. Adding a larger battery is the obvious way to improve battery lifetime – a bigger battery stores more energy.
Common battery types for IoT devices are the CR2032 coin cell and the AAA batteries. Both of these have the benefit of being readily available which means they can easily be sourced in large quantities and found in common stores. But they are not the only available options.
The slightly larger CR2450 and CR2477 coin cell batteries have much more energy than the CR2032 coin cell and have only slightly larger form factors. The price is higher though, and the CR2477 in particular may be difficult to find. CR2477 is not commonly available in everyday stores and may not even be in stock at specialty stores like electronics warehouses.
AAA or the larger AA batteries have the benefit of being very readily available and can be purchased even in ordinary convenience stores.
In terms of energy storage, the CR2032 coin call has a typical capacity of 250 mAh, which is half of what the CR2450 has. The CR2477 often has up to 1000 mAh.
Depending on the application, the 250 mAh CR2032 coin cell may provide a life time that can be measured in years. But this depends strongly on how much data each device is supplying and often the lifetime may be months or only a few weeks.
The graph below shows a breakdown of energy capacity and price point for a set of common battery types.
Sometimes the straight-forward, brute-force solution is the best
2. Less Power Sleep Smarter
Regardless of the battery type, the electronics in the IoT device will consume energy. And the energy consumption directly affects the lifetime of the device. So spending as little energy as possible is vital.
However, optimizing the energy consumption of a wireless IoT device is hard. There are many factors that affect how energy is being spent and these factors may change over time.
Hardware - the Component Level
The first step in optimizing the energy consumption is to select energy-efficient hardware components. Many hobbyist-level IoT systems that many are familiar with, like the Arduino and the Raspberry Pi, have not been optimized for energy consumption. They tend to use comparatively very large amounts of power and are therefore often very poorly suited for real-world large-scale IoT deployments. The key to selecting components is to inspect the data sheets to get a feeling for the order of magnitude that is being reported in the data sheet.
The power consumption listed in data sheets is not enough to determine the actual power consumption, however, because the final power consumption depends on how the components are being used. For example, a sensor with a high power consumption that is being used only a few times per day may have a much lower overall energy consumption than a low-power sensor that is always on.
The only real way to determine the actual power profile of the hardware is to measure it. Ideally, this should be measured while the system is operating in the intended way.
The best tool that we have found for performing this type of power profiling is the Otii Arc measurement device. It gives a detailed view into the timeline of power consumption of your hardware. This allows tracking individual spikes and high points to figure out what is consuming power.
Software - the Device Level
For power efficiency, the software is the most important piece of the puzzle. Because no matter how power-efficient the hardware is, the software is what ultimately controls how that hardware is being used. If the software is making inefficient use of the hardware, all hope is lost.
The software not only controls external devices such as sensors, but also the wireless connection and the microprocessor on which the software runs. When the hardware is optimized to the point where it is highly power-efficient, the sleep scheduling of the software becomes extremely important. If the software is able to make these sleep as much as possible, that will be able to double or even triple the lifetime of the devices.
The operating system on the microprocessor controls how much the system sleeps in the timescales of milliseconds to seconds. But sometimes a higher level scheduling is needed as well. For example, in a recent Thingsquare IoT deployment, devices were only used during daytime. This meant that we could enter a deep sleep at night and completely turn off everything. This would almost double the lifetime.
Power Consumption at Scale - the System Level
Because power consumption is a complex issue, unexpected things may happen to the power consumption when deploying devices. And when deploying thousands of devices, unexpected things are expected to happen. For example, radio conditions at the deployment site may cause certain devices to have a higher power consumption than expected, thus reducing their lifetime.
Being able to identify problematic devices early means that the batteries for those devices can be replaced early, reducing the risk of data loss.
The Thingsquare system allow us to collect power consumption data from all devices in a deployment to spot any devices that exhibit a higher power consumption than expected. These devices are highlighted in the user interface, making it possible for an operator to locate and fix the issues before they become real problems.
When deploying thousands of devices, unexpected things are expected to happen
3. Unlimited Power Grid or Solar
Finally, there is one more weapon we can use to improve the lifetime of our IoT deployments: unlimited power in the form of a never ending energy source. This is typically either grid power or solar power.
The most common use case for grid power is for range extenders. Range extenders use more power than other devices and require larger batteries. But they can be placed in locations that are close to a power outlet, and are therefore a great match.
Solar power is almost always a way to augment battery power, because solar power is intermittently available. For a solar-powered device, the battery has to be rechargeable, and the solar cell is used to charge the battery when solar power is available.
Read more about solar power in this article.
Power consumption is a primary concern in wireless IoT deployments because battery replacement for thousands of nodes is very expensive. To achieve a long lifetime, the hardware must be on point, but the software is the most important part.
And regardless of the battery size and power source, being smart about how to spend the power is essential.
Regardless of the battery size and power source, being smart about how to spend the power is essential.