Hacker News new | past | comments | ask | show | jobs | submit login

It wouldn’t have hurt to include a setting, but I think turning it on by default for devices under a certain threshold of battery health at least was the right call, both because of non-technical users who don’t understand it and wouldn’t turn it on or those who would leave it off and then attribute the crashes to unrelated things (“they put crashes in my phone to force me to buy a new one!”)





There was no need for anyone to guess what was happening when their phone crashed, and there was no need for any default behavior at all. Every time I let my battery SoC go below a certain percentage -- 5% or 10% -- a message pops up asking if I'd like to switch to low-power mode to extend the remaining charge. I appreciate that. Nobody ever objected to that. No lawsuits were filed, no outrage was farmed on Facebook, no hit pieces were published by Bloomberg. So why in the world didn't Apple do something similar following a crash?

The dialog box practically writes itself. "Sorry! Your iPhone has just recovered from an oopsie-poopsie caused by a tired battery. Please choose an option: <Continue operating normally for as long as possible> <Reduce performance to extend battery life> <Schedule an appointment at your nearest Genius Bar to install a new battery (and check out the new iPhones!)>"

It's utterly inexplicable the way they handled this. Someone should have been fired. But then we say that a lot about Apple around here, and it never seems to happen.


I'm guessing you've not dealt with power electronics and batteries terribly much.

Depending on what limit has been hit, it's quite likely there is no way to log the cause of the error. Low voltage protection circuitry on most batteries doesn't have a status line. It's never supposed to trigger except in exceptional cases, and it just cuts power. All you know is that the power disappeared suddenly, and you've rebooted. Telling the difference between that and assorted other hardware faults, especially if you never designed the hardware to look for it, is really difficult.

You can certainly design a system that will latch the cause of the shutdown in the battery management IC - but you can't really add this in after the fact.


Sometimes things are much simpler than they seem at first. You set a nonvolatile flag at startup time: badShutdown=true. Prior to shutting down normally, you clear the flag. Then, if the flag is ever found to be set at startup time, you can assume that a crash occurred.

Whether the crash was really due to the battery can be inferred from the battery's age. If the battery is relatively new or is otherwise determined to be OK, don't issue this particular warning. If it's within, say, 90% of the expected service life, then the warning makes sense.

In any event, logic similar to the above was employed at some point to determine when to degrade the phone's performance. That is the point where the warning should have been issued. There are no valid excuses for not doing so.


So, no, you've not worked with batteries, battery management systems, or anything of the sort.

Determining battery health is hard.


LOL, so is building an iPhone.

Carrying water for a trillion-dollar corporation for free, though... that's so easy that anyone can do it. The only question is why.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: