I woke up this morning to a dead device. Hmm…. I pressed the ‘Sleep’ button, to see the Apple logo and a boot up sequence, followed by a quick battery warning pop-up message. And then, a few minutes later it was off again. The strange thing is that I had charged it fully yesterday evening. And this isn’t the first time this has happened in six months of ownership.
Looking round the forums online, it seems that is phenomenon has been seen by others. No definitive explanation has been given, but with 15 years of mobile computing in my blood I’m going to offer a few thoughts anyway…
I’ve said several times that a modern mobile operating system is complex. It doesn’t matter whether we’re talking OS X or S60/Symbian or Android or Windows Mobile, there will be of the order of 100 background OS system processes all lurking in memory or active all the time, even on a freshly booted device that’s running normally.
I’d go so far as to say that an iPhone (for example) is as complex under the hood as a desktop OS circa 2002. The fact that the iPhone and competing smartphones manage to do what they do for many hours on a single battery charge should itself be regarded as a miracle of modern engineering.
As such, we shouldn’t be too surprised when things go wrong. Back in 1993, when I started out with palmtop computers (the Psion Series 3, followed a few years later by the Palm III), there was a realistic expectation that all bugs would be quoshed. Things were simple enough at the OS level that finding problems and fixing all of them was a goal that could be near-as-dammit reached.
Not any more though. A typical modern smartphone contains software that runs to (in the order of) ten million lines of code. Take the aforementioned processes and add in extra complications from third party applications and all the possible real time interactions with weak 3G networks, Wi-Fi connections, Bluetooth probing, GPS lock maintenance, and so on, and you’ve got something so complex that, with the best will in the world, there’s no way a single company can identify all possible problems and fix (or work around) the bugs concerned.
And so back to the mysterious battery drain. In addition to the iPhone/iPod Touch, I’ve seen the same thing on S60 phones and on Windows Mobile devices. And you can bet that there will be Google Android users out there with similar issues.
What I think is happening is that, through a combination of real world factors, a process in the Operating System is ‘running away’. In other words, it’s running flat out and out of control. This is arguably connected to the second symptom reported by those experiencing battery problems with any mobile device, that of it getting ‘warm’ – as you’d expect if a process had gone rogue and was hammering the processor for all it was worth.
So, although not a daily occurrence (thankfully) for most of us, what can be done to stop it happening in the future?
- With the underlying problem undoubtedly in the OS, it’s down to Apple’s rolling programme of bug fixes and software updates to gradually make the iPhone/iPod Touch’s OS more stable.
- A good rule of thumb with any computer of any OS is to power cycle it every so often, to clear out anything in RAM which is hanging around and a potential troublemaker, to defragment RAM generally and to give the OS a fresh start. On the iPhone, this means using the long press on the ‘Sleep’ key (see my keypress shortcuts guide) to turn the device off completely.
- Get in the habit of not leaving a third party application/game in the foreground when putting the iPhone to sleep. Although all applications get vetted by Apple, there’s still a possibility that roguish behaviour might occur when asked politely by the OS to vanish up its own tailpipe. And with the sheer number of applications appearing in the AppStore, of varying quality, you never quite know how strictly each has been programmed.