X
Tech

iPhone 4 auto-brightness bug

Ray Soneira, President of DisplayMate Technologies, calls the iPhone light sensor "effectively useless" in a piece called Brightnessgate.
Written by Jason D. O'Grady, Contributor

I've always thought that the iPhone's automatic brightness setting was busted, and a new report confirms my suspicions.

Ray Soneira, President of DisplayMate Technologies, outlines the problem in an good article called Brightnessgate with lots of empirical data.

Although it isn't as exciting as Antennagate -- Brightnessgate could be more significant because the display consumes up to 50% of the phone's total power.

...grossly mismanaging the screen's brightness has a major impact on battery run time - especially when most users wind up disabling Auto Brightness because it works so poorly that they leave the screen set to near peak brightness all the time.

Here's the problem, in a smartphone the light sensor is facing your head and is measuring the brightness of your face instead of the ambient light level that is around the phone, which is what actually sets your eye's light sensitivity.

But that's only half the story, the article also identifies a long-standing bug in the iPhone's auto-brightness software:

One behavior of the iPhone 4 Auto-Brightness that is a serious operational error or bug is that it locks onto the brightest ambient light sensor value that it has measured at any point starting from the time it was turned on, and then continues to use that highest value indefinitely to set the screen brightness until the display turns off – either by cycling through sleep mode or full power off. This means that the screen brightness is frequently set too high, which wastes power and can cause eye strain if you move to lower ambient light levels.

The final section explains how automatic brightness is supposed to work and I hope that Apple engineers read the article and implement its suggestions on the iPhone soon.

What do you think of the iPhone's auto-brightness setting?

Editorial standards