Better control over brightness - Gen8, Gen9, Gen10 Themes and Apps

For amateur astronomy use, I needed to be able to bring down my A43's LCD brightness to a very low level. After a bit of experimenting, here is a very simple app that lets you have a darker screen than the OS normally allows:
http://code.google.com/p/superdim
It requires root.
This is my first independent Android app, so no doubt I screwed up in some way.

arpruss said:
For amateur astronomy use, I needed to be able to bring down my A43's LCD brightness to a very low level. After a bit of experimenting, here is a very simple app that lets you have a darker screen than the OS normally allows:
http://www.mediafire.com/?zwsg7aeqtcqogpm
It requires root.
This is my first independent Android app, so no doubt I screwed up in some way.
Click to expand...
Click to collapse
Nice, if you need it, make it. Personally, I find using Night Mode in Chainfire better than simply turning down brightness. It turns the brightness down, and renders everything in red, or whatever color you choose, but red is the correct choice to retain night sensitivity.
Obviously, I probably wouldn't watch a movie like that, but it's great for when I'm bow-fishing by full moon and want to change songs or something without wrecking my night vision.

For astronomy purposes, ChainFire3D's night mode won't be enough. At the lowest normal system backlight setting, if one is fully dark adapted under a dark sky, the amount of light leaking through the black pixels will be enormous--the screen will look grey rather than black (well, I haven't tried it, but I have experience with other devices). What one needs to do for serious night vision protection is to BOTH turn the view to red with ChainFire3D AND dim the backlight to a very low level with this app. And I am not even sure this will be fully satisfactory, because on my A43 the amount of light leakage is really big.
By the way, I posted a new version and source, and renamed the project to SuperDim. I also added a toggle for the power LED, since they made it green rather than red.

arpruss said:
For astronomy purposes, ChainFire3D's night mode won't be enough. At the lowest normal system backlight setting, if one is fully dark adapted under a dark sky, the amount of light leaking through the black pixels will be enormous--the screen will look grey rather than black (well, I haven't tried it, but I have experience with other devices). What one needs to do for serious night vision protection is to BOTH turn the view to red with ChainFire3D AND dim the backlight to a very low level with this app. And I am not even sure this will be fully satisfactory, because on my A43 the amount of light leakage is really big.
By the way, I posted a new version and source, and renamed the project to SuperDim. I also added a toggle for the power LED, since they made it green rather than red.
Click to expand...
Click to collapse
Hmm. That's good to know for the A43. I'd like to know what you think of the night mode in chainfire, just because there aren't many other people who worry about this topic. I live in St. Louis, a big city, so you probably have less ambient light, but I also wonder if my A101 gets darker than the A43. Even at night, I can turn it down to the point that I really can't read a damn thing.
Great idea with the Power LED. Once again, I don't think light levels drop low enough in St. Louis for it to bother me, but I hadn't even thought of disabling it.

To really be dark adapted, you need to be away from white light for about 45 minutes. (Though I find that after 15 minutes the payoff diminishes.) It's not going to happen outdoors in a big city.
I added profiles (three night, two day), and integrated SuperDim with ChainFire3D, so if you have ChainFire3D installed, you can control its night mode directly from SuperDim, and even include its night mode setting in a profile.
For my own use, I wanted a red screen dim profile for astronomy, a green screen dim profile for reading books in the dark, a dim full color profile for other night use, a bright green profile sometimes for reading books in the day, and a full color bright profile. But you can save whatever you want in the five profile slots.
I've been using figuring out the light control stuff for SuperDim as an opportunity for learning how to program for Android in preparation for writing (not from scratch--I got a donation of the AstroTools source code under the GPL to start with, and I may port some code from open2sky and AstroInfo for PalmOS) a high-end astronomy app. (I'm an experienced PalmOS developer, but quite new to Android.) I'm actually quite pleased. I was dreading java (I've usually developed in C), but I am finding Android development, especially with Eclipse, surprisingly pleasant.

arpruss said:
To really be dark adapted, you need to be away from white light for about 45 minutes. (Though I find that after 15 minutes the payoff diminishes.) It's not going to happen outdoors in a big city.
I added profiles (three night, two day), and integrated SuperDim with ChainFire3D, so if you have ChainFire3D installed, you can control its night mode directly from SuperDim, and even include its night mode setting in a profile.
For my own use, I wanted a red screen dim profile for astronomy, a green screen dim profile for reading books in the dark, a dim full color profile for other night use, a bright green profile sometimes for reading books in the day, and a full color bright profile. But you can save whatever you want in the five profile slots.
I've been using figuring out the light control stuff for SuperDim as an opportunity for learning how to program for Android in preparation for writing (not from scratch--I got a donation of the AstroTools source code under the GPL to start with, and I may port some code from open2sky and AstroInfo for PalmOS) a high-end astronomy app. (I'm an experienced PalmOS developer, but quite new to Android.) I'm actually quite pleased. I was dreading java (I've usually developed in C), but I am finding Android development, especially with Eclipse, surprisingly pleasant.
Click to expand...
Click to collapse
Yeah, my point exactly. I'm about 15 miles away from the city when out on the river, but that's not really far enough to get out of the city's light pollution.
Great work integrating with Chainfire. I'll give it a try next time I'm out. It should be nice having everything in one place.
I'll be looking forward to the astronomy app. It's been a looong time since I've worked on one, but I still have the DOS version of CyberSky I helped develop, so I guess I still have a fondness for them.

I posted 0.23, fixing a bug that made day2 = day1.
And I posted 0.30, adding support for toggling keyboard and button backlight on devices that have them.

I use screen filter to make my screen dimmer..
its in the market..

1. As far as I can tell, Screen Filter doesn't adjust the backlight--it only lowers the LCD pixel intensity. As a result, even if you turn Screen Filter to something really low like 2%, if you take your device to a dark area, you'll see a grey glow coming from the screen, because the backlight leaks through the black pixels.
To remedy the grey glow issue, you need to turn the backlight down, but the OS only lets you turn it so far down (10/255 on my A43; some phones only allow 20/255) without directly writing to /sys/class/leds/lcd-backlight/brightness (which needs root, and is what SuperDim does).
I also suspect that in a dark area, with brightness set to a low value, lowering backlight will produce a more visually attractive image than Screen Filter, because lowering the backlight will make a black background be fairly black.
That's all for backlit LCD screens. OLED screens are a completely different kettle of fish, and SuperDim won't help you much there (though it'll still let you set themes controlling LEDs and ChainFire3D nightmode).
2. I generalized the code a little so it should let you control whatever LEDs your device has, as long as they have a /sys/class/leds/*/brightness interface.
3. By the way, ChainFire3D's nightmode is a touch imperfect: if you set it to red, I think it just turns off the green and blue channels. That means that green and blue visual elements cease to be visible. A somewhat better nightmode would convert the image from RGB to grayscale, and then turn off the green and blue channels. I don't know how easy to implement that would be--I don't know enough about GL blending (I tried to google but couldn't find an answer simple enough for me to understand).

arpruss said:
1. As far as I can tell, Screen Filter doesn't adjust the backlight--it only lowers the LCD pixel intensity. As a result, even if you turn Screen Filter to something really low like 2%, if you take your device to a dark area, you'll see a grey glow coming from the screen, because the backlight leaks through the black pixels.
To remedy the grey glow issue, you need to turn the backlight down, but the OS only lets you turn it so far down (10/255 on my A43; some phones only allow 20/255) without directly writing to /sys/class/leds/lcd-backlight/brightness (which needs root, and is what SuperDim does).
I also suspect that in a dark area, with brightness set to a low value, lowering backlight will produce a more visually attractive image than Screen Filter, because lowering the backlight will make a black background be fairly black.
That's all for backlit LCD screens. OLED screens are a completely different kettle of fish, and SuperDim won't help you much there (though it'll still let you set themes controlling LEDs and ChainFire3D nightmode).
2. I generalized the code a little so it should let you control whatever LEDs your device has, as long as they have a /sys/class/leds/*/brightness interface.
3. By the way, ChainFire3D's nightmode is a touch imperfect: if you set it to red, I think it just turns off the green and blue channels. That means that green and blue visual elements cease to be visible. A somewhat better nightmode would convert the image from RGB to grayscale, and then turn off the green and blue channels. I don't know how easy to implement that would be--I don't know enough about GL blending (I tried to google but couldn't find an answer simple enough for me to understand).
Click to expand...
Click to collapse
I assumed it did convert to greyscale first before tinting, but you may be right. I'll have to think how to test that.

