Beacons vs Batteries
Whether you’re iPhone or Android we love our phones and the more features the better. Those features however come at a price measured in precious battery time. It’s the Achilles heel of the smart phone. Many use extenders, some may carry an extra battery and, others only begrudgingly turn on features when needed. One of the most exciting features to come to the smart phone of late is the iBeacon – tiny devices that advertise their presence periodically. While this enables our phones to gain an understanding of where they are in a given physical location it also impacts battery. The logical question and concern is then how much. Users will be loathe to run an app that’s a battery pig and quick to uninstall it.
Hard data on power consumption for phones accessing Bluetooth features would be useful however most articles speak only to the life of the Bluetooth beacon – not the effect on the phone. Recently I came across a series of published experiments from Aisle Labs – a Canadian based company that specializes in gathering and analyzing footfall data. While such factors as the condition of the specific phones and batteries used are unknown the results are none the less interesting.
To understand how beacons impact our phone’s battery we need to first understand the four factors that effect it 1) the number of beacons present in the area (beacon density) 2) advertise frequency (how often beacons advertise their presence) 3) scan frequency (how often our phone scans for beacons) and 4) duty cycle. Duty cycle is not complicated but needs a little explaining. Duty cycle is simply the percentage of the time during a scan cycle that the phone is actively scanning – that it is “on duty”. If our phone scans for beacons once a second and is actively scanning during that cycle for 0.5 seconds we say the phone has a duty cycle of 50% – simple. Now that we have an understanding of the factors that can impact battery life lets see what kind of effect each has. First we’ll look at Android and then the iPhone.
For Android phones, for all factors, it’s not surprising to find newer model phones are much more efficient at scanning and processing beacons. Chips in today’s phones are designed to sip powers using a fraction of the energy of phones just a few years ago. Overall Android phones did not show significant ill effects on battery. The biggest factors were shown to be the number of beacons present and how often scans are conducted.
With regard to beacon density, all other factors held constant, it was shown that the more beacons present the more power the phone consumed. For older phones this could be as much as ten times the rate the phone used with it’s Bluetooth radio off and about five times the rate of consumption between one and ten beacons. For newer handsets however this increase was almost negligible. The Moto G for example was tested to have a base line battery consumption without Bluetooth enabled of about 0.76% over the course of an hour. With ten beacons present that number climbed to only 1.79%. It should be noted that just turning the Bluetooth radio on without any beacons present raised consumption to 1.20% – from zero to ten beacons only accounted for an increase of 0.59%.
Next we look at scan interval – how often we conduct a scan. When we compare a scan cycle lasting 0.1 seconds and a scan cycle of 1 second over a period of ten seconds using a duty cycle of 50% both will result in a total of five seconds of active scanning. However, the act of activating and deactivating the radio is performed much more often with the shorter cycle. As with most things overcoming inertia has a cost to it. While newer phones are more efficient at scanning shortening the cycle on all devices caused similar negative effects. Older phones at a 1 second scan cycle saw as much as a 24% drop in battery over an eight hour period of continuous scanning – new handsets saw only a 10% drop.
Dovetailing to scan cycle is duty cycle – the percentage of the scan cycle we actively scan. Examining scan cycle indicated the frequency the radio is activated and deactivated has a big impact. Tests regarding duty cycle however showed that the length of time the radio is active during that cycle has a relatively modest impact.
Finally, we look at advertising frequency – how often the beacon announces it’s presence. A more frequent advertising frequency is desirable. In geo-fencing this allows our app to be quickly activated when entering the fenced area. In proximity applications we can more accurately gauge distance. Fortunately like duty cycle advertising frequency has a small impact on battery usage for handsets. It should be noted however that beacons with shorter advertising frequencies will require more power themselves – a small price to pay for the increased performance.
With our review of Android complete we move on to iPhone – beacon technology is supported starting with iPhone 4s, running iOS version 7. Similar to their Android brethren older iPhones are less efficient in interacting with beacon technology. In general Android phones are a little better with battery usage than iPhone the exception being the case of beacon density – here iPhone wins out. We’ll now examine the factors effecting battery usage with particular attention to beacon density.
Beacon density has less of an impact on battery usage then on Android phones and this is due to the way iPhones conduct their scans. Android phones scan and process all beacons in a given area, iPhone is more targeted processing only those beacons that have been added to a predefined list – superfluous signals are discarded further upstream in the scanning process. The iPhone 4s for example uses a little more than 4 times the amount of power when ten beacons are present then it does when it’s Bluetooth radio has been turned off and uses about twice as much power with the radio on when no beacons are present as opposed to ten beacons. The benefits of the targeted style of scanning become evident when another ten beacons are introduced into the environment but are not registered with the phone – the impact on battery is negligible. This however is the only place iPhone outshines Android in processing beacons.
Similar to Android iPhone experiences it’s largest drain by activating and deactivating the Bluetooth radio – the scanning interval. Duty cycle and the frequency with which beacons advertised themselves had minimal impact. Overall drain on the battery for iPhone to process beacons in the 4s was between two and three times higher than comparable Android phones. The 5s while showing some improvement over the 4s for beacon processing did not post the same gains newer Android phones did over older models. New Android phones are almost three times more efficient than older models while the 5s is about twice as efficient as the 4s. The 5s as compared to the Moto G is from two to four times less efficient at processing Bluetooth beacons. The variations are due to the number of beacons present vs the number of beacons the iPhone is actively searching for.
In summary it can be said that beacon aware applications incur from a modest to minimal impact on battery life for both iPhone and Android. While Android phones can exhibit better efficiency there is more variation within Android. This is due not only to the variation in chip sets used by different manufactures but also because of the way the operating systems process superfluous beacons. The trend is for increased efficiency in both the Bluetooth radios and the way the operating systems scan and process signals. In general it does not appear battery consumption is a concern in location aware mobile applications especially in regard to the latest handsets. Any residual concern regarding older devices is minimal and can be expected to disappear within the next 12 to 24 months.