Hardware mod to fix Automatic Brightness on Android smartphone?
November 2, 2011 11:05 PM Subscribe
I've got an idea to fix the crappy automatic brightness sensor on my Android phone. Will it work / screw anything up?
OK, so this explanation of why auto-brightness doesn't work on smartphones makes perfect sense. The little brightness sensor lens has a very narrow field of view and essentially can only measure how illuminated your face (or the room behind you) is, not how bright the phone background or screen surface is.
It seems to me a quick fix would be to modify the sensor so its field of view is a little wider, more of a fisheye, so that it at least would get a more average reading across the whole room (instead of a spot measurement of a dark corner or bright light fixture).
My plan is to carefully mask and sand the phone face above the light sensor to a matte/opaque finish. Do you think this will work to force the light sensor to capture a wider field of view? Is this what I want, anyway?
(Phone is a HTC T-Mobile G2, running Cyanogenmod 7)
OK, so this explanation of why auto-brightness doesn't work on smartphones makes perfect sense. The little brightness sensor lens has a very narrow field of view and essentially can only measure how illuminated your face (or the room behind you) is, not how bright the phone background or screen surface is.
It seems to me a quick fix would be to modify the sensor so its field of view is a little wider, more of a fisheye, so that it at least would get a more average reading across the whole room (instead of a spot measurement of a dark corner or bright light fixture).
My plan is to carefully mask and sand the phone face above the light sensor to a matte/opaque finish. Do you think this will work to force the light sensor to capture a wider field of view? Is this what I want, anyway?
(Phone is a HTC T-Mobile G2, running Cyanogenmod 7)
Or a bead of hot glue gun glue (that stuff'll peel right off when it's ready to)
posted by aubilenon at 11:45 PM on November 2, 2011
posted by aubilenon at 11:45 PM on November 2, 2011
Have you played with CM's automatic brightness tweaks?
They can be found in: Menu > CyanogenMod Settings > Display > Automatic Backlight > Light Levels section.
Specifically, if you go into "Edit Other Levels..." you can see the raw sensor data in numbers.
There are other options to play with. For example, you can change some options to have the brightness change instantly.
posted by aGee at 2:38 PM on November 3, 2011
They can be found in: Menu > CyanogenMod Settings > Display > Automatic Backlight > Light Levels section.
Specifically, if you go into "Edit Other Levels..." you can see the raw sensor data in numbers.
There are other options to play with. For example, you can change some options to have the brightness change instantly.
posted by aGee at 2:38 PM on November 3, 2011
Response by poster: Yep aGee, I'm using the raw sensor data to test how crappy the sensor is, and it's pretty crappy. Very directional.
The Vaseline does nothing (but it was a good idea!). Sensor readings of a wall and a light fixture were the same before and after.
I wonder if some kind of stick-on fisheye lens (like on cheap watches) might be another option?
posted by anthill at 3:49 PM on November 3, 2011
The Vaseline does nothing (but it was a good idea!). Sensor readings of a wall and a light fixture were the same before and after.
I wonder if some kind of stick-on fisheye lens (like on cheap watches) might be another option?
posted by anthill at 3:49 PM on November 3, 2011
I just read the article you linked, and the author's main point appears to be that the brightness sensor intercepts rays coming from behind the user's head toward the phone when it really should be testing what's coming from behind the phone toward the user's eye.
It seems to me that in fact the screen backlight is competing with both light from behind the user (which tends to wash out display contrast) and light from behind the phone (which will make the phone appear darker by comparison), and that good auto-brightness software would take into account brightness readings from both the user-facing dedicated sensor and the room-facing camera.
It further seems to me that light coming mostly from the side wouldn't matter much, since it would tend to glance off the face of the phone rather than finding its way into the user's eye; I wouldn't expect a fisheye over the user-facing sensor to help.
posted by flabdablet at 2:09 AM on November 4, 2011
It seems to me that in fact the screen backlight is competing with both light from behind the user (which tends to wash out display contrast) and light from behind the phone (which will make the phone appear darker by comparison), and that good auto-brightness software would take into account brightness readings from both the user-facing dedicated sensor and the room-facing camera.
It further seems to me that light coming mostly from the side wouldn't matter much, since it would tend to glance off the face of the phone rather than finding its way into the user's eye; I wouldn't expect a fisheye over the user-facing sensor to help.
posted by flabdablet at 2:09 AM on November 4, 2011
Response by poster: Yes, totally agreed on all points, flab. Unfortunately the problem with using rear-facing light sensors (like the camera) is obstruction by hands, etc.
What I'd like to do is experiment with widening the light sensor's field of view to about 90 degrees, rather than the ~10 degrees it is now, and blurring the 'lens' so it samples a full-field average rather than a spot.
Watching the raw sensor output as I tilt the phone, the sensor reading jumps from 19 (white, lit ceiling) to 80+ (light fixture) over the course of a very small rotation. That seems way too inconsistent to try and fix in software.
posted by anthill at 5:23 AM on November 4, 2011
What I'd like to do is experiment with widening the light sensor's field of view to about 90 degrees, rather than the ~10 degrees it is now, and blurring the 'lens' so it samples a full-field average rather than a spot.
Watching the raw sensor output as I tilt the phone, the sensor reading jumps from 19 (white, lit ceiling) to 80+ (light fixture) over the course of a very small rotation. That seems way too inconsistent to try and fix in software.
posted by anthill at 5:23 AM on November 4, 2011
This thread is closed to new comments.
posted by aubilenon at 11:07 PM on November 2, 2011 [1 favorite]