msticninja said:
I assumed it did convert to greyscale first before tinting, but you may be right. I'll have to think how to test that.
Click to expand...
Click to collapse
Quick test: If you set CF3D to blue, anything that's pure yellow goes black. For example, if you go to SuperDim, the left half of the brightness adjustment bar is yellow and disappears completely.
Another test: go with the browser to http://www.w3schools.com/html/html_colors.asp in red mode. Notice that the blue 0000FF and green 00FF00 samples can't be distinguished from 000000 black, while the red FF0000 can't be distinguished from white FFFFFF.

arpruss said:
Quick test: If you set CF3D to blue, anything that's pure yellow goes black. For example, if you go to SuperDim, the left half of the brightness adjustment bar is yellow and disappears completely.
Another test: go with the browser to http://www.w3schools.com/html/html_colors.asp in red mode. Notice that the blue 0000FF and green 00FF00 samples can't be distinguished from 000000 black, while the red FF0000 can't be distinguished from white FFFFFF.
Click to expand...
Click to collapse
Seems like pretty clear results to me. I wonder if converting to greyscale first would even be feasible, from a coding, and from a processor cycle standpoint. It would have to use extra power, but I wonder how much. It doesn't really matter for me, everything I need to do is doable, but interesting nonetheless.

msticninja said:
Seems like pretty clear results to me. I wonder if converting to greyscale first would even be feasible, from a coding, and from a processor cycle standpoint. It would have to use extra power, but I wonder how much. It doesn't really matter for me, everything I need to do is doable, but interesting nonetheless.
Click to expand...
Click to collapse
There may be a way of hardware accelerating this.

Related

[Q] can I see things on screen clearily in daylight?

ppcs like 696 have no differences in birhgt places no matter the backlight is on or off ,meaning we can save a lot of power during daytime by turn off the backlight.I have a program which can turn off the backlight.It's vital for its pure battery using time.There is another type of screen.if the backlight is off.you can see slightly changes on your screen.I'm planning weather to buy one or not by the screen type.thanks for anyone reply this.I'll update the program.
BOught.not light half reflection screen.over
I used to have an excellent screen on my Psion Revo. It had no backlight. It had a highly reflective backpanel, and I could see it in almost any light. However I always wanted a backlit screen so I could use it in the dim. It is a shame, but you cannot have both together. It's either reflective or it has the backlight - which is not reflective!

[Q] Samsung Focus: Hack to Disable Screen Dim on all White Screens (like Email)

Is there currently a hack, custom ROM, or other way to prevent the screen from dimming way down when on screens with lots of white (like the email/Outlook screen). Even when I have brightness set to "HIGH" and Auto to "OFF", all the other screens are really bright. But when I go to the email screen (or any other app that has a white background), the Focus automatically dims it way down. I'm sure this is to save battery or eye-strain on white screens, but I'd like it to be much brighter if possible.
Thanks!
Yeah, It's look hard but I want it on my HD7 too.
because the auto-brightness on WP7 was not smart so much compare to the other.
It's not give the lowest brightness when enter into the dark room (that's hurt my eye) and not bright enough when enter into the sunlight.
Nope. It's programmed into the pentile display driver. Total deal-breaker for me.
Perlnx said:
Yeah, It's look hard but I want it on my HD7 too.
because the auto-brightness on WP7 was not smart so much compare to the other.
It's not give the lowest brightness when enter into the dark room (that's hurt my eye) and not bright enough when enter into the sunlight.
Click to expand...
Click to collapse
The auto-brightness setting in WP7 adjusts a screen's brightness based only on the ambient light sensor. The Focus and Omnia 7 dim their screen if they're displaying a majority of white pixels, even with auto-brightness off and set to high.
Switch to the white theme. It happens so frequetly now that I don't even register it!
OK, so that's not a solution but give it a go, it bugged the hell out of me at the start but now ive forgotten it even does it.
I understand why they've done it, but really it should follow the brightness setting if they're worked about battery life.
Sent from my OMNIA7 using Board Express

ScreenDim

New on the Market:
https://market.android.com/details?...mkub21lZ2FjZW50YXVyaS5TY3JlZW5EaW0uVHJpYWwiXQ..
"Is your minimum screen brightness still too bright? Dim your screen below what your device normally permits for comfortable use in darker environments, reading in bed, amateur astronomy, etc.! No root required."
I find this app indispensable for comfortable reading at night.
Thank you so much for this, I was just thinking last night that even the dimmest setting on the A100 was still to bright
Sent from my EVO Shift 4G
Brilliant find, normally use the Kindle when reading in bed but the web browser is diabolical.
Toyface
Sent from my A100
Try screen filter from market instead....its free
Sent from my ADR6400L using XDA App
jimmyUT said:
Try screen filter from market instead....its free
Click to expand...
Click to collapse
I'm the ScreenDim developer. Screen Filter is free and clever, but it doesn't do the same thing as ScreenDim, at least not on LCD devices. Screen Filter basically just alpha-blends a dark box over the screen, without lowering the backlight level below what the OS normally allows. The result is that Screen Filter lowers the contrast and the color resolution, and in a dark room, the blacks will be gray because of the backlight shining through them.
ScreenDim allows you to both lower the LCD backlight level below what the OS normally allows on many devices and, if that's not good enough, to control the contrast just as Screen Filter does. Furthermore, because ScreenDim allows you to lower the backlight level, it will save on batteries in a way in which Screen Filter will not, again on LCD devices. (On OLED devices, there is much less of a difference.)
Moreover, my testing on my Archos 43 indicates that Screen Filter lowers the 2D rendering performance by about 30%. ScreenDim at 100% contrast shouldn't affect the 2D rendering, and even with the contrast adjust, I couldn't measure a noticeable 2D performance loss.
For real free alternatives to ScreenDim on backlit devices, there are AdjBrightness and my RootDim, both in the Market. Both require root, however. And ScreenDim's dual brightness-contrast adjustment feature is found in neither.
+1 for root dim, I use it and it works well on this tab and my atrix
be careful not to set it to 1 because its turns off the screen but the tablet is still on. i got stuck trying to find the slider to slide it back so i can see the screen again. nice find though.
Sent from my SCH-I500 using xda premium
jahciple said:
be careful not to set it to 1 because its turns off the screen but the tablet is still on. i got stuck trying to find the slider to slide it back so i can see the screen again. nice find though.
Click to expand...
Click to collapse
Tapping random places on the screen should quickly restore the brightness.
Also, if the tablet has volume buttons, you can adjust brightness with them.
Once you figure out what the lowest you can go is, go to Options | Set minimum brightness. Then you won't have this worry any more.
screen filter
Love screen filter it works great and its free, super simple, plus pop notification bar too. Awesome app. Screen filter is
https://market.android.com/details?...ch_result#?t=W251bGwsMSwxLDEsImNvbS5oYXhvciJd
Screeeeen filter link above!
arpruss said:
Tapping random places on the screen should quickly restore the brightness.
Also, if the tablet has volume buttons, you can adjust brightness with them.
Once you figure out what the lowest you can go is, go to Options | Set minimum brightness. Then you won't have this worry any more.
Click to expand...
Click to collapse
ahem. I'm not sure exactly where those buttons were when I needed them to try to get the brightness restored, but I couldn't find them on two occasions. I had to hard power off.
Great idea but it won't work for me unfortunately. I want something that will turn my tablet into pure darkness except for a small, dimly illuminated, clock on the screen. No matter what I find, an app always has too much backlight on and it bothers me when I'm trying to sleep.
If only I could get this app to interact with my alarm clock app somehow!
Status bar
Is there any way to remove the status bar icon of the ScreenDim?
I thought the app was designed to reduce distraction while using a device, but the icon being in the most prominent spot (upper left corner) draws attention constantly.

display color setting

hello
Is it the software or the way in which the three primary colors red, green and blue high or low on the screen.
Android is there a way to adjust the screen colors
marlikcoc said:
hello
Is it the software or the way in which the three primary colors red, green and blue high or low on the screen.
Android is there a way to adjust the screen colors
Click to expand...
Click to collapse
I don't think so... Kindle had issues and never got a utility to adjust it.
I checked my colors against my TV which is calibrated. Factory ROM gives a darn good picture, for such a device. Some overly reds but with proper brightness they are less noticeable. I don't know what setting you have the display on, I set mine for movie and leave it there. Dynamic and Standard is not good for Movies and Pictures. Though if you play games Dynamic may help. Standard is basic for reading and browsing.
Hope that helps

[Q] Z1compact: getting minimum brightness LOWER

Hello Everyone,
I have a problem with my amami and I doubt I am the only one but for some reason people do hardly complain: the brightness even at lowest possible setting is still too bright.
I had this back when I had original FW and I am having the same issue with CM11 (latest nightlies). Using manual control or auto-brightness doesn't make much difference, i.e. in a totally dark room the ambient light sensor reports 0Lux and the screen is still too bright.
I found a workaround already (the ScreenFilter app that people recommend all over the internet) but it sucks because it heavily reduces the picture quality, i.e. visibly reduces contrast and especially the gray color resolution. And it also doesn't reduce power consumption like real brightness value change would do.
I looked around for possible solutions and there is a trick with writting a new value of current limit to Linux settings (some mA value between 0 and 20 to some max_current file in procfs). And this really helps but also impacts the maximum brightness, the screen is hardly ready in sun light with reduced current.
Is there a silver bullet? I am thinking about writing an app for that but it would require SU permissions and is kinda dirty to implement. Can anyone recommend a better solution?
have you tried the xposed Modul "minimum brightness" ?
Install Lux Brightness. from play store.
You can overboost it or make the screen so dark that you can't even see it.
Another great screen mod is Twilight which basically dims the screen red based on clock so it helps fall sleep faster when using phone before bed.
New Folder said:
Install Lux Brightness. from play store.
Click to expand...
Click to collapse
Yes, another vote for Lux. It lets you set brightness to negative levels, mine is usually around -50%. https://play.google.com/store/apps/details?id=com.vito.lux&hl=en
Vote for Lux here too.
Nothing comes close
camaro322hp said:
Yes, another vote for Lux. It lets you set brightness to negative levels, mine is usually around -50%. https://play.google.com/store/apps/details?id=com.vito.lux&hl=en
Click to expand...
Click to collapse
Thanks for the hint. I tried the Lite version and AFAICS it simply uses the same trick as ScreenFilter and other "sub-zero" regulators, putting an alpha overlay on top of the image stack.
You can identify this kludge easily by looking at the button areas, they don't get darker anymore. And you can see the black level not getting real black, i.e. the power consumption is not reduced.
However, Lux seems to be one of the better toys because of the plugin interface. Unfortunately there is no HW plugin for Sony devices but judging by the quick look at the Nexus-4 plugin (it's open source!!) it should be possible to adopt this method to Z1 as well. So, maybe when someone could eventually implement that.
xposed Modul "minimum brightness" works, i tested it for you. you can make the screen dim to complete black with your normal display brightness slider without grey or black overlay. it just sets down the minimum brightness level to 1 or 0 (default is 10 or 20), so it should also work with enabled auto brightness
chertVdetali said:
I looked around for possible solutions and there is a trick with writting a new value of current limit to Linux settings (some mA value between 0 and 20 to some max_current file in procfs). And this really helps but also impacts the maximum brightness, the screen is hardly ready in sun light with reduced current.
Click to expand...
Click to collapse
As far as i remember, /proc is only used to call upon information, not to set specific values. What you are looking for is placed within /sys.
To be precise in /sys/devices/leds-qpnp-ee125e00/leds/wled:backlight/. There you will find a file called max_current with which you can easily control the brightness and set it to a very low level. Note that this actually dims the screen and not just applies a filter like most apps do...
One drawback is that the value will change again after you restarted the device. I set up a little flow with Automate β that takes care of this for me. I find this solution a lot better than all the screen filter apps.
This is true for CyanogenMod 11 and GreatDevs Kernel. It might be different on Stock. I know that the path for my Nexus 7 is sys/class/leds/lcd-backlight.
I hope this helps you a little bit.
rob rich said:
xposed Modul "minimum brightness" works, i tested it for you. you can make the screen dim to complete black with your normal display brightness slider without grey or black overlay. it just sets down the minimum brightness level to 1 or 0 (default is 10 or 20), so it should also work with enabled auto brightness
Click to expand...
Click to collapse
I am wondering how you can claim that the result is complete black. Calling this black is like saying "TN monitors have good black values" (I know such people, they change their mind quickly when they see my Eizo with a VA panel at night).
No, seriously, the default was already 10 (see config.xml in cm11 repo) and the difference between 1 and 10 is hardly visible. It's still way too bright for work without eye strain in the darkness.
@Wooaarr: thanks, this is apparently the way to go, I just need to find time to configure it. And yes, of course, the file is in sysfs and not procfs (automated typing, when I grew up with Linux there was no sysfs out there ).
chertVdetali said:
I am wondering how you can claim that the result is complete black. Calling this black is like saying "TN monitors have good black values" (I know such people, they change their mind quickly when they see my Eizo with a VA panel at night).
No, seriously, the default was already 10 (see config.xml in cm11 repo) and the difference between 1 and 10 is hardly visible. It's still way too bright for work without eye strain in the darkness.
@Wooaarr: thanks, this is apparently the way to go, I just need to find time to configure it. And yes, of course, the file is in sysfs and not procfs (automated typing, when I grew up with Linux there was no sysfs out there ).
Click to expand...
Click to collapse
when i disable autobrightness and push the slider to the left my screen goes completely off, so you wanna say that screen off isnt black? funny
chertVdetali said:
Thanks for the hint. I tried the Lite version and AFAICS it simply uses the same trick as ScreenFilter and other "sub-zero" regulators, putting an alpha overlay on top of the image stack.
You can identify this kludge easily by looking at the button areas, they don't get darker anymore. And you can see the black level not getting real black, i.e. the power consumption is not reduced.
However, Lux seems to be one of the better toys because of the plugin interface. Unfortunately there is no HW plugin for Sony devices but judging by the quick look at the Nexus-4 plugin (it's open source!!) it should be possible to adopt this method to Z1 as well. So, maybe when someone could eventually implement that.
Click to expand...
Click to collapse
Interesting information, I did not know that. You are correct, the navigation buttons are brighter than the rest of the screen at negative values. I had noticed that before but didn't know why. Works well enough for me though.
rob rich said:
when i disable autobrightness and push the slider to the left my screen goes completely off, so you wanna say that screen off isnt black? funny
Click to expand...
Click to collapse
Well, you claim that it works for me because you tested it on your device. So... yeah, why not, I could say what you mentioned above just following the same logics. :silly:

Categories

Resources