Friday, 28 September 2012

Velis auto brightness

Get the fun back to your auto brightness...

Free download link: Google play store

Strings for translations - all translation help appreciated. The link points to a .zip archive containing all localizations. The base for translations is english text found in "values" directory. Please send the translated strings to my e-mail. Basic knowledge of xml needed: translate only values, not ids. Use plain text editors such as notepad.exe, gedit or kate. Make sure the file is UTF-8 encoded before sending it back.
You can test your translation before sending it to me by placing your translated strings.xml into the phones /sdcard/ directory (root of external storage). The app will detect if such a file is present and load it. Note that currently the menu and some arrays are not translated in this way, but most of the strings should work just fine.

For usage, please see the manual.

Please see XDA homepage about language support. Any translation help most welcome!

Velis auto brightness aims to provide the best possible brightness experience by using your devices sensors to determine the environment you're in. You have complete control over how much brightness will be applied for any given light condition, from selecting the sensors used to fully customizable brightness graph. This is a replacement for system provided auto-brightness functionality usually found in Settings / Display / Brightness

  • Initial configuration wizard for an easy start
  • User-selectable sensors: light, proximity (cameras planned soon)
  • Supports custom sensors on phones such as Sony Xperia
  • Brightness presets for every taste and screen
  • Profiles (save the brightness graph under your own name)
  • Fully customizable brightness graph to fit your needs or cover your sensor’s faults
  • Extensive sensitivity adjustments (light change threshold, smoothing times up / down, boost threshold)
  • Superdimming to make those shades really dark 
  • Excluded apps (will disable Velis Auto Brightness when they are on top)
  • Launcher widget with on/off button, profile select button and a brightness graph
  • Tasker / Locale support for many sensor readings and app settings
  • Convenient in-app store for premium content (some tasker and widget functionality) and developer support
  • Custom app language
  • Additional brightness when charging
  • Only uses sensors when screen is on conserving battery
Battery consumption notice: This app has been and still is rigorously tested against battery consumption. The only things consuming battery are graph updating (main app screen) and Tasker / Locale conditions for lux, brightness readings (they are frequent events).
However, some phones - most notably some custom ROMs on SGS 2 - will still report this app as the highest battery user even though the battery does not drain any faster than without this app. Please verify your actual battery usage before complaining about the app being listed as a big consumer.

Tasker plug-in / Locale plug-in: Provides conditions for screen on, calculated light reading, proximity sensor reading, calculated brightness. Exposes many settings to locale / tasker for detailed adjustment from these managers. Some of this functionality is premium content available through in-app purchase.

XDA thread (best for support) here.


Activating multiple auto-brightness applications will not produce expected results so make sure only Velis auto brightness is active while you test it. This file is provided AS IS - without any warranty. The autor will not be liable for any (un)imaginable inconveniences, including, but not limited to your phone frying or your screen starting to shoot launcher widgets at you. :)


This app is available in following languages

* English - base language
* Chinese by Jinran Lin
* Czech by Holly Hell
* Dutch by Maardiweb
* French by Pims83
* Italian by siggey
* German by Chef Koch
* Greek by pugsang
* Hungarian by XT69
* Japanese by Magus
* Lithuanian by cukierkas
* Norwegian by MrMastodon
* Persian by Alireza Afkar
* Polish by trur3
* Portuguese by renatohm\n
* Russian by Pavel Utochkin
* Romanian by rapttorx
* Slovak by kubics
* Spanish by UnderXP
* Vietnamese by Vu Hien
* Slovene

Thanks to all the translators for their hard work.


WRITE_SETTINGS: Required to turn off system auto-brightness. This is for your convenience so that you don't have to go to system settings manually turning off system auto brightness
RECEIVE_BOOT_COMPLETED: Required for starting the service at bootup so that auto brightness actually works without manual program start.
SYSTEM_ALERT_WINDOW: Required for auto brightness to actually operate
GET_TASKS: Needed to detect current top activity for app exclusion list and proper screen filter operation
CAMERA: Determine environment brightness through cameras.
BILLING: Required for in-app store


Main screen




Launcher widget


Unknown said...

- deamon suddenly starts new? sometimes the screen has 100% backlight for 10 seconds
- the handling is to be improved the light graph can become a wave, storing of profiles is a term of luck
- seems, that I can not deactivate the deamon, no matters what settings I made in the app
- using frontside camera will be a good idea, some light detectors are not good enough or not available

jd said...

if there a way to download the apk manually and not from play store? unable to download frm play store due to incompatibility to arc s

Velis said...

@jd: the apk can be downloaded from XDA thread, first post, but please read the notice about phone compatibility in that post

1 - known issue being resolved
2 - don't know what you mean, please explain further on mail or XDA thread
3 - feature being redesigned (discussion about it in XDA thread, posts 316 - 319
4 - on TODO, will be done ASAP

Unknown said...

Cool app, thanks for your work.

A suggestion ;to handle the super dim layer' you should create a negative scale, below zero the super dim layer grows progressively til -100.

Anonymous said...

Great app, but I agree with sophal, create a negative scale to super dim. In fact my phone doesn't react no matter what number I put into the superdim function.

Velis said...

I can't do that for a few reasons, the most important being:
1. Each phone has a fixed minimum brightness which I cannot determine. Between that brightness and 0, the curve would be totally unresponsive.
2. Given the above problem, it makes some sense to only activate super dimming below that minimum brightness. Of course that doesn't prevent you from entering 100 (%) and having it active all the time.

I have added a TODO to show the threshold in the graph though. That should help users visualize where the functionality would take effect.

Anonymous said...

Are you still going to add a camera a light sensor? Would be great, as long as someone has no real light sensor build in?

Unknown said...

Nice App. Thx. Would be nice to have separate sensitivity before adjustment controls (increase vs decrease).

When ambient light increases I'd like Velis to react almost immediately (e.g. 2 - 5%), but not as quickly when ambient light decreases (e.g. the default of 20% would be fine in this case).

Anonymous said...


The default sensitivity is too low with 5%. I ve been testing and noticed that 20-25% is optimal because then the brightness only changes when reflection is really disturbing, thus reducing battery consumption enormously.
Battery mix shows a reduction from over 40% now at 10-15% in a one hour normal phone usage.

You are doing a good work. Keep the app small sized and efficient as it is.


Velis said...

Camera light sensor is added since version 3. See XDA thread about how to activate it.

About the sensitivity thresholds: this issue is handled with smoothing time. Not quite what you want, but achieves a similar effect if you set a long smoothing time for downward changes.

Velis said...

The default sensitivity depends on what you set in the wizard. It is 2 for high, 5 for med and 20 for low.

Anonymous said...

Thanks for the update to fix the Package Installer problem. (I wonder why that was a problem in the first place?)

FYI, Custom Auto Brightness' way of dealing with this problem is simply to exclude Package Installer. But that seems like a kludge. Better to understand why the Touch Screen is inhibited by a dimmer program and prevent the problem in the first place.

Anonymous said...

feature request: change light profile scheduled by battery charge level. E.G. over 66% Profile Bright, Under 33% Profile Low etc...

Velis said...

This is already suported through Tasker / Locale support