[R&D] Settings Screen Brightness API Issue - AT&T Samsung Galaxy S II Skyrocket SGH-I727

I am writing an application that changes the brightness, and I noticed that the Skyrocket does not return the proper values.
Using the Settings class if I call:
Settings.System.getInt(resolver,Settings.System.SCREEN_BRIGHTNESS);
25 is returned the first time regardless of the system brightness. If I call it again, then the proper value is returned.
Can you guys confirm or deny this issue? I've tested on another phone and emulator, which work as documented.

wrong thread somehow. wat.

My screen doesn't keep it's brightness settings when I use another program besides the built-in brightness changer in the Settings menu. If I set it low and I lock it, it always comes back up to full brightness after I turn it back on. Weird.

Seems that the T989 t-mo variant has the same issue with CM7's display tweaking utilities. Something in the hardware seems to always make it come back on at a hardcoded predefined brightness.

Hi,
As I recall from poking around the kernel source, there are some routines that intercept the value passed from the ROM and tweak it a bit before actually applying it to the screen.
Take a look at ./drivers/video/msm/lcdc_ld9040.c in the kernel source, IIRC there are some hardcoded values in here that might be resulting in your reading of 25 (I think there is a minimum value of 24 set somewhere in there, been a while since I looked)

Related

How can you dim the screen further?

Hey Everyone,
As has been mentioned many times in other threads:
1) The LCD is often the biggest battery drainer
2) The 'minimum' setting of the brightness setting is still needlessly bright.
It certainly can be pushed further down for dim/night/dark settings.
3) Certain apps "dim" the screen but are just changing the color, not the backlight. So while useful they still aren't helping your battery.
Following some tips from a different android phone, I found this file:
/sys/devices/platform_/nov_cabc.0/leds/lcd-backlight/brightness
Which appears to contain the current 'brightness #' of the LCD backlight.
Using the normal Brightness slider, the value changes from 30 - 255, with 255 being the brightest. So this clearly could be reduced further.
Setting 'Screen Filter' to 50% brightness has no effect on the value.
Here's something interesting:
Assume the screen is already set at lowest brightness.
When I use 'Widgetsoid' to set brightness to '1', the screen dims slightly, then brightens back up. The 'brightness' file gets set to 20.
'widgetsoid 20' feels the same as 'min brightness 30'. - I wonder if Android is enforcing minimum backlight?
Anyway, thought that would be interesting to note. I'm going to download some other screen dimmer apps and see what they do.
- Frank
I found this online which is very interesting reading:
http://www.scribd.com/doc/35972886/An-Analysis-of-Power-Consumption-in-a-Smart-Phone
At '30' they said the display consumed 7.8 mW, while at 255 it consumed 414 (!!!)
Various apps coud push the value to 20 - tasker, adjbrightness.
Tasker tries to set it lower but as with widgetsoid, you can see the screen get forced back up to 20.
adjbrightness can "set" it lower than 20, but the entire screen blacks out, even at 19. Remember where the other buttons are so you can restore brightness!
- Frank
Whoa, thanks for the information. That pretty insane but its an apparently in the Market: Screen Filter, saves a helluva lot of battery.
Edit: Nevermind, Frank shut me up LOL.
Sent from my HTC Glacier using XDA App
I read a thread that said that the stock rom just doesn't allow setting it that low.
Ah well
- Frank
ChodTheWacko said:
I read a thread that said that the stock rom just doesn't allow setting it that low.
Ah well
- Frank
Click to expand...
Click to collapse
Can you set it lower in other roms - like cm7?
netter123 said:
Can you set it lower in other roms - like cm7?
Click to expand...
Click to collapse
I've been playing with CM7 which has some nice features for customizing the auto-brightness settings as well as the "dim" value which seems to be the lowest value the screen will go to and what it gets set to when the screen dims before shutting off after a timeout.
For the Dim setting in CM7, the default is 20. The next highest setting in the picker is 18. I believe it goes down to 0 or 1. When set to 18 or lower the screen blanks out completely when dimmed. Depending on how you test this, you may have a problem getting the screen back, so be careful you know where your widget button is on the screen to bring it back... 20 seems to be the lowest value. However, while dim, in a very dark room it could certainly be even dimmer so I don't know why lower values don't work.
I've also found the light detector doesn't seem to detect a continuum of light levels. It seems to be quantized at particular values, so there's a pretty hard limit on how fine you can set the auto brightness levels since the lowest light reading it seems to take is not very sensitive. It can't seem to distinguish between a fully darkened room and a dimly lit room, so setting the lowest value automatically makes the screen too dark to be comfortable in many environments, but then too bright for a really dark room. I don't know if this is an issue with the ROM software or a hardware limitation of the sensor. I've set my lowest auto setting to 40 which seems to work well, then I manually switch it to the dim value (20) if I'm in the dark.

