Closed Bug 935391 Opened 11 years ago Closed 11 years ago

Better light sensor behavior to reduce flicker

Categories

(Firefox OS Graveyard :: Gaia::System, defect)

defect
Not set
normal

Tracking

(blocking-b2g:-)

RESOLVED FIXED
blocking-b2g -

People

(Reporter: sulapy, Assigned: neopleo)

References

Details

(Whiteboard: [FT:System-Platform])

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36

Steps to reproduce:

Clone bug from bug 923031 for public discussion


Actual results:

The light sensor behavior on Alcatel OnetouchFire and Flatflish looks too sensitive.
User may fell the response of screen brightness changing too annoying.  
The bigger screen the worse feeling.  Flatfish is the worst case.


Expected results:

Expected to have better behavior for light sensor handling.

Similar bugs on other platform : 805902 ;  819744...
That quote from Sam's comment in bug 923031:
0001-adjust-the-brightness-value-at-a-time.patch

The value of brightness is too sensitive which makes the screen might go dim or bright too frequent.
After changing the the value of BRIGHTNESS_ADJUST_STEP from 0.04 to 0.01,the status is acceptable.

Note: In Android, it happens at DisplayPowerController.java. However, I have no idea about why I can still find this .java in the framework in b2g source.
Summary: [Flatfish] Suitability of light sensor behavior → Suitability of light sensor behavior
Blocks: flatfish
Quote from Fred Lin:
Sam, 
change BRIGHTNESS_ADJUST_STEP only affect the moving time between current brightness to target brightness, but not solve the unstability 

I have a quick patch that delay the light adjustment certain time, then compare with current brightness to avoid immediate jitter

https://github.com/mozilla-b2g/gaia/pull/12950

You can apply it on device and see if it's more likely your expectation.
Thanks Fred. I will give it a try later.
The way that Android takes to deal with the auto_brightness policy could be a good reference.
The followings are some differences in Android compared to FxOS.

1. Enabling Twilight adjustment
   - To expand the dynamic range of auto-brightness
     when it is especially dark outside.  The light sensor tends to perform
     poorly at low light levels so we compensate for it by making an
     assumption about the environment.

2. Setting two different hysteresis thresholds to debounce the light sensor when adapting to brighter or darker
   environemtns.
   -In these two different constants, the system will get the debounce time. 
    Hence, the ambient light value will be adjusted accordingly.

3. Apply spline adjustment. 
   - The auto-brightness spline adjustment. The brightness value have been scaled to a range of 0 . . 1.

There are much more detail information in these major functions. Please refer to the source in Android.
This bug is not specific to flatfish so we should push for a fix in Mozilla code base.
Blocks: 908549
Status: UNCONFIRMED → NEW
blocking-b2g: --- → 1.3?
Ever confirmed: true
Summary: Suitability of light sensor behavior → Better light sensor behavior to reduce flicker
Whiteboard: [FT:System-Platform]
Sam, are you the author of attachment 827857 [details] [diff] [review]? I think we could land this patch. Please complete the Github patch submission flow (set reviewer to me) and we will include this patch into the main Mozilla open source codebase. Thanks.

https://developer.mozilla.org/en-US/Firefox_OS/Platform/Gaia/Hacking#Submitting_a_patch
Flags: needinfo?(ckjboy2003)
Yes, I will complete the submission flow and set Tim as a reviewer.
Flags: needinfo?(ckjboy2003)
Triage: not taking features for v1.3 at this point even if it's just a one line change.

I will ask for approval when the patch landed on master.
-'ing per comment above.
blocking-b2g: 1.3? → -
Component: General → Gaia::System
Attachment #8350994 - Flags: review?(timdream)
Hi Tim, I have submitted the patch and set a reviewer to you for this patch.
Hi Sam, please create a pull request instead of diff, and remove the commented code, thanks.
Comment on attachment 8350994 [details]
the better light sensor behavior

Please amend the patch and submit a pull request for master from this branch. Thanks!
Attachment #8350994 - Flags: review?(timdream) → feedback+
Thanks, I have remove the commented code and done the pull request.
Comment on attachment 8351008 [details]
Change the value for adjusting of the brightness at a time.

You mean https://github.com/mozilla-b2g/gaia/pull/14919

We usually require trivial commits to be squashed into one commit before merging. To save us some time I am going to squash and merge this for you later today.
Attachment #8351008 - Flags: review?(timdream) → review+
master: 7ccd4a9acec6dc490bb53f43c05b293cfe017eb4
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Assignee: nobody → ckjboy2003
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: