There's been a fair amount of interest in an offhand comment I made recently about saving a lot of standby time by making an LED blink less frequently. So let's spend some time talking about what burns power on your Smartphone. Hopefully this will give you an understanding of where that battery power went and maybe help you figure out how to squeeze a little more life out of your devices.
If you look at your phone's battery, you'll probably find a label that says something like "1000 mAh". Think of this number as the size of your battery's gas tank. A bigger number means that the battery can hold more power. A lower number means that it holds less. The "mAh" is an abbreviation for "milliamp hours."
I won't go into the differences between amps, volts, and watts here (unless you folks really want me to). You could correctly say that mAh doesn't represent power, but, for various reasons, it's reasonable to think of it as power. And, when you do, the math becomes really easy.
If your phone had a 1000 mAh battery and only burned 1 mA, then it would last for 1000 hours. If it burned 2 mA, it would last for 500 hours. If it burned 1000 mA, it would last for one hour. Milliamp hours divided by milliamps equals hours. It's that simple.
Who you callin' "typical"?
Every phone is different. Any numbers I give for a "typical" phone might be wildly different on your phone. Hardware changes all the time, and so do these numbers. So don't hold me to them. But, a "typical" WM Smartphone has around a 1000 mAh battery. And, when in standby (backlight off, screen off, cpu doing very little, phone only listening for incoming calls), the typical device burns around 5 mA. Doing the math, you'll see that the typical device should run for 200 hours on standby.
200 hours??? I'd kill for 200 hours!
Are your batteries not lasting that long? Here are the biggest power users on your phone. Maybe one of them is hurting your standby time.
Backlight: The backlight eats power like a whale eats plankton. "Typical" backlights burn 45 mA. Your phone with the backlight on is probably burning ten times as much power as it does during standby. In other words, every minute you spend with the backlight on is ten minutes less standby time you'll have. If you keep your backlight on continuosly, your 200 hour phone will become a 20 hour phone.
CPU: This one is really complicated, but the simple story is that faster CPUs burn more power than slower ones, and CPUs burn a lot less power when they're not being used than when they're busy.
The first factor is why you still see some devices with a 200 MHz CPU even though there are much faster ones available today. All else being equal, a 200 MHz CPU uses half as much power as a 400 MHz one.
The bigger deal, though, is CPU usage. When the CPU is idle, it goes into a lower power mode that burns much less power than when it's active. When you're not doing anything with it (and not syncing), the Smartphone CPU is generally idle 99.9% of the time. If you were to load an app that kept the CPU busy just 1% of the time, that app would be using ten times more CPU than normal. Depending on the CPU and other factors, this could turn your 200 hour phone into a 20 hour one.
This is why I did those "Power to the Developers" blog entries and begged people to not use the CPU when the phone was idle. It's fine to do animations and things when the user is interacting with the device (especially when the backlight is on). But the app really should stop when the screen turns off. If the user can't see the screen, why burn the power trying to show him something?
As a user, you can pay attention to the apps you add to your phone. Did your battery life plunge after adding something? Do you have a great new stock ticker on your home screen that's still scrolling text at 3 AM when you're asleep and the phone is on your bedside table? Do you have ActiveSync set to sync every 5 minutes, but you only look at the device every 10? Maybe in off peak times you should set it to something very long, or even manual. Or, you might ask, "Is always up to date (AUTD) email better or worse for batteries than 5 minute sync?" That depends. Do you typically get email more often then every 5 minutes or less often than every 5 minutes? Any time spent syncing is CPU power being spent. The less you do it, the better your battery life will be.
Cell Radio: The cell radio burns a lot more power when actively sending data than when idle. This factors into those active sync decisions above. It also means that an app which sends or receives data will burn much more power than one that doesn't.
Even when idle, the cell radio will burn around 2 mA of the device's 5 mA standby current. If you need to stretch your battery life out, you can get quite a bit of mileage out of putting it into flight mode. Of course you can't send or receive phone calls then, but maybe you don't want phone calls at 3 AM when you're asleep. You might benefit from putting the phone into flight mode before going to bed. (Personally, I go one step further and turn mine off at night. Other people don't want to be disconnected and leave theirs on. Do what works for you.)
Signal strength is a huge factor as well. The closer a cell radio is to a cell tower, the less power it takes for the two of them to communicate. When you move into a poor signal strength area, the radio needs to turn up the power to stay connected. I frequently hear people at odds over whether a given phone has good battery life. One will say the phone is great, and the other will say that it's terrible. More often than not, the one who thinks battery life is great lives in an area with great signal strength and the one who thinks it's bad lives in an area with poor signal strength. Personally, the only place in my home where I can get any reception at all is standing next to the window in my son's room upstairs. I might as well turn on flight mode as soon as I get home…
Bluetooth: BTh uses another radio. Having it on at all burns more power than having it off. Having it on and sending data over it burns more power than having it off and not sending data over it. If you're using BTh, you need to have it on. If you're not, you should turn it off to conserve power.
Vibration: Here's a prime example of why the battery capacity is measured in milliamp hours. Time is just as important as current draw in figuring out who is burning all your power. If the backlight is on for a second, it'll burn 1/60th as much power as if it's on for a minute. Case in point, the vibration motor is probably the single biggest instantaneous power draw in the device. It's got to physically move the device around, and that takes a lot of power. But the vibration motor is never on for very long. It shakes the phone for a few seconds every so often, but does nothing most of the time. So the vibration motor isn't a substantial drain on the battery. That said, if something were to happen to cause your vibration motor to turn on and not turn off, it would suck your batteries dry in no time.
LEDs: These are the little blinking lights on the outside of your phone. Typically you've got a green one that blinks whenever the cell radio is on. You usually have a blue one that blinks whenever Bluetooth is connected. Sometimes you have a yellow one for other sorts of notifications, like upcoming calendar appointments or unread email.
LEDs annoy me. In my opinion, they burn more power than they're worth. But there's usually no way to turn them off. (They're completely OEM controlled.) Everyone assumes that users are best off with a LED telling them that the radio is connected. I think we should be weighing that against how much power the LEDs draw.
A typical LED, while on, burns 5 mA of current. Remember that the entire phone in standby is burning 5 mA. Turn an LED on and leave it on, and you'll cut your battery life in half. Fortunately, we don't usually leave LEDs on. We blink them. Typically, the blink rate for a LED is something like 0.2 sec on, 1.8 sec off. Since that results in the LED only being on 10% of the time, overall it just burns 10% of its 5 mA, or 0.5mA.
When I say that a typical phone on standby uses 5 mA, it's actually using 4.5 mA, with the other 0.5 going toward blinking that green LED. I recently worked on an extremely power efficient device whose standby current was 2.5 mA with the LED off. It just killed me that we had to blink the LED and bring the standby current up to 3.0 mA. So I convinced people to let me change the blink from the standard 0.2 seconds out of every 2 to 0.05 seconds out of every 2. Now, rather than being on 10% of the time, the LED was on 2.5% of the time. And the power went from 0.5 mA to 0.125 mA. On a 1000 mAh battery, that change alone would buy almost 50 hours of standby time.
I'm not ready to start carrying "Down with LEDs" placards. But if you want to put pressure on your Mobile Operators to tell their OEMs to get rid of the darned things, you'll get no objection from me.
What about the PocketPC?
That's the majority of the story on Smartphones. There are definitely similarities in the PocketPC, but there are some differences too. I'm personally more interested in Smartphones, but if you folks are interested, I could do a follow up entry on PocketPCs too. I'll be out next week, but when I get back, I'll gauge interest and write one if necessary.
In the mean time, I hope this has helped you understand where your battery life is going.