Windows 7 Registry Backlight

I have an LG Optimus 7, its a great phone but the battery on it seriously sucks. I lowered the backlight, turned off bluetooth, wifi etc but I can barely get through the day of usage.
My phone is unlocked and I have access to the registry, I want to lower the backlight further beyond what the control panel will let me do. Does anyone know the registry key for the backlight?
I found:
HKEY_CURRENT\CONTROLPANEL\BACKLIGHT
The value is currently set to 1099958376
However before I change it I would like to know what the value represents so I don't mistakenly set the phone backlight to 0.
Thanks
"HKEY_CURRENT\CONTROLPANEL\BACKLIGHT" is a directory, not a value. You shouldn't edit it directly.
But anyway, don't bother with the registry. I've modified every single key that seemed minimally related to brightness, with no success. This seems to me like a driver/firmware issue. Although I would be happy to be proven wrong...
(And by the way, allow me to redirect you to this thread. It wouldn't hurt to complain about it... )
That is too bad
If anyone has an answer to this please help.

[Q] CM7 and brightness

Sorry if this is been asked before. But I can't find why latest nightlies don't have CMParts > Display > Automatic Brightness customisation settings like RC1. Also if i use an app like GPS Status that shows brightness levels, it shows no readings.
Any ideas why? is brightness broken on G2x is that why these settings were removed?
Sorry but I am also new to CM7 so not sure what worked or didn't work before, but I tried flashing RC1 and when I went to those brightness settings it showed both raw and filtered brightness values as -1 all the time. So something seems wrong.
Settings>display>brightness
I know that one but the one through CMParts allows better control and custom levels as I had gotten used to on another CM7 device
What's CMparts?
You mean Spare Parts?
No I mean Cyanogenmod settings / display / auto backlight
Does no one know what I am talking about
syl0n said:
Does no one know what I am talking about
Click to expand...
Click to collapse
Haven't loaded up cm7 for a couple weeks now so I can't check it for you. Did you try asking in the cm7 thread?
Yeah I tried didn't get a reply.
Also seeing some weirdness where brightness returns to the value before "Auto Brightness" was ticked in normal android display settings when transitioning between screens in some apps. E.g. GPS Status, if i go to Menu > Settings it goes to the level before clicking Auto Brightness, then if i hit back, it returns to the automatic value. .

Cm7 Automatic Backlight Settings

I wrote down 2 pages and hit post but xda logged me out and now I'm really, let's say it, mad
Hello everyone.
Shorter version:
CM7
Pros:
1. Amazing battery life.
2. More options and settings (after all it is cm).
3. Nicer user interface.
4. Flash player 11 for arm6 is working perfectly.
5. No bloatware.
6. Fast enough and stable (not one fc so far).
Cons:
1. Front cam. Although back one is working fine it would be nice to have a front one as well. Minor issue though, I don't use it anyway.
2. Fm Radio is always turning my bluetooth on when I start it and use it. Don't know if it is supposed to do that but it is a real battery drain and I don't want to use 3rd party apps if that is even possible. This is a minor issue since I don't use it often.
3. Led notification turns green at 90% and more when charging and my phone tricked me to unplug quite a few times Also a minor issue.
4. Default automatic brightness is just terrible. I know that they can be modified through cm settings>display>automatic backlight but I am not sure what values to enter to get the best and optimum results. I just cannot get them quite right.
So, to conclude. Cm7 is just great and really ready for daily use. I only need to set up the automatic backlight properly and this is where I need your help. If anyone knows the best values for these settings, please, write them down in this or the original cm7 thread.
Best wishes
I've set the status bar notification for backlight to 25/50/75/100. I feel that these values suit every possible condition.
Alex C. said:
I've set the status bar notification for backlight to 25/50/75/100. I feel that these values suit every possible condition.
Click to expand...
Click to collapse
Hi Alex, you must have misunderstood me. I'm not talking about those settings. I don't want to adjust brightness manually. I'm talking about window length, reset threshold, sample interval and custom light sensor levels so my phone can automatically adjust brightness. These can be found in cyanogen settings>display>automatic backlight
Regards
Ah, ok then.. Unfortunately I did not have the patience required to set/tweak them.

Fix adaptive brightness (windows rt/8)

I customized a luminosity curve for my surface rt, just edit the registry keys.
Download extract and run the attached .reg file and confirm the insertion of the Keys, then reboot the system.
Alert to make a backup of the old keys if you want to restore the previous state.
This change is compatible with all windows 8 but I have tested only on the surface.
Adaptive brightness varies proportionally to the user manual brightness, I suggest to manually adjust the brightness bar to about 20%, if you place the bar at 0 the brightness will be minimal with no automatic adaptation.
Appreciated thanks
New version v2
New improved version.
Try it and tell me if it's okay.
In the zip you will find the normal version and one with more brightness in the dark
I suggest to manually adjust the brightness bar to about 25%
So you have a fix, that's great. But to what? You didn't state what the problem is. Neither did you way what you are doing differently over the default values. Why would me, or anybody else for that matter, want do download this?
Amax said:
So you have a fix, that's great. But to what? You didn't state what the problem is. Neither did you way what you are doing differently over the default values. Why would me, or anybody else for that matter, want do download this?
Click to expand...
Click to collapse
In my surface the luminosity curve does not satisfy me.
The display seemed to have only three levels of brightness, setting an average value (ie on the desk in the room in the morning) adaptivity did not fit values ​​for low-light (night) and lots of light, that is to say the brightness in the dark was not a minimum making it annoying for the view and unnecessary consumption of battery, instead with shaded light levels brightness became easily maximum, with again a waste of battery.
This forced me to move often the brightness bar manually, but now with my calibration does not touch more because it adapts automatically to any light condition.
Also the adaptation of brightness occurred after 3 seconds by the change of light, whereas now changes instantly in 0,1 seconds (100ms).
I like it a lot, just what I was looking for.
I use mostly in low light conditions my surface so it is very useful.
Just one remark: it is too sensitive so it is changing screen brightness very quickly even when I just touching the upper part of the screen and making a little shade on the light sensor...
So I think instead of 1 msec. would be better 3 msec.
Would you please and make a 3. version of the settings with 3 msec.?
Alapar said:
I like it a lot, just what I was looking for.
I use mostly in low light conditions my surface so it is very useful.
Just one remark: it is too sensitive so it is changing screen brightness very quickly even when I just touching the upper part of the screen and making a little shade on the light sensor...
So I think instead of 1 msec. would be better 3 msec.
Would you please and make a 3. version of the settings with 3 msec.?
Click to expand...
Click to collapse
100ms not 1ms! However, this file will change only the time in 300ms
antys86 said:
100ms not 1ms! However, this file will change only the time in 300ms
Click to expand...
Click to collapse
You are right, 100 ms. I was in a hurry. Thanks for the fast response and update
Your v2 seems to be working fine for me. Before applying it I could really tell when my surface was adjusting the screen, after applying it the transitions seems smoother and less abrupt.
I have been looking for documentation about how all of these things really work and the closest thing i could find was this link http://superuser.com/questions/644538/customize-adaptative-brightness-in-windows-8
but they seem to be using a different registry location than what you are and different registry names
regardless your settings seem to work immediately after restarting the sensor service

Categories

Resources