[APP][2.3+] Lux Auto Brightness - Android Apps and Games

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Lux - The Original Android Auto-Brightness App
So I thought I should make an XDA thread for Lux, over a year after releasing it to the Play Store!
FULL or FREE​
Issues/Suggestions
If you have any issues or suggestions, please add them to the public issue tracker found here. Be sure to search first, duplicated issues will not work in your favour.
News
Update to 1.51 released to Play Store!
- Profiles. Have different behaviour for day and night!
- Root plug-ins. Custom kernel with RGB control? Make a plug-in to utilise it!
- Improved notification
- Low pass filter
- Cubic interpolation
- Polish/French/Russian/German/Italian translation
- Manual sunrise location input
- Control Dashboard slider with vol. keys
- Fade duration/step
- Reduced battery usage
- Fixes
Update to 1.06 released to Play Store!
- Automatic night mode (uses location for sunset/sunrise).
- Notification priority
- Enhanced dashboard and notification UI
- Enable/disable and refresh Lux via Tasker
- Bug fixes
Update to 0.76 released to Play Store!
- Fixed brightness issues after call
Update to 0.74 released to Play Store!
- Fixed max/phone brightness preferences swapped
- Added ignore 0 lux option
- Made static phone brightness optional
Update to 0.70 released to Play Store!
- New 'ascending' automatic mode for zero jitter!
- Expandable notification for added control (Android 4.1+)
- Improved efficiency
- Install to OS functionality
- Set min/max brightness bounds
- Adjustable night mode
- Improved persistence (Android won't kill it!)
- Fixed Nexus 7 255 luma bug
- Fixed Tasker 'on wake' revert bug
- Compat. mode is now known as 'sleep mode'
- Night Mode now default Dashboard action (hold for Astro. mode)
- Misc. tweaks and fixes.
App Description
Lux isn't your ordinary brightness app. It intelligently adjusts the brightness of your display based on the environment you're in. If, for example, you step into a dimly lit room, Lux will automatically lower the brightness of your display to make it not only comfortable to read, but to also preserve battery power.
Lux provides the option to automatically adjust the backlight at fixed intervals (periodic mode), when a change in environment is detected (dynamic mode), or when the phone wakes from sleep. It's also possible to adjust the backlight manually. Simply disable automatic mode and you can use it like a traditional brightness tool!
Perhaps the best thing about Lux is that you can teach it how to behave. If the backlight is too bright or dim for your liking, simply open the provided Dashboard, adjust the brightness slider to the level you desire, then hold the link button. Lux will use this new 'link' as a reference in future.
Give it a go! I want you to test Lux for more than the 15 minute refund period offered by Google. I understand that some devices may not have the best quality light sensor, and that you may need more time to play around with settings. If you find that Lux doesn't suit you after the 15 minutes is up, you can request a refund at any time via e-mail - no questions asked.
★FEATURES★
■ Custom auto brightness.
■ Sub-zero brightness to make reading in the dark significantly less irritating.
■ Battery efficient
■ Handy brightness widget
■ Option to use the camera to read in ambient light.
■ Power-user settings such as choice of interpolation, sensor debugging, and linked sample editing.
■ Backup to SD.
■ 'Ascending' auto mode for phones with inaccurate light sensors.
■ Gradual fade for backlight adjustments.
■ Astronomer mode adds a red filter to the screen to preserve the eyesight of stargazers.
■ Jitter control to prevent constant small changes to the backlight.
■ Automatic night mode, to change the colour temperature of the display for comfortable night time viewing.
■ Add app specific exceptions via sleep mode
■ No ads, or other nuisances.
■ Tasker and Locale support!
Note: Please disable other brightness apps before using Lux. The author is not liable for any issues caused when using this app.
★PERMISSIONS★
TAKE PICTURES AND VIDEOS: Used to read in luma values, if camera input is selected.
DRAW OVER OTHER APPS: Required for night/astro mode.
READ PHONE STATE: Required to prevent Lux from interfering with phone controls in Android 4.1.
MODIFY SYSTEM SETTINGS: Brightness is a system setting, as is toggling the default auto brightness.
RETRIEVE RUNNING APPS: Required to make the 'sleep list' functionality work, so Lux can disable itself when certain apps are in the foreground.
COARSE LOCATION: Required to automatically calculate sunrise/sunset times.
IN APP BILLING: Required for purchasing future device specific root only plug-ins, to enhance functionality.​

Lux Low-Level Plug-ins
Soon Lux will support plug-ins to bypass Android API limitations. These plug-ins serve to replace the overlay system Lux uses to make adjustments for Night/Astronomer modes and brightness in general. The plug-in library is free to use for non-commercial development, and can be found here:
Lux Plug-in Library | Nexus 4 Sample Plug-in Code​
How to make a plug-in
There are two approaches to making a plug-in for Lux. The passive and the active method. The former is as easy as providing a set of superuser commands for Lux to interpret and apply. These command correlate to functions such as setting pixel RGB or brightness levels. This is the type of plug-in the Nexus 4 sample linked above takes.
The active method requires you produce your own code to perform RGB/brightness adjustments. This might include importing a device specific library to do the heavy lifting, and then returning empty superuser commands back to Lux.
Getting Started
Simply import the Lux Plug-in Library source into your IDE as an Android Library Project, and then create a new Android app which extends PassiveDisplay.java.
PassiveDisplay provides hooks into Lux's plug-in framework, which you can use to provide superuser commands for Lux to execute. These commands correlate to functions such as setting RGB values. Take a look at the sample Nexus 4 project to see how it's all done.
Finally, in your new project's AndroidManifest.xml file, add the following:
Code:
<activity
android:name="com.vitocassisi.lux.plugin.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver
android:name="com.vitocassisi.lux.plugin.LuxBroadcastReceiver"
android:exported="true" >
<intent-filter>
<action android:name="com.vitocassisi.lux.plugin.search" />
</intent-filter>
</receiver>
<service
android:name=".[B]MY_PLUGIN[/B]"
android:exported="true" >
<intent-filter>
<action android:name="[B]YOUR_PACKAGE_NAME_HERE[/B]" />
</intent-filter>
</service>
Be sure to replace YOUR_PACKAGE_NAME_HERE with the name of your plug-in's package, and MY_PLUGIN with your extended PassiveDisplay class.
And that's it! Now you're ready to test!
Enabling Plug-In support within Lux
To enable plug-in support, you must check 'Enable plug-in support' in the Advanced section of Lux settings. Enabling this option forfeits all responsibility of mine for any issues caused while using Lux. Plug-in's can cause very real damage to your device if they're written incorrectly - don't use plug-ins from sources you don't trust!
Testing your plug-in
Testing is critical for creating a good plug-in. You are dealing directly with system files, and can easily cause damage if you do not know what you're doing.
DO NOT RELEASE A PLUG-IN WITHOUT TESTING IT ON THE TARGET DEVICE FIRST!
Ensure that the following work with your plug-in installed:
Astronomer Mode
Night Mode
General brightness adjustment
Lux readings functional
BE METICULOUS WITH YOUR IMPLEMENTATION OF isSupportedDevice()!
Modifying system files on the wrong model/kernel may cause irreversible issues!
Licence
Code:
Copyright © 2013 Vito Cassisi
You may not use this library except in compliance with the following:
- It cannot be used for commercial purposes under any circumstances, unless explicit permission is granted in writing from the author.
- Modifications to this library may not be distributed.
Unless required by applicable law or agreed to in writing, software
distributed under this licence is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

Great App!
I bought the App about 2 months ago and all I can say is that it works really good with my Nexus 7.
I can just recommend buying this - clearly the best solution for Auto brightness on the play store
Regards,
Rashiq

Best brightness adjustment app available. It fixed the screen flickering issue on my Nexus 7.

Im already using it for more than a month, and it works like it said.
Sent from my SCH-I500 using Tapatalk 2

If anyone wants to beta test the next update, send me a PM.

Subscribed. Because this app rocks.
And because the upcoming v0.70 (beta) rocks even harder. (Thanks for letting me test that, btw.)

Just added people who PM'ed me to the beta test.

i want to test beta too.
how it is different than stock auto brightness function?>

You can teach Lux to react a specific way under different light conditions, whereas with stock you get whatever the ROM's defaults are.
Edit: Oh, and PM be with your Dropbox account email if you want to beta test.

App missing in Play store. Please check.

xavierroy said:
App missing in Play store. Please check.
Click to expand...
Click to collapse
I briefly took the free version off the market. It should be back whenever Google updates their servers.

Just tested it.
Works great
thanks

Added new beta build to Dropbox.

Thanks for adding me to beta testing!
I just tried to use the tasker plugin, however it's not working, just gives 'no plugin config data' error. I tried to set the night mode to on.
Looking forward to further testing!
Regards

So far everything is working great for me. No random brightness changes or jittery transitions. Trying the latest beta now.
Sent from my SCH-I535 using Tapatalk 2

flash5000 said:
Thanks for adding me to beta testing!
I just tried to use the tasker plugin, however it's not working, just gives 'no plugin config data' error. I tried to set the night mode to on.
Looking forward to further testing!
Regards
Click to expand...
Click to collapse
I can't reproduce this issue. What steps did you take to create the plug-in?

Has been using the free version and it's been very reliable! One trouble is that when I m installing from APK I need to disable lux first otherwise O can't hit the OK button...
Sent from my GT-I9300 using xda app-developers app

lou2s said:
Has been using the free version and it's been very reliable! One trouble is that when I m installing from APK I need to disable lux first otherwise O can't hit the OK button...
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
I believe the paid version addresses this issue by temporarily disabling Lux when a package installer is opened.
Sent from my SAMSUNG-SGH-I747 using Tapatalk 2

zerkai said:
I believe the paid version addresses this issue by temporarily disabling Lux when a package installer is opened.
Sent from my SAMSUNG-SGH-I747 using Tapatalk 2
Click to expand...
Click to collapse
Free version does it too, but I haven't had time to tweak the free version to be more responsive. Will be better with v0.70.

Related

[APP][5.0+][2020.12.22] CF.lumen v3.74

About
CF.lumen adapts the colors on your Android device based on the position of the sun, or your custom configuration.
When using the default settings, your display will get a warmer tint (lower color temperature) when the sun is down, vastly reducing strain on the eyes. This will take some getting used to, though! The colors also match closer to common artificial light sources, than the daytime light you get from the sun. Blue light makes your brain want to stay awake, and a lower color temperatures reduces the amount of blue displayed; using this in the evening also reduces your brain's effort to keep you awake at night, and can be beneficial to your sleeping pattern.
During sleeping hours by default a red filter is used. Red strains your eyes the least, and retains your night vision.
Light sensor
The light sensor can be used to automagically adjust the color: switch to the sleep filter in full dark, or to the day filter (usually none) under bright lights.
Because light sensor quality varies wildly between devices, a calibration option is provided. Most devices seem to work fine with sliders set all the way to the left, others need them to be set all the way to the right. Experiment as needed, but be warned that some devices simply cannot distinguish between evening indoor lighting and full darkness, and this feature may thus not work well for you.
Color filters
Several filters are provided. Those named after a color (red, green, blue, amber, salmon) do not limit the display to those colors, but convert the displayed image to grayscale first, then display that image in levels of the selected color, instead of levels of all channels (white). This preserves details that would otherwise be lost.
Grayscale, invert colors, temperature adjustment and custom R/G/B adjustment filters are also provided.
Colorblindness
The master color filter setting also has an option for colorblindness enhancement, with settings for protanopia/anomaly, deuteranopia/anomaly and tritanopia/anomaly. These options redistribute colors across the spectrum, in theory enhancing clarity and color detail.
No claims are made to the effectiveness of these filters, but positive reports have been received from testers. Also note that these filters were thought up by Google engineers - CF.lumen just includes them.
Pro version
Upgrading to CF.lumen Pro will support my developments, remove all nags, unlock the option to start at device boot (make sure you test your configuration first), and unlocks notification options. It also enabled Tasker integration.
In Pro mode, the notification adds convenient buttons to quickly disable the current filter or switch to sleep mode, and you can switch the notification to when enabled mode, which shows the notification only when a color filter is active.
In non-Pro mode, the notification only asks you to upgrade to Pro. It may seem that notification is just there to annoy you, but it actually prevents Android from randomly killing the background service taking care of all the work. Getting rid of it without getting the service killed can be done by going to Settings -> Apps -> CF.lumen and unticking Show notifications.
As in the past CF.lumen was part of Chainfire3D, if you have the Pro package of the latter installed, Pro mode will also be enabled.
Drivers
CF.lumen currently supports three driver backends to adjust the display: the original CF.lumen driver, the KCAL kernel driver, and the rootless (non-root) overlay. See the driver section below for further details.
Performance
When no color filter is active, there should not be any noticeable performance impact. When a filter is active, impact depends on device and what you are doing. On some devices we have tested there was no performance impact at all, on others it was slightly noticeable.
Performance characteristics change based on the driver you are using. See the driver section below for further details.
History
Nightmode - now called 'sleep mode' in CF.lumen - was actually the kick-off of Chainfire3D's development, and the later arrival of the original CF.lumen additionally containing the functionality to change color temperature based on the sun's position. Completely different (and no longer possible) techniques were used to get similar results. There were fewer options, and the filters limited display to the selected channels instead of the currently used much higher quality method of displaying luminance levels on the selected channel.
Future
Keep in mind that Android's rendering system changes over time. This app was possible in the old days of Android, and then wasn't possible for a long time. Only with KitKat did it become possible to make this work again. As such, you should be aware that this app may simply stop working on future Android versions without the possibility of a fix.
Scary permissions
By far most permissions are used only for Google Maps to set your location, and Google Play to provide for In-App Purchases. I cannot make any claims as to what information the Google components do or do not send to Google servers, but no information is sent to me or anyone else (than Google).
Download
Get CF.lumen at Google Play
It needs Android 5.0 Lollipop or newer!
Screenshots
Walkthrough video
GIF
Drivers
CF.lumen currently supports several driver backends to adjust the display: the original CF.lumen driver, the KCAL kernel driver, the PCC/RGB kernel driver, and the rootless (non-root) overlay. Driver selection will only be presented to you if multiple drivers are actually supported on your device.
Drivers: performance background
Software compositing is when your device takes the different surfaces on screen (the app's display, the status bar, the navigation bar, a popup window, these are all surfaces), draws them into a single buffer, then lets the hardware display this buffer. Virtually all modern devices can also do hardware compositing, where these different surfaces are presented to display hardware themselves, skipping one drawing step. It should be noted however, that hardware compositing only supports three surfaces (usually), so only the most basic scenes can be rendered this way. If more than the number of supported surfaces are displayed, the system falls back to software compositing automatically. Performance is slightly lower when this happens, but it happens all the time, and I doubt you've ever noticed it without looking for it.
One specific note about this is that "secure" content (DRM protected video rendering, for example) can only be hardware composited, as the software is not allowed to gain access to the surface. So if you are experiencing video disappearing, it's because the system has switched to software compositing. This can be due to CF.lumen's driver, a color overlay, or even just a system popup pushing the number of surfaces beyond the number of supported surfaces by the hardware compositor.
Drivers: CF.lumen
The CF.lumen driver requires software compositing, as it changes the colors displayed during the software compositing step. Of course, it lets the system go back to hardware compositing if it's not actively changing colors. This can slightly impact performance.
This driver changes colors on the surface content level, and can perform all sorts of calculus before deciding what to display. This usually gives it the highest possible image quality output. For example, in the color channel modes (red - night mode, green, blue, amber, salmon), the image is first converted to a luminance-based grayscale image, and then output in the selected color channels. This dramatically improves clarity and detail over only displaying the selected channels. Taking red mode as an example, this means that green and blue image content still shows up in a shade of red, whereas normally all colors devoid of a red component would show up as full black. Because of the surface-based manipulation, the invert filter may sometimes show unexpected results.
This driver affects both full-screen screenshots as well as app screenshots. Aside from normal screenshot/cast purposes, these are also used by the system for animations and in the recent task lists, and thus it may sometimes appear like a filter is applied twice during rotation or while browsing the tasks list.
Since v3.65 this driver comes in three different modes:
Drivers: CF.lumen: Compatibility mode
This driver mode should work on virtually all devices out there, however, on many firmwares it comes with an extra large performance penalty. Rendering quality is generally excellent, but various internal actions of Android itself (such as screen on, pattern unlock, app install, etc), as well as any app that triggers Android's accessibility options, may temporarily interfere with the rendering. This can cause a flash of the original colors being shown, instead of our manipulated colors.
Drivers: CF.lumen: Performance mode
This driver mode overrides Android's rendering system in a different way. While it doesn't work on all devices and firmwares, if it does work, it is often significantly faster than the compatibility mode. It also doesn't suffer from short flashes of the original colors being shown. This mode causes visible artifacts on some devices, though it isn't common.
Drivers: CF.lumen: Anti-flicker mode
This driver mode is a hybrid of compatibility and performance modes. It uses the same subsystem as performance mode, and thus it doesn't work on all devices and firmwares. This mode keeps the rendering from compatibility mode, but attempts to prevent the short flashes of the original colors being shown.
Drivers: KCAL
The KCAL driver is quickly becoming a popular kernel mod for Qualcomm devices. It allows color adjustments in the display hardware itself. There is no performance difference with this driver, but of course your kernel must support it. This is the fastest driver.
This driver changes colors on the display level, and is limited in the operations it can perform. It is fast, but the image quality can be less. In color temperature modes (probably your most used mode) there is no difference with the CF.lumen driver. In the color channel modes however, there is no luminance conversion. If you select for example the red mode, you will only see the red component of colors. Pure blue, pure green, or any color which is a mix of blue and green but not red, will appear black.
A gamma correction option is available for this driver. Some devices automatically gamma correct the values CF.lumen gives the kernel, the app needs to know about this, so it can take this into account in its calculations.
This driver affects neither full-screen screenshots nor app screenshots. It does not support the colorblind filter.
Drivers: PCC/RGB
This driver is very closely related to the KCAL driver, as they use the same hardware, so please read that section. Some kernels provide support for one but not the other. If both are supported, KCAL generally gives you a few more options than PCC/RGB, but there is no performance difference between the two.
This driver does not support the grayscale, invert or colorblind filters.
Drivers: rootless
The rootless fallback driver (for non-root users) uses a color overlay. This is an additional surface, causes at least one additional expensive full-screen rendering step, and is likely to throw your system into software compositing mode most of the time. This is the slowest (and ugliest) driver.
Image quality wise, it is no competition for the other drivers, but not everyone has root. Like the other screen color tint apps on the market (there are quite a few, and while CF.lumen is older than all of those, it is certainly not the best known or most popular one), a color overlay is used. Where the other drivers properly manipulate the displayed colors, this driver is more like putting a half-transparent colored sheet over a picture. While it somewhat does the job, it lowers contrast significantly.
On Android 6.0, various Android functions refuse to work when an overlay is present. This includes apps asking for permission, installing apps, etc. The app attempts to detect these situations and automatically turn off the filter. If you spot a situation where the filter is not automatically temporarily disabled, please let me know.
This driver affects only full-screen screenshots (but not full-screen animations), not app screenshots. It does not support the grayscale, invert, or colorblind filters.
Non-GApps firmwares
This app uses Maps for manual location setting, and Play for purchasing Pro. An increasing number of users do not have GApps, for privacy, security, and other concerns. If the app is installed on such a firmware, your location will be determined using the normal location API (without manual override, so your phone has to be able to determine your location). As I do not want to deprive anyone from the potential health benefits of sleeping better, the app operates in Pro mode if you do not have the Play store installed (PayPal'ing me beer money is always an option).
The APK is attached to this post for those not using Google Play (only).
Under no circumstances are you allowed to (re-)distribute this APK
(v2.00: 32, v2.05: 180, v2.10: 164, v2.16: 288, v2.25: 118, v2.40: 555, v2.50: 546, v2.60: 39, v2.61: 132, v2.66: 27, v2.71: 563, v2.74: 388, v2.75: 1042, v3.00: 4320; v3.65: 1376)
Changelogs
2020.12.22 - v3.74
- (c) 2020
- Remove references to G+
- Android 11 support
- Android 10+: Show warning about notification options not working
- Android 10+: Disable rootless mode
- Android 10+: Disable advanced/injection/anti-flicker/performance driver (needs further investigation to make work)
- Add foreground service permission
- Built for API 29
- Fix notification spam issue
- Fix maps crashing
2018.12.20 - v3.72-TEST
- Pie: Fix soft-bar transparency
- Pie: Fix boot-up launch
- Pie: Fix maps not working
- Pie: Fix greylist violations
- Oreo/Pie: Fix notifications
- Fix Magisk detection / root warning
- Fix system settings modification permission handling
- Fix location permission handling
- Fix performance driver injection on some 7.0 devices
- Fix several deadlocks
- Add option to detect which driver mode is the fastest
- Support for new KCAL paths
- Replaced root sockets with Binder-based IPC
- Removed colorblind options (available in Developer Options on all recent devices)
- Greyscale/Saturation filter: allow up to 2.0x factor (oversaturate)
2018.11.28 - v3.71-TEST
- (c) 2018
- Basic Pie fixes (far from complete!)
- Updated libsuperuser and librootjava
- CF.lumen performance driver: fixed injector for newer Android versions
2017.02.09 - v3.70
- (c) 2017
- Upgrade grayscale filter from a toggle to a saturation slider
- CF.lumen driver: fix 'performance mode' on Nougat (bypass new linker protections)
- CF.lumen driver: fix darken filter math issue (still doesn't work on invert, though)
2016.03.30 - v3.66
- CF.lumen driver: smoother filter switching
- CF.lumen driver in Performance mode: fix disable hardware overlays option sticking when CF.lumen is disabled
- Tasker: fix black screen on filter selection
- Tasker: fix brightness change on filter selection
2016.03.01 - v3.65
- Reworked raw remote control receiver
- Fix logcat spammed with notification errors regarding a missing icon
- Fix issue with "Bright light" setting
- Fix flicker on location update
- Reduce frequency of notification updates
- Add color checker to rgb/custom and temperature filter selection dialogs
- Underlined numbers next to sliders can now be tapped to input a text value
- CF.lumen driver: fix not closing properly when switching to KCAL
- CF.lumen driver: better monitor accessibility settings
- CF.lumen driver: added anti-flicker and performance modes
- KCAL driver: add gamma correction feature
- KCAL/CF.lumen drivers: Tune color temperature algorithm
- PCC RGB driver added
- Add "Darken filter" setting to "Brightness" option (sub-zero)
- Made "Brightness" setting on filter selection an icon
- Moved "Auto-update location" option to the Map activity
2016.02.18 - v3.62
- Fix driver not initializing on various devices
2016.02.17 - v3.61
- Slight performance improvement in root driver
- Change timeout handling code in root service
- Fix background ANR
2016.02.16 - v3.60 - RELEASE NOTES
- Play release of v3.53
2016.02.16 - v3.53 BETA
- Add notice to reboot first after installation if old driver found
- Fix some options in the settings screen not being disabled when they should be
- Adjust light sensor calibration texts and min/max values
- Add option to auto update location (enabled by default, passive listener, no power use)
- Add welcome message
2016.02.13 - v3.52 BETA
- Fix issue with system-based SuperSU
- Fix old driver not always being reset when switching drivers
- Fix KCAL driver not always resetting when setting to disabled (screen power cycle also works)
- Fix rootless overlay being applied twice on service restart
- Periodically and on certain actions, reset color matrix
2016.02.08 - v3.51 BETA
- Fix grayscale channel rendering
- Allow master mode without location
- Improve Marshmallow doze/standby handling
- Fix filters sometimes not showing on initial setup in Rootless mode
- Added warning if drawing over other apps is disabled in M+Rootless mode
- Added capability to detect permission dialogs and hide overlay in M+Rootless mode
2016.02.08 - v3.49 BETA
- Should work again on MIPS
- 4.4 support dropped, now 5.0+
- Fix FC on SuperSU prompt
- Completely new CF.lumen driver code
- Improved driver switching
- (C) 2016
2015.10.28 - v3.16
- Detect Enforcing SELinux without supolicy availability and warn user
2015.10.27 - v3.15
- Fixed a case of the new root driver not being injected (and thus nothing happening)
2015.10.26 - v3.11 BETA - RELEASE NOTES
- Fixed freezing issue
- Fixed Note5 (and others?) support
2015.10.19 - v3.10 BETA - RELEASE NOTES
- New root driver method
- Adjusted slider layouts
- Dropped MIPS support
2015.02.24 - v3.00 - RELEASE NOTES
- (C) 2015
- Added KCAL driver (see XDA thread for details)
- Added Rootless driver (see XDA thread for details)
- Added freeload option
- Backuptool script updated (requires un-/reinstall of driver to become active)
2014.12.22 - v2.75
- Change notification flags
- Fix driver detection issue which could lead to bootloops on devices with symlinked busybox
- Work-around one case of bootloops, detect that case, and warn about it
2014.12.02 - v2.74
- Fix remote control issue
2014.11.19 - v2.72
- Fix issue with in-app billing
2014.11.14 - v2.71
- Hide notification from (secure) lockscreens on L
- Check free space before installing driver
2014.11.06 - v2.70
- Tasker integration (Pro only)
2014.11.05 - v2.66 - RELEASE NOTES
- Android 5.0 fixes
- 64-bit fixes
- Performance improvement
2014.10.22 - 2.61
- Fix UI bug where settings wouldn't open sometimes
2014.10.22 - 2.60 - RELEASE NOTES
- Fixed a name issue with the recovery installer
- Automatically restart service when app is updated
- Expanded theme options, including material (basic)
- SELinux policy patches for LPX13D
- Experimental support for arm64, x86-64, mips64
2014.07.02 - 2.51
- Fix: ignore light sensor triggered sleep if forced awake during sleep hours
2014.07.01 - 2.50
- Installer fixes for latest AOSP
- Installer fixes for Android "L" Preview
- Added wake button to notification during sleep mode, which goes to sundown mode and is the default tap response - in contrast to disable, which disables all filters and is the default tap response while not sleeping
- Fixed issue where starting CF.lumen would not start the driver/service when not using Pro, and nothing would happen regarding screen colors, no matter which buttons you push
2014.04.16 - 2.40 - RELEASE NOTES
- Added brightness control to filters (actionbar option)
- Added option to wake from sleep mode when an alarm goes off
- Added option to install via custom recovery
- Added backuptool support (survive custom ROM nightlies) - un/re-install driver to activate if coming from an older version
- Fixed setting sleep filter to disabled using day filter at night instead of sundown filter
- Fixed filters occasionally sticking while modifying settings
2014.04.14 - 2.25 - RELEASE NOTES
- Various UI tweaks
- Added gradual filter fading, configurable for sunrise, sunset, sleep and sensor events
- Added notification icon options (keep notification but hide icon)
- Added light sensor based wake from sleep option
- Added driver update needed notification
- Added option to switch between light, dark, and device themes
- Added quick toggle menu items to main activity
- Improved (Pro) notification behavior - en/disable now default tap option when active
- Fixed kelvin and R/G/B choices not being saved between filter selections
- Fixed "Upgrade to Pro" from notification sometimes not working
- Fixed text wrapping on light calibration dialog
2014.04.11 - 2.15
- Fixed driver installation problem when using Superuser instead of SuperSU
2014.04.11 - 2.10
- Fixed crash on driver (un)install
2014.04.10 - v2.05
- Fixed a number of force closes
2014.04.10 - v2.00
- Initial public release
Is there any practical difference between this and Lux?
Sent from my Nexus 5 using XDA Premium 4 mobile app
rlaw said:
Is there any practical difference between this and Lux?
Sent from my Nexus 5 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
See walkthrough video on YouTube, and you will get the answer.
Sent from my Nexus 4 using Tapatalk
Is it possible that you could add Tasker compatibility? If not, are there public intents available to control cf.lumen through Tasker intents? Thanks for updating this great app.
EDIT: The latest update(s) fixed my problems. Thanks CF! Will buy if I like the app after a few days of use.
BUG:
I would love to include a logcat, but I simply don't have the time today or tomorrow. If needed, I'll post one this weekend.
When the app runs for the first time: grant su access, then I see the "please install cf.lumen driver". I click install, device reboots after a few secs, after reboot I wait for some time before opening the app again. When I open it, it asks me the same thing: install the driver. Wasn't the driver installed, or doesn't it detect the driver?
PHONE: Nexus 4, ROM: Paranoid Android 4.2 BETA 4 (that's Android 4.4.2 if you don't know), KERNEL: franco.Kernel #204.
On my first try I had Nexus Display Control (also by Franco) installed. My guess was the apps aren't compatible. After uninstalling both apps, reboot, installed cf.lumen again, install driver, reboot: same problem. So for now no cf.lumen for me. Just eye strain.
I hope this helps you find the bug or incompatibility I have!
4.0+
Excellent, and we need it for Android 4.0+
No love for 4.1 - 4.3 makes me a sad panda
kodirovshchik said:
Excellent, and we need it for Android 4.0+
Click to expand...
Click to collapse
+1. Although I favour the cool-factor and performance of custom ROMs, it's always nice to be able to get a similar experience on stock ROM (which is ICS for me), considering that there are no stable custom ROMs on my device at the moment. I'm actually in the midst of custom ROM development for my device, though I work on CM10.2. (There are others who work on KitKat). It would be much appreciated if the @Chainfire could add support for lower Android versions.
rlaw said:
Is there any practical difference between this and Lux?
Click to expand...
Click to collapse
Seems to me (haven't actually tried), Lux (like several other solutions) uses an overlay for things like colortemperature and nightmode, which usually gives a lot worse image quality.
It's auto-brightness features on the other hand should work fine, and is something not really available from CF.lumen. Maybe one day one app will also be able to control the other.
jackattack said:
Is it possible that you could add Tasker compatibility? If not, are there public intents available to control cf.lumen through Tasker intents? Thanks for updating this great app.
Click to expand...
Click to collapse
This is not available right now, but I've added it to my to-do list.
erikieperikie said:
BUG:
I would love to include a logcat, but I simply don't have the time today or tomorrow. If needed, I'll post one this weekend.
When the app runs for the first time: grant su access, then I see the "please install cf.lumen driver". I click install, device reboots after a few secs, after reboot I wait for some time before opening the app again. When I open it, it asks me the same thing: install the driver. Wasn't the driver installed, or doesn't it detect the driver?
PHONE: Nexus 4, ROM: Paranoid Android 4.2 BETA 4 (that's Android 4.4.2 if you don't know), KERNEL: franco.Kernel #204.
On my first try I had Nexus Display Control (also by Franco) installed. My guess was the apps aren't compatible. After uninstalling both apps, reboot, installed cf.lumen again, install driver, reboot: same problem. So for now no cf.lumen for me. Just eye strain.
I hope this helps you find the bug or incompatibility I have!
Click to expand...
Click to collapse
A logcat will not help for this (its not a crash) - we'll need to investigate some other way. Can you confirm /system/lib/libcflumen.so is present?
SirBindy said:
No love for 4.1 - 4.3 makes me a sad panda
Click to expand...
Click to collapse
Codename13 said:
+1. Although I favour the cool-factor and performance of custom ROMs, it's always nice to be able to get a similar experience on stock ROM (which is ICS for me), considering that there are no stable custom ROMs on my device at the moment. I'm actually in the midst of custom ROM development for my device, though I work on CM10.2. (There are others who work on KitKat). It would be much appreciated if the @Chainfire could add support for lower Android versions.
Click to expand...
Click to collapse
If I could easily do this, I would, but I can't, so I won't.
Chainfire said:
A logcat will not help for this (its not a crash) - we'll need to investigate some other way. Can you confirm /system/lib/libcflumen.so is present?
Click to expand...
Click to collapse
Same issue here on N4 running CM11 M5 4.4.2. I do not have the system/lib/libcflumen.so file. I tried pressing install and reboot a couple of times to no avail.
Edit: just got an update from the play store. Ironically this update that says it fixes force closes now causes the app to force close when pressing ok to install the driver. Using ART by the way.
It does not seem to work at all in Cm11. It crashed once but even when it does not it don't change anything. It does flicker a small black square though.
The app crashes when I tap okay for the driver installation. I am using a Nexus 4 on 4.4.2 SlimKat build 3 with Matr1x 13.5 kernel and ART. I've added a Logcat for you, not sure if I did it right, let me know if it doesn't contain all the information you need. I think ART might be breaking it.
Max Dark level - 100
Min Bright level - 250
Could you change Min Bright level to 101? Its logical, and I really need it on my nexus 7 2013.
Or, even better, could you make dynamic Max Dark/Min Bright level?
Max Dark - ( N ),
Min Bright - ( N + 1 )
I also get fc after driver install on cm11 with my vs980. No work:/
Sent from my LG-VS980 using Tapatalk
I stand by XXCoder and tacosdelicioso on the CM11 issue. App crashes when asking for reboot, soon after permissions are given. I am running ART, FYI.
Enviado de meu XT925 usando Tapatalk
Dante897 said:
The app crashes when I tap okay for the driver installation. I am using a Nexus 4 on 4.4.2 SlimKat build 3 with Matr1x 13.5 kernel and ART. I've added a Logcat for you, not sure if I did it right, let me know if it doesn't contain all the information you need. I think ART might be breaking it.
Click to expand...
Click to collapse
Happens the same to me. Using latest temasek v64, devil's kernel and dalvik.
FCs on me as soon as I press OK to restart to install the driver. Happens every single time. Restarted manually and opeed it up again and same thing

[APP][v1.2.0.0][4.0+]Event Logger - 2014.11.08

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Easily keep track of what your phone is doing.
Event Logger will keep track of the following events:
☑ WiFi Enabled/Disabled
☑ WiFi Connected/Disconnected
☑ Bluetooth Enabled/Disabled
☑ GPS Enabled/Disabled
☑ Power Connected/Disconnected
☑ Orientation Changed
☑ Locale Changed
☑ Screen On/Off
☑ Screen Unlocked
☑ SMS Received
☑ App Started
☑ Call Events(Incoming/Outgoing)
☑ Headphones Plugged/Unplugged
☑ Media Scanner Started/Stopped
☑ Phone Booted
☑ Phone Shutting Down/Restarting
☑ User Changed Time/Date/Timezone
☑ Airplane Mode On/Off
☑ Battery Level Ok/Low
☑ Wallpaper Changed
☑ Volume Changed
Events that works only with xposed framework:
☑ Media Play/Pause
Events to be added in future releases:
☐ HDMI Plugged/Unplugged
☐ NFC On/Off
☐ Service Started/Stopped
☐ Mobile Network On/Off
☐ SD Card Removed/Inserted/Mounted/Unmounted
Suggestions are welcome, but please be realistic
TODO:
☐ You tell me
Bugs:
☐ Sometimes events are added to the list without them actually happening(Headphone plugged, volume level changed, orientation changed)
☐ List sometimes doesn't scroll to bottom when app is started
☐ When app is killed by the system due to low memory (on android 4.4) it doesn't get restarted - only happens on 4.4+
PERMISSIONS:
• ACCESS_WIFI_STATE - to determine if wifi is on/off
• ACCESS_NETWORK_STATE - determine connectivity change (connected/disconnected)
• BLUETOOTH - determine bluetooth state (on/off)
• BLUETOOTH_ADMIN - determine bluetooth state (on/off)
• RECEIVE_SMS - intercept incoming sms(only phone number is stored)
• READ_PHONE_STATE - detect incoming calls
• PROCESS_OUTGOING_CALLS - detect outgoing calls
• INTERNET - used for ads and sending crash reports
• RECEIVE_BOOT_COMPLETED - detect that phone has booted up
• ACCESS_FINE_LOCATION - detect GPS state (on/off)
• GET_TASKS - get running applications on a device
• RESTART_EVENT_SERVICE - internal permission, used to restart service when killed by sistem
http://play.google.com/store/apps/details?id=rs.pedjaapps.eventlogger
Changelog
Code:
[SIZE="4"]Version 1.1.0.1[/SIZE]
☑ Option to clear all logs
☑ You can now see how much space app is using
[SIZE="4"]Version 1.1.0[/SIZE]
☑ Option to display full time for events
☑ Widget
☑ Option to Limit number of events displayed on Main Screen
☑ Logging for package Added/Removed/Replaced/Restarted
☑ App is now showing actual app icon for app related events
[SIZE="4"]Version 1.0.5[/SIZE]
☑ Fixed Export
[SIZE="4"]Version 1.0.4[/SIZE]
☑ Option to export database as CSV
☑ Option to share exported CSV
☑ Fixed crash with filter
[SIZE="4"]Version 1.0.3[/SIZE]
☑ Option to filter events
☑ Option to remove ads
[SIZE="4"]Version 1.0.2[/SIZE]
☑ Less intrusive ads
[SIZE="4"]Version 1.0.1[/SIZE]
☑ Fixed Media Play/Pause detection
[SIZE="4"]Version 1.0.0[/SIZE]
☑ Initial Release
another one
Very nice every logger app so simple in use. Simply really good work done by developer.
Sent from my GT-I9505 using Tapatalk
Looks nice! Xposed Framework doesn't begin with "e", though. Just saying.
Works good on Xperia E with CyanogenMod 10, 4.1.2.
Is it possible to record and show force closes?
Nice lil program. I'd pay to get rid if the ads.
This is brilliant! Thanks for the app.
1. Is it possible for the logs to show what app accessed the GPS and Network location (not just turn the GPS On and Off from settings)?
2. What app accessed the location through the fused API as opposed to the more inefficient direct access?
3. Let the end-user select what to log instead of everything?
4. What app opened a data connection?
5. More specifically did the app use the data sync adapter?
6. Can you please consider making your app ad a little less intrusive?
Thanks for the app!
What about an option to log failed device/SIM unlocks?
NSDCars5 said:
Looks nice! Xposed Framework doesn't begin with "e", though. Just saying.
Works good on Xperia E with CyanogenMod 10, 4.1.2.
Is it possible to record and show force closes?
Click to expand...
Click to collapse
Thanks for the tip, i know it doesn't start with e, it was a typo
With xposed everything is possible, i will add logging fc's to my todo list.
Yearoftherat said:
Nice lil program. I'd pay to get rid if the ads.
Click to expand...
Click to collapse
My country isn't supported for paid apps on Play Store, but i will make ad-free version just for XDA
makapav said:
This is brilliant! Thanks for the app.
1. Is it possible for the logs to show what app accessed the GPS and Network location (not just turn the GPS On and Off from settings)?
2. What app accessed the location through the fused API as opposed to the more inefficient direct access?
3. Let the end-user select what to log instead of everything?
4. What app opened a data connection?
5. More specifically did the app use the data sync adapter?
6. Can you please consider making your app ad a little less intrusive?
Thanks for the app!
Click to expand...
Click to collapse
1. yes (with xposed)
2. not sure i understand
3. in my todo list, will add it shortly.
4. possible of course(with xposed) but i first have to figure out where is that in android source
5. yes
6. i will make ad-free app for XDA(On Google Play Store ad supported version will remain)
BEBU1 said:
What about an option to log failed device/SIM unlocks?
Click to expand...
Click to collapse
Sure, will add it to my todo list
Please note that what app currently logs is about everything that can be logged without help of xposed framework.
New version published to play store.
Changelog:
Version 1.0.1
☑ Fixed Media Play/Pause detection
I will update op with changelog and attach new version shortly
Is it possible to add an option to save the log to a txt file?
yep, ill add it in one of future releases
This is really great. Good job. And thanks a ton.
My request would be to include an option to log activity's as well.
In the ROM I use, there is a custom shortcut to the Cyanogen mod Profiles that pops up a little window that I can select which profile I want. I have been trying to find a way I can manually trigger this shortcut other ways. So far no luck.
This will be quite useful for lots of stuff though. Again thank you!
Sent from my Nexus 5 using XDA Premium 4 mobile app
Not trying to bust anybodies bubbles, but isn't this the EXACT copy of the Trust Event Logger by @Dark3n? Same UI, same features, same everything! I love this neat little App by @Dark3n - did you just copy and modify his code, @pedja1? Hopefully this isn't the case. But if I'm right with my assumption, how come this well-known App by @Dark3n could be featured again on the XDA-Portal without noticing that it already exists by a different developer, @willverduzco?
SecUpwN said:
Not trying to bust anybodies bubbles, but isn't this the EXACT copy of the Trust Event Logger by @Dark3n? Same UI, same features, same everything! I love this neat little App by @Dark3n - did you just copy and modify his code, @pedja1? Hopefully this isn't the case. But if I'm right with my assumption, how come this well-known App by @Dark3n could be featured again on the XDA-Portal without noticing that it already exists by a different developer, @willverduzco?
Click to expand...
Click to collapse
You are right, UI does look like @Dark3n's app, and that's because while i was making my app i looked at how he did it cause i like how he designed his app.
But i certainly didn't decompile his app and did a copy/paste.
As for the "EXACT copy", you are very wrong. If you compare feature list of both apps you will see that my app supports a lot more events that Trust.
So to answer you question:
SecUpwN said:
did you just copy and modify his code
Click to expand...
Click to collapse
No i did not just copy and modify his code
and:
SecUpwN said:
But if I'm right with my assumption
Click to expand...
Click to collapse
You are wrong
@Dark3n and @willverduzco
Feel free to contact me and i will share my source so that you can see that there is not a single peace of code/ui that i copied
Cheers
@"Everybody else"
App has been featured on XDA Portal
Is there anyway you could add a lock option? Like only being able to see the logs after you put a password, otherwise you can't access but it keeps logging?
Phoenix232 said:
Is there anyway you could add a lock option? Like only being able to see the logs after you put a password, otherwise you can't access but it keeps logging?
Click to expand...
Click to collapse
You can accomplish that with another app. If you use Avast, for example, it has an app locking feature that doesn't interfere with app functionality. There are also dedicated apps for locking.
Though, a native locking feature would be pretty cool.
Phoenix232 said:
Is there anyway you could add a lock option? Like only being able to see the logs after you put a password, otherwise you can't access but it keeps logging?
Click to expand...
Click to collapse
Excelent idea, I'll add it to my todo list, thanks
Thanks for being vigilant @SecUpwN , but he did not copy any code from me.
( @willverduzco i checked)
@pedja1 you were maybe a bit uncreative copying the design so closely, but thats all, one could take it as a compliment .
On a side note:
pedja1 said:
Bugs:
☐ When app is killed by the system due to low memory (on android 4.4) it doesn't get restarted - only happens on 4.4+
Click to expand...
Click to collapse
Might not be a low memory issue but related to the "recent-tasks-swipe".
See http://stackoverflow.com/questions/...recent-tasks-permanently-kills-application-wi
Good luck with your app.
Dark3n said:
Thanks for being vigilant @SecUpwN , but he did not copy any code from me.
( @willverduzco i checked)
@pedja1 you were maybe a bit uncreative copying the design so closely, but thats all, one could take it as a compliment .
On a side note:
Might not be a low memory issue but related to the "recent-tasks-swipe".
See http://stackoverflow.com/questions/...recent-tasks-permanently-kills-application-wi
Good luck with your app.
Click to expand...
Click to collapse
Thanks for clarifying this.
Sorry for copying design so closely, but i really had no inspiration, and Trust looks really cool
btw. i really like SD Main, best cleaning tool for android. My sincere recomendation to everyone.
About "recent-tasks-swipe" thing.
Yes you are right about that, but Service also doesn't get restarted on 4.4, even if i start it with START_STICKY
Spam Ads Galore!
Constantly pops up spam ads. Irritating as hell. I understand ad-supported apps and use them, but this was just ridiculous. Could barely close the app they were popping up so often. Uninstalled.

[APP][4.0.3+] Aauuto - Awesome and ultra useful tool for device automation ;)

Do you want to automate your Android device? But all the tools you tried are complex, confusing or simply do not work reliable ....
Do you want to save some battery via device automation? But having a background service for event catching running all the time does not make sense for you ....
THEN you should definitively try Aauuto! :good:
Aauuto is the Awesome and ultra useful tool for event based device automation.
The combination of activities, trigger events, event conditions, parameters and variables, allows you to create thousands of different automation schemes with just a few simple clicks. You don´t have to be a developer to create powerful automation schemes with Aaauuto.
Aauuto is optimized for performance and efficiency and does a lot of things completely different than other automation tools. Aauuto does not use any background service (no background battery drain!) to catch the events, is very easy to use, powerful and feature loaded. An additional and Aauuto Expert Plugin is available for Root activities and activities which need extensive permissions.
Available Events:
- Time
- WiFi
- Bluetooth
- NFC
- Power
- Battery
- Boot
- DockMode
Available Activities (Extract, some need ROOT and/ or our free Expert Plugin):
* Wireless/ Network/ GPS
- WiFi (ON/OFF/TOGGLE)
- Connect WiFi
- Add WiFi SSID
- WiFi Hotspot
- Bluetooth (ON/OFF/TOGGLE)
- BT Discover
- Mobile Data
- Airlplane Mode
- Location (GPS)
- NFC (ON/OFF/TOGGLE)
*Device Settings
- Ringer Mode
- Brightness (value, auto, adaptive)
- Display Timeout
- Auto Sync
- Auto Rotate
- Ringer/ Music/ Alarm Volume and Tone
- Stay awake
*Start/ Launch
- Music Player
- Navigation
- Start App and App Activity
- Close App
- Website/ Uri
- Car Mode
*Text-to-Speech
- Speak Text
- Speak Time/ Date
*Phone
- Dial and Call
*Calendar/ Alarm
- Set Alarm/ Alarm in minutes
- Calendar entry
- Timestamp
- Timer
... and many more native activities + possibility to use standard automation plugins!
Available Conditions for Events:
- Weekday
- Battery
- WiFi
- Bluetooth
- Charging
- Dock
- Time
- Variable
Aauuto has also support for Widgets and Shortcuts and a lot of additional features.
Check it out!
Google Play public beta:
https://play.google.com/store/apps/details?id=com.widgapp.aauuto
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Changelog:
Update 1.1.6: (1.1.6.x fixes)
- Android 6 Marshmallow adaptations
- Improvements and bug fixes
Update 1.1.1 (1.1.x Bug fixes):
- New Battery Saver toggle (stock Lollipop!)
Update 1.0.1 (1.0.x Bug fixes): Out of BETA!
- New Reboot activity
- New Aauuto Broadcast activity
Update 0.9.1 (0.9.1.x Bug fixes):
-Support for 2G/3G/LTE toggle
-Experimental support for external setting/activity plugins (Locale/Tasker compatible)
Update: 0.8.6 :
- Support for Mobile Data toggle on Android 5.+ Lollipop (latest Super SU required!)
- Aauuto shortcuts
Version 0.8.5 : Portrait mode and some bugfixes
Version 0.8: Initial Release * BETA *
placeholer
Hmm, what´s up XDA ?
A brand-new app and no feedback ? ......Issues? ....afraid of Beta ?.... or afraid the colors? ... or just the weekend ?
ascsa said:
feedback ? ......Issues?
Click to expand...
Click to collapse
Thanks for this app. As I have been using NFC Retag it takes some time to work out what to do using Aauuto.
1) First impression was why only landscape mode? I appreciate it is necessary to have landscape but there are cases with a long list when portrait should be an option. I prefer to be able to use both.
2) Major frustration is that widget cannot be put into a folder.
3) Not sure why there are two threads? This and http://forum.xda-developers.com/google-nexus-5/themes-apps/app-aauuto-automation-app-t2994977
I am using Note 4 SM-910F.
Keep up the good work. I guess we are all getting back into things after the break.
Cheers
Tom
Szczepanik said:
Thanks for this app. As I have been using NFC Retag it takes some time to work out what to do using Aauuto.
1) First impression was why only landscape mode? I appreciate it is necessary to have landscape but there are cases with a long list when portrait should be an option. I prefer to be able to use both.
2) Major frustration is that widget cannot be put into a folder.
3) Not sure why there are two threads? This and http://forum.xda-developers.com/google-nexus-5/themes-apps/app-aauuto-automation-app-t2994977
I am using Note 4 SM-910F.
Keep up the good work. I guess we are all getting back into things after the break.
Cheers
Tom
Click to expand...
Click to collapse
Hi Tom,
many thanks for the feedback !
Yep, Aauuto has a completely different UI concept than ReTag .... as longterm ReTag user, this could take some time ... but compared to other automation apps this should be very easy to handle
1) Hmmm, nobody seems to like the landscape mode except me ....yes, in portrait mode you will have some additional screen space for the activity list etc. but for the main UI you will get less screen space for events and activities (unless I implement some nested scrolling views (-> usually a horrible UI from my point of view )) .... However, Aauuto is in Beta, because I want to try things out and incorporate user feedback, so I will probably incorporate portrait within the next update ... then we can all have a look and decide if it makes sense or not
2) Arrgh , I´m doing Android development for years and using it even longer, but I wasn´t aware that you can put widgets into folders .... ....I like the resizeable widgets, but obviously you can´t put them into folders ... so I think I have to provide an additional non-resizeable widget ....
3) I want as much feedback as possible and this "Apps and Games" forum seems much to overcrowded for that ....
Promising app, I just hated the obligatory landscape mode, is awkward.
For portrait mode just use the exposed "app settings" module... And now you have portrait view.
Update: Portrait mode doesn't work well ...lol
How about adding time and GPS events! ie ... Phone to silent at certain locations. Or dim screen brightness at 9pm etc
rodaven said:
Promising app, I just hated the obligatory landscape mode, is awkward.
Click to expand...
Click to collapse
justjayhere said:
For portrait mode just use the exposed "app settings" module... And now you have portrait view.
Update: Portrait mode doesn't work well ...lol
How about adding time and GPS events! ie ... Phone to silent at certain locations. Or dim screen brightness at 9pm etc
Click to expand...
Click to collapse
Okay I got it , portrait will be available in the next update ....I just have to re-enable it and do some minor tweaking .... prototype screenshot below ...
Time event is already available ... it´s called Time and it´s the first event ... GPS Geofence is on my todo list, but it depends on Google Services and the Google part wasn´t reliable in the past .... i want to have everything else stable before struggling with the Google servers ...
Thx for the feedback!
Okay... Portrait layout is much better.
I would make the Scheme On/Off button more apparent.. I finally figured it out but easy to miss at first.
Also... I would prefer the Schemes Overview to be its own screen (not a pop-up).. that should be the screen it starts in as well.
One more request.. make long pressing Scheme name "edit" possible (I know you can edit from Scheme Overview pop-up.. but most will try to long press to edit).
Might help to have one basic Scheme built to help folks figure out the basic layout (like a low battery scheme).
Thanks in advance.
justjayhere said:
Okay... Portrait layout is much better.
I would make the Scheme On/Off button more apparent.. I finally figured it out but easy to miss at first.
Click to expand...
Click to collapse
I disabled the ON /OFF label because it looked weird ... but yes, I should mention it somewhere ...a help function or a walk through or something like that ...
Also... I would prefer the Schemes Overview to be its own screen (not a pop-up).. that should be the screen it starts in as well.
Click to expand...
Click to collapse
Probably no, mainly due to two reasons:
- The Overview is a quick way to switch schemes or to change some scheme settings like name or order .... I think it doesn´t contain enough content for an extra screen
- beside that the scheme screen do some heavy background loading (schemes, events, conditions, activities ) from the internal database... having an extra screen will start this loading again, so a pop up makes much more sense from a performance point of view
One more request.. make long pressing Scheme name "edit" possible (I know you can edit from Scheme Overview pop-up.. but most will try to long press to edit).
Click to expand...
Click to collapse
Already implemented that with an earlier prototype ....in fact, I had the same context menu enabled as in the Overview ... didn´t like it ... I think it´s much more convenient within the Overview, and beside that how often do users change a scheme name ...but it´s up to the users, if a majority wants this, I can re-enable it ....
Might help to have one basic Scheme built to help folks figure out the basic layout (like a low battery scheme).
Click to expand...
Click to collapse
Good idea!
Aauuto
1 Thanks for portrait mode.
2 Looking forward to widget that I can add to a folder.
3 I like the ability to move items up and down but it is tedious for more than a few positions. Can you implement a way to move to a particular position or drag & drop?
4 Note that my "event" is blank as my "activity" is triggered by click of widget.
5 Can you allow resizing of Event / Activity windows so I can see more Activity and minimize Event?
6 My Activity is a list of Start App - all related to News e.g. News Digest, News Republic etc. The idea is, I click on widget, then each app is launched and, after a few seconds I can read each News app, pressing back key to close and automatically display next one in my list until I know I have checked all my news sources.
7 Bug is that the Apps do not all launch or do not display in same order as I listed in your app.
Can this be fixed?
Cheers
Tom
Szczepanik said:
1 Thanks for portrait mode.
2 Looking forward to widget that I can add to a folder.
3 I like the ability to move items up and down but it is tedious for more than a few positions. Can you implement a way to move to a particular position or drag & drop?
Click to expand...
Click to collapse
Thanks to android, this is a lot of effort for such a simple task ... it´s on my todo list, but in a low position ..
.
4 Note that my "event" is blank as my "activity" is triggered by click of widget.
5 Can you allow resizing of Event / Activity windows so I can see more Activity and minimize Event?
Click to expand...
Click to collapse
I think i have to keep space for at least one event ....you would gain additional space for one more activity in portrait than in landscape on a nexus 5 (note 4 maybe 2) ... so one more activity for a niche use case vs. a fidgety UI and addititonal permanent size calculations within the UI .... I don´t think that makes sense
6 My Activity is a list of Start App - all related to News e.g. News Digest, News Republic etc. The idea is, I click on widget, then each app is launched and, after a few seconds I can read each News app, pressing back key to close and automatically display next one in my list until I know I have checked all my news sources.
7 Bug is that the Apps do not all launch or do not display in same order as I listed in your app.
Can this be fixed?
Click to expand...
Click to collapse
Nothing to fix ... Aauuto fires the activities always in the correct order ... then the android multitasking kicks in......Aauuto is really fast, so it fires the activities within a couple of milliseconds ....one of your news apps may need a little bit more time to launch than other apps (or maybe is already in cache), so for Android the order could be a little bit different ....However, if you slow down the activities a bit by adding a "WAIT" Activity (--> Misc, 1 second should be enough) between the "Start App" activities, Android should have the same order cached :good:
wait Activity
ascsa said:
adding a "WAIT" Activity (--> Misc, 1 second should be enough) between the "Start App" activities, Android should have the same order cached :good:
Click to expand...
Click to collapse
Thanks that seems to make it work better although I think some apps may need 2 seconds. Can I suggest you set the default wait to be 1 sec? I doubt anyone would actually want to wait "0" sec ...
Cheers
Tom
ascsa said:
Hmm, what´s up XDA ?
A brand-new app and no feedback ? ......Issues? ....afraid of Beta ?.... or afraid the colors? ... or just the weekend ?
Click to expand...
Click to collapse
Comments reserved. Looking forward for such an app.
Sent from my XT1033 using XDA Free mobile app
Update 0.8.6
update 0.8.6 just uploaded to Google Play ... could take some time until it´s available
What´s new:
- MOBILE DATA toggle for Android 5.+ Lollipop --> that was a b**'*h !!! --> latest Expert Plugin + latest SuperSu required!
- Aauuto shortcuts --> you can put several shortcuts within a folder on your homescreen
ascsa said:
update 0.8.6 just uploaded to Google Play ... - Aauuto shortcuts --> you can put several shortcuts within a folder on your homescreen
Click to expand...
Click to collapse
Shortcuts work well in folder thanks. May need wider choice of icon (darker and colored) or ability to import / or use own icon in future.
Thanks
Cheers
Tom
My Note 4 note for you.
Szczepanik said:
Shortcuts work well in folder thanks. May need wider choice of icon (darker and colored) or ability to import / or use own icon in future.
Thanks
Cheers
Tom
My Note 4 note for you.
Click to expand...
Click to collapse
yep, the icon set isn´t final yet .....
Hmm ,
not much feedback so far, everything seems stable ... a few small issues and only 2 error reports ... I think, I could release the 1.0 version end of January .... so, please report your issues and feature requests till the end of next week and I could probably implement/ solve them for the official (non-beta) 1.0 release ....
btw. nobody so far mentioned the colors .... I like them, but I expected some uproar ....so, last chance before 1.0 ;-P
ascsa said:
feature requests
Click to expand...
Click to collapse
Colours are fine.Need more volume controls. Has Alarm, Music & Ringer Volume. Missing Notifications, System and Bluetooth.
When I change a setting (e.g. delay) it should show what I had set - currently deletes and creates new.
Volume should show numbers on the sliding scale please.
It is a competitive market against Tasker, Macrodroid and your own NFC Retag. Good luck.
Thanks
Cheers
Tom
My Note 4 note for you.
Szczepanik said:
Colours are fine.Need more volume controls. Has Alarm, Music & Ringer Volume. Missing Notifications, System and Bluetooth.
Click to expand...
Click to collapse
Yep, standard android has Alarm, Music and Ringer volume. The other volumes were skipped in Android 4.0 ICS, if I remember it right ....A lot of manufacturers re-enable these volumes ... so it´s basically a manufacturer/ rom specific feature ... easy to implement, but works only on some devices .... However, I think I will implement some device/ manufacturer specific features eventually... not all devices and not all manufacturers, but the most popular ones and this volume settings thing surely will be one of the first device specific features.
When I change a setting (e.g. delay) it should show what I had set - currently deletes and creates new.
Click to expand...
Click to collapse
I do it like your proposal in ReTag ....it´s easier, if you only change a parameter, but feels a little bit awkward to change an activity .... so, I tried something new for Aauuto ... to be honest, currently I don´t know what I like better ....I will think about it ... additional feedback welcome
Volume should show numbers on the sliding scale please.
Click to expand...
Click to collapse
Hmm, android volume settings doesn´t show numbers, too .... so I don´t know what you want with these numbers ....but sure, I can have a look at it ....
It is a competitive market against Tasker, Macrodroid and your own NFC Retag. Good luck.
Click to expand...
Click to collapse
Thanks!
Yep, it´s a competitive market, but NFC ReTag is more focused on non-writeable NFC tags and other NFC stuff and was never designed as a full-blown automation app ... so I started again from scratch ... I could have renamed ReTag and updated it with a completely new app/code/database etc. to keep the downloads and users, but I would have had to skip a lot of features because of a different focus ... so I will keep NFC ReTag focused on NFC stuff and Aauuto for a more general automation approach (with additional triggers, events etc. --> although the NFC event in Aauuto should be even easier to handle with writeable tags than in ReTag )
Sure, Tasker is the benchmark. in functionality and complexity ...... I like Tasker, but I discussed it a lot with users and a lot of them (even some tech-savvy users) could not handle Tasker .....
And yes, a bunch of other automation apps are also available ... The main difference is the no background service restriction in Aauuto .... let me explain it on a popular example:
A lot of users want some battery saver feature like "when battery is < 20% disable XYZ" ... you can do this with a lot of apps (and it´s easy to implement), but from my point of view it doesn´t make sense at all .... Android doesn´t provides a standard battery level broadcast (except Battery LOW and OK ...and it´s by intention). So any app which wants to provide such a feature has to start a background service and constantly waking up (every couple of seconds , once a minute, whatever) your device and check the battery stats ...this cause a lot of additional battery drain, wake locks and so on and at the end of the day, this checking could drain a lot more battery than you can save via "disable XYZ" ... so it´s senseless .... but users want it and they usually get it ... [another popular example for this user/android problem are the countless RAM cleaner apps out there ....on current Android versions, it doesn´t make sense to clean your RAM at all , because Android does a perfect job with that (only a full RAM is a good RAM ) and these cleaners usually do more harm than good ..... but users want it and they usually get it ...]
OK, back to the point: Aauuto will only implement rock-stable activities and bulletproof events and conditions ....so when you use Aauuto, you can be sure it works without issues and without hidden drawbacks. Maybe I will not implement a popular feature, due to some hidden drawback, but for me it´s more important to develop a good app and therefore have a few less downloads than implementing popular but problematic features ....Afaik you can´t be sure of that with other automation apps.

[APP][5.0+] Custom Quick Settings - Add quick settings on STOCK

Default quick settings not enough for you? Add app links, web links and custom toggles to your quick settings without root (on Android 6.0+, root or ADB permission grant is required on Android 5.0/5.1) using Custom Quick Settings
Please note that some OEMs, such as Samsung, LG and HTC, may disable the use of this app on their firmware. You will need a custom ROM that is based on AOSP (including CyanogenMod) to use this app if that is the case with your device
Features
- Over 40 custom toggles, including screen timeout, adaptive brightness and NFC (NFC requires root or secure setting access)
- Launch apps, shortcuts*, app shortcuts, websites, show app widgets*, automatically click on widgets*, run commands* and launch activities* on click (* requires pro)
- Fully customise tiles with icons, titles, and multiple states, which can be switched between automatically by changes
- (Android 7.0+, secure/root required): Customise your quick settings panel by hiding the brightness slider, changing the tile count (when collapsed) and disabling animations
- (Android 5.0 only, root/secure required): Rearrange and delete stock tiles, take full control of your quick settings
Xposed/CM support
Opens tile detail with weather, battery information and a calculator (Xposed only)
Actions include:
- Launch apps
- Launch shortcuts, including tasker tasks (Pro version only)
- Launch app shortcuts, static and dynamic (dynamic requires Android 7.1+ and root)
- Click widget (for toggle/action widgets such as Twilight) [Pro]
- Show widget (shows widget in a dialog) [Pro]
- Launch URL
- Custom settings toggle (WiFi, Screen timeout, Bluetooth, WiFi Hotspot, Sync, Adaptive Brightness, Sound, Music Controls)
- Custom root/secure settings toggle (Invert Colours, Location, ADB, Immersive Mode, Ambient Display)
- Custom root toggle (Airplane Mode, Celullar Data, Screenshot, Shutdown, Reboot, Reboot Recovery, Quick Reboot, Restart SystemUI, Network Mode [2G, 3G, LTE])
- Live toggles (Displays data in title & icon): CPU speed, Free RAM, Internal Storage Space, Battery, Data Usage, Next Alarm, # of calendar events today, Calendar next event*, calculator*, BBC weather*, Yahoo! weather*)
- Advanced options: Launch activity (with extras, can launch any activity with root), run command, run root command (all pro)
- Advanced click options: Change System, Secure or Global setting value (requires secure/root for secure & global, as well as pro) - Allows you to change any setting in the system, therefore creating tiles for any system setting
Screenshots
Download from Google Play Store
Download from APKMirror
XDA Labs download is being updated when the dashboard plays ball
Really a great app, but somehow many icons have quirks. Many round parts have flat parts. E.g. the heads of no. 3 and 4 are not really round.
Or is that intention?
And a search or filter function for the icons would really be nice. It's not so nice to scroll through so much icons, especially without a scroll bar. You never know where you are.
peterbonge said:
Really a great app, but somehow many icons have quirks. Many round parts have flat parts. E.g. the heads of no. 3 and 4 are not really round.
Or is that intention?
And a search or filter function for the icons would really be nice. It's not so nice to scroll through so much icons, especially without a scroll bar. You never know where you are.
Click to expand...
Click to collapse
Icons are fixed in the update, I also added sticky headers so you know where you are
Awesome app, thank you! Can't wait for custom shortcuts!!!
Sent using XDA One
Hi there. I just read about your app on Android Police. It sounded great so I downloaded the free version to try it out. I'm sure I will get the paid version also. I'm going to mess around and make a few tiles. I'll return to give you my thoughts. Not that my opinion makes any difference. Lol. Thanks
Tasker Intent Guide
Here's how you use Tasker's intent action to change a tile's state:
Add an Intent action and enter the following in the correct inputs:
Action:
com.quinny898.app.customquicksettings.CHANGE_TILE_STATE
Cat:
None
Extras:
tile:<Name or number of tile>, eg tile:Hangouts or tile:0
active:true/false, eg active:true (true = tile is white, false = tile is greyed out)
Package:
com.quinny898.app.customquicksettings
Class:
com.quinny898.app.customquicksettings.receivers.Tasker
Target:
Broadcast Receiver
Leave the rest of the options as their defaults (empty)
Screenshots of example:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
First: Amazing work!
Second: Icon not appears on quicksetings in latest version.
Excellent Remarkable work done
Awesome app, thank you! Can't wait for further versions to unhide soon. Looking forward for playing games soon on these custom stock os.
Some issues:
1. Changing the color of "Adaptive Brightness" toggle icon doesn't work.
2. Same with the "Flashlight" toggle. And the first time I've tested the "Flashlight" toggle I wasn't able to switch off the flashlight. It went off only after opening the app.
3. The icon search feature isn't very useful. It shows only max. 5 results and it always starts at the beginning of the name. So you can't enter "auto" to find "brightness auto". Even with "brightness" you don't find it. You have to enter at least "brightness a" to find it.
Maybe a filter function would be better. And it should look in the whole name.
4. There are still some broken icons: Cancel, Headphone Dots, No, Question Mark Circle
Some requests (seen in another app):
5. Support for app icons would really be great.
6. It would surely be very handy if selecting an action would also set the corresponding icon.
peterbonge said:
Some issues:
1. Changing the color of "Adaptive Brightness" toggle icon doesn't work.
2. Same with the "Flashlight" toggle. And the first time I've tested the "Flashlight" toggle I wasn't able to switch off the flashlight. It went off only after opening the app.
3. The icon search feature isn't very useful. It shows only max. 5 results and it always starts at the beginning of the name. So you can't enter "auto" to find "brightness auto". Even with "brightness" you don't find it. You have to enter at least "brightness a" to find it.
Maybe a filter function would be better. And it should look in the whole name.
4. There are still some broken icons: Cancel, Headphone Dots, No, Question Mark Circle
Some requests (seen in another app):
5. Support for app icons would really be great.
6. It would surely be very handy if selecting an action would also set the corresponding icon.
Click to expand...
Click to collapse
1. Is in the process of being fixed
2. is intentional, it's not supported right now
3. The library that does the sections doesn't support filtering (it's a bug in it right now) so maybe later
4. Working on it
5. Maybe soon
6. Same as 5
Quinny899 said:
Here's how you use Tasker's intent action to change a tile's state:
Add an Intent action and enter the following in the correct inputs:
Action:
com.quinny898.app.customquicksettings.CHANGE_TILE_STATE
Cat:
None
Extras:
tile:<Name or number of tile>, eg tile:Hangouts or tile:0
active:true/false, eg active:true (true = tile is white, false = tile is greyed out)
Package:
com.quinny898.app.customquicksettings
Class:
com.quinny898.app.customquicksettings.receivers.Tasker
Target:
Broadcast Receiver
Leave the rest of the options as their defaults (empty)
Screenshots of example:
Click to expand...
Click to collapse
I'm assuming there's no way for this to work for the built in toggles or root toggles? I would have to create my own Tasker task and include this intent?
Also, the adaptive brightness toggle doesn't seem to work.
swallowingled said:
I'm assuming there's no way for this to work for the built in toggles or root toggles? I would have to create my own Tasker task and include this intent?
Also, the adaptive brightness toggle doesn't seem to work.
Click to expand...
Click to collapse
It works for any custom tile theoretically. It would look weird if you set a custom icon that was multi colour though.
The tile does work, it just doesn't react, it's a bug.
Quinny899 said:
It works for any custom tile theoretically. It would look weird if you set a custom icon that was multi colour though.
The tile does work, it just doesn't react, it's a bug.
Click to expand...
Click to collapse
I did get the intent working to change the tile color when NFC is toggled.
Yes, your'e right. The adaptive brightness tile works it just doesn't change the toggle in the Android settings, which is fine with me.
Great app, the pro version is definitely worth the price. Thanks!
Great app, thanks! But when I click on the volume tile, it opens the media volume panel instead of the ringer. Don't know if this is a bug but if not, could you please add the option to open ringer panel? Thanks
mda120 said:
Great app, thanks! But when I click on the volume tile, it opens the media volume panel instead of the ringer. Don't know if this is a bug but if not, could you please add the option to open ringer panel? Thanks
Click to expand...
Click to collapse
It should open the panel for the app you're using
Hi, thanks for the app, but I got fc on my xperia z3c with sony concept rom
same here! this app seems very promising, thanks to OP first of all, but also in my z3c I have FC when applying the new tile (I'm on version 1.4 and I am rooted, sony concept rom that should be almost pure aosp).
will a log be helpful for you? if so can I just grab it with syslog app maybe?
TIA!
No idea why, but I can't get the NFC icon to show up at all.
This is supposed to be a root toggle for NFC with the NFC icon.
@Quinny899
I have purchased the pro features of the app but the colour of tiles (nfc, sync, ...etc) doesn't change when change the state of these. Basically, this is something that makes useless the application because the user can not know in what state is the function chosen
Quinny899 said:
It should open the panel for the app you're using
Click to expand...
Click to collapse
In my case it always opens the media panel, it doesn't matter the app.

[MOD][Kernel] K-Lapse : A kernel-level livedisplay module [GPLv2]

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
K-Lapse : A kernel level livedisplay module
​
Intro - What is K-Lapse?
Kernel-based Lapse ("K-Lapse") is a linear RGB scaling module that 'shifts' RGB based on time (of the day/selected by the user), or (since v2.0) brightness. This concept is inspired by LineageOS (formerly known as 'CyanogenMod') ROM's feature "Livedisplay" which also changes the display settings (RGB, hue, temperature, etc) based on time. This is very very similar to f.lux for desktop too.
Why did I decide to make this? (A short story)
I (personally) am a big fan of the Livedisplay feature found on LineageOS. I used it every single day, since Android Lollipop. Starting from Android Nougat, a native night mode solution was added to AOSP and it felt like Livedisplay was still way superior, thanks to its various options (you could say it spoiled me, sure). I also maintained a kernel (Venom kernel) for the device I was using at that time. It was all good until the OEM dropped support for the device at Android M, and XDA being XDA, was already working on N ROMs. The issue was, these ROMs weren't LineageOS or based on it, so Livedisplay was... gone. I decided I'll try to bring that feature to every other ROM. How would I do that? Of course! The kernel! It worked on every single ROM, it was the key! I started to work on it ASAP and here it is, up on GitHub, licensed under GPL (check klapse.c), open to everyone
How does it work?
Think of it like a fancy night mode, but not really. Klapse is dependent on an RGB interface (like Gamma on MTK and KCAL on SD chipsets). In mode 1, it fetches time from the kernel, converts it to local time, and selects and RGB set based on the time. The result is really smooth shifting of RGB over time. Mode 2 uses the current brightness level to scale RGB, with the concept behind it being that lower brightness usually implies a dark environment, so a slight color temperature shift should help with eye strain.
There's also an option for a "brightness factor" that can reduce your brightness down to 80% below the minimum brightness that your phone allows. The catch is, it doesn't actually reduce the brightness, but rather uses a clever trick to fade away the RGB of the screen by the same amount so it "appears" to be lower brightness.
How does it really work (dev)?
Klapse mode 1 (time-based scaling) uses a method void klapse_pulse(unsigned long data) that should ideally be called every minute. This is done using a kernel timer, that is asynchronous so it should be handled with care, which I did. The pulse function fetches the current time and makes calculations based on the current hour and the values of the tunables listed down below.
Klapse mode 2 (brightness-based scaling) uses a method void set_rgb_slider(<type> bl_lvl) where type is the data type of the brightness level used in your kernel source. (OnePlus 6 uses u32 data type for bl_lvl) set_rgb_slider needs to be called/injected inside a function that sets brightness for your device. (OnePlus 6 uses dsi_panel.c for that, check out the diff for that file in op6 branch)
What all stuff can it do?
Emulate night mode with the proper RGB settings
Smoothly scale from one set of RGB to another set of RGB in integral intervals over time.
Reduce perceived brightness using brightness_factor by reducing the amount of color on screen. Allows lower apparent brightness than system permits.
Scale RGB based on brightness of display (low brightness usually implies a dark environment, where yellowness is probably useful).
Automate the perceived brightness independent of whether klapse is enabled, using its own set of start and stop hours.
Theoretically more efficient, faster by residing inside the kernel instead of having to use the HWC HAL like android's night mode. This is unproven and probably has no practical significance.
(On older devices) Reduce stuttering or frame lags caused by native night mode.
An easier solution against overlay-based apps that run as service in userspace/Android and sometimes block apps asking for permissions.
Give you a Livedisplay alternative if it doesn't work in your ROM.
Impress your crush so you can get a date (Hey, don't forget to credit me if it works).
Alright, so this is a replacement for night mode?
NO! Kinda, but no. Lemme explain. One can say this is an alternative for LineageOS' Livedisplay, but inside a kernel. Night mode is a sub-function of both Livedisplay and KLapse. Most comparisons here were made with night mode because that's what an average user uses, and will relate to the most. There is absolutely no reason for your Android kernel to not have KLapse. Go ahead and add it or ask your kernel maintainer to. It's super-easy!
What can it NOT do (yet)?
Calculate scaling to the level of minutes, like "Start from 5:37pm till 7:19am". --TODO
Make coffee for you.
Fly you to the moon.
Get you a monthly subscription of free food, cereal and milk included.
I want more! Tell me what can I customize!
All these following tunables are found in their respective files in /sys/klapse/
Code:
1. enable_klapse : A switch to enable or disable klapse. Values : 0 = off, 1 = on (since v2.0, 2 = brightness-dependent mode)
2. klapse_start_hour : The hour at which klapse should start scaling the RGB values from daytime to target (see next points). Values : 0-23
3. klapse_stop_hour : The hour by which klapse should scale back the RGB values from target to daytime (see next points). Values : 0-23
4. daytime_r,g,b : The RGB set that must be used for all the time outside of start and stop hour range.
5. target_r,g,b : The RGB set that must be scaled towards for all the time inside of start and stop hour range.
6. klapse_scaling_rate : Controls how soon the RGB reaches from daytime to target inside of start and stop hour range. Once target is reached, it remains constant till fadeback_minutes (#13) before stop hour, where target RGB scales back to daytime RGB. (Pre-v4.2 value was a factor, now it is a minute value)
7. brightness_factor : From the name itself, this value has the ability to bend perception and make your display appear as if it is at a lesser brightness level than it actually is at. It works by reducing the RGB values by the same factor. Values : 2-10, (10 means accurate brightness, 5 means 50% of current brightness, you get it)
8. brightness_factor_auto : A switch that allows you to automatically set the brightness factor in a set time range. Value : 0 = off, 1 = on
9. brightness_factor_auto_start_hour : The hour at which brightness_factor should be applied. Works only if #8 is 1. Values : 0-23
10. brightness_factor_auto_stop_hour : The hour at which brightness_factor should be reverted to 10. Works only if #8 is 1. Values : 0-23
11. backlight_range : The brightness range within which klapse should scale from daytime to target_rgb. Works only if #1 is 2. Values : MIN_BRIGHTNESS-MAX_BRIGHTNESS
12. pulse_freq : The amount of milliseconds after which klapse_pulse is called. A more developer-targeted tunable. Only works when one or both of #1 and #8 are 1. Values : 1000-600000 (Represents 1sec to 10 minutes)
13. fadeback_minutes : The number of minutes before klapse_stop_hour when RGB should start going back to daytime_rgb. Only works when #1 is 1. Values : 0-minutes between #2 and #3
Impact on performance or battery...
Fortunately, as per practical testing there is absolutely no negative effect on performance or battery backup!
"I'm a kernel maintainer. How do I add it to my source?"
Note : I'm currently maintaining klapse for OnePlus6 (enchilada), using the snapshot branch.
The klapse.c file is pretty much generic, but depending on your device you may need to change some of the #define values
The klapse.h file should be edited in order to make the K_RED etc. defines point to the correct RGB interface variable. OnePlus 6 simply uses kcal_red, kcal_green and kcal_blue in sde. Some devices have a struct or pointers instead of a variable. Those devices must edit their kcal files to keep a copy of the address that klapse will access. An example of a source with struct-based kcal with klapse support is this: commit (thanks to @rupanshji for this commit)
The KCONFIG is pretty understandable too, but you may wanna remove the "DEPENDS" line for your device.
The Makefile is just one line, and so is enabling klapse in the defconfig.
Now you must change the file that provides the kcal/gamma (mtk) interface. Thanks to other developers, all I had to do on the OnePlus 6 was to remove the keyword "static" from the variable declaration.
Great work! Can I pay for your next meal?
I'm just a university CS student so sure, any amount is much appreciated! You can donate via PayPal here :
Donate
XDA:DevDB Information
K-Lapse, Kernel for all devices (see above for details)
Contributors
tanish2k09
Source Code: https://github.com/tanish2k09/KLapse-Livedisplay
Kernel Special Features: RGB shifting based on a context
Version Information
Status: Stable
Current Stable Version: 4.3
Stable Release Date: 2019-03-02
Created 2019-03-04
Last Updated 2019-03-19
TODO :
Add custom-minute support
Add full-smooth scaling algorithm that actually scales from node to node to make the shift smoother
Add a third "intelligent" mode that uses both time-based and brightness-based values to magically come up with an RGB set that's perfect for that environment
A grayscale feature, that maybe also would support a yellow tint over it, so it's like a grayscale night mode.
Telegram support?
Yeah yeah, I know. Telegram links are common now. In compliance with the xda rule of "Only one TG link per thread" that I saw on some other sub-forums, maybe a link would be fine but mods can remove it per will.
Here's the official klapse telegram group, with commit notifications too:
t.me/klapse or from within telegram you can just join klapse but with an @ in front of it (I didn't use it to prevent an unintended mention to some person)
Notes :
I'm open to any other contructive feedback or suggestions
Klapse doesn't conflict with night mode of Android. They both can work TOGETHER, the result would be an overlap of both their colors.
Credits :
I pretty much wrote all the code for k-lapse myself, but it would be useless without these awesome people who put it to use -
@pappschlumpf for getting k-lapse working for the first time on any snapdragon device, with Smurf kernel for OnePlus 6
@Eliminater74 for tips along the way, very helpful
@HolyAngel for a collab to add support to HolyDragon, and indirectly SkyDragon, and suggesting some tunable structuring
@rupanshji for the commit used for an example of a structured kcal implementation
@flar2 for debugging and adding k-lapse support to his app EX kernel manager, purchase the app here - EXKM
 @franciscofranco for adding k-lapse support to his app Franco Kernel Manager, purchase the app here - FKM
Screenshots
Screenshots from EXKM v4.04, Mixplorer and FKM v4.0 have been attached.
Note that these screenshots were taken while v4.3 was the active version. May change in future.
It's pretty common now
@apophis9283 Seeing you're one of the mods here, would you please be kind enough to delete the other 3 clones of this thread that got created due to XDA request failure?
Also, in case this thread is in the wrong sub-forum, please feel free to move it to the correct one but notify me via PM or email. Many thanks
Been using this on Smurf kernel for awhile now. Absolutely love it. Great job.
Glad your work is posted on XDA now works good in sky dragon.
Great alternative to night mode that does way more than that if you're interested in other features.
It's lightweight and won't bloat your system at all.
Any proper kernel should include this as there are only benefits and no drawbacks. 8)
As a last addition/compliment/support: it's been very well maintained and as you can tell just from reading OP, the dev is friendly and will help you if you have issues with it.
On Smurf kernel on op6. I have the gray scale option on digital wellbeing in the night and after switching on this mod (light mode) it automatically turns off the gray scale. Is it a bug?
akiwiz said:
On Smurf kernel on op6. I have the gray scale option on digital wellbeing in the night and after switching on this mod (light mode) it automatically turns off the grayscale. Is it a bug?
Click to expand...
Click to collapse
It is not a bug, it's actually expected behaviour.
First of all, we both know that the screen can't be both grayscale AND have a yellow tint at the same time, because yellow isn't gray.
Only one of them can stay active. The fact that klapse works from the kernelspace makes klapse more powerful. As soon as klapse refreshes, which happens every 30 seconds by default, the grayscale RGB will be overridden.
It also depends on how digital wellbeing's grayscale option works. I'm assuming it uses the same HWC HAL that android uses, but I have not the slightest clue. In case I'm right, both klapse and grayscale will work together to give you a black-n-white + slight yellow tinted screen.
As an alternative, how about I add grayscale as a feature to klapse itself? I can't add it to klapse right away but I can mark it in my TODO post above. Sounds good? Maybe I can come up with a solution that overlaps the grayscale with the yellow tint to create a grayscale night mode?
I don't know about you but it seems like an amazing idea to me
tanish2k09 said:
It is not a bug, it's actually expected behaviour.
First of all, we both know that the screen can't be both grayscale AND have a yellow tint at the same time, because yellow isn't gray.
Only one of them can stay active. The fact that klapse works from the kernelspace makes klapse more powerful. As soon as klapse refreshes, which happens every 30 seconds by default, the grayscale RGB will be overridden.
It also depends on how digital wellbeing's grayscale option works. I'm assuming it uses the same HWC HAL that android uses, but I have not the slightest clue. In case I'm right, both klapse and grayscale will work together to give you a black-n-white + slight yellow tinted screen.
As an alternative, how about I add grayscale as a feature to klapse itself? I can't add it to klapse right away but I can mark it in my TODO post above. Sounds good? Maybe I can come up with a solution that overlaps the grayscale with the yellow tint to create a grayscale night mode?
I don't know about you but it seems like an amazing idea to me
Click to expand...
Click to collapse
Thank you for the explanation ? is there a way I can switch off klapse at night when grey scale from digital wellbeing kicks in? Also your alternative would be ideal if it's possible in future! Thanks again
akiwiz said:
Thank you for the explanation ? is there a way I can switch off klapse at night when grey scale from digital wellbeing kicks in? Also your alternative would be ideal if it's possible in future! Thanks again
Click to expand...
Click to collapse
A tester just told me that klapse's yellow tint worked on gray-scale too.
But to answer your question, the only possible solution is to either disable Klapse or keep the schedule of start and stop outside the range of grayscale's schedule.
Btw I totally recommend you to use Klapse at night because yellow tint in the dark is better than grayscale to look at
tanish2k09 said:
A tester just told me that klapse's yellow tint worked on gray-scale too.
But to answer your question, the only possible solution is to either disable Klapse or keep the schedule of start and stop outside the range of grayscale's schedule.
Btw I totally recommend you to use Klapse at night because yellow tint in the dark is better than grayscale to look at
Click to expand...
Click to collapse
So I need EXM to set a schedule start?
akiwiz said:
So I need EXM to set a schedule start?
Click to expand...
Click to collapse
EXKM is one way. You can create your own tunables in Franco kernel manager too like. Here's a couple screenshots of an example.
You can use those same paths in kernel adiutor too. I haven't talked to the dev for klapse support yet, maybe I should but next weekend probably.
You can also use a file manager to change those files. Remember that pretty much everything in /sys is rebuilt during each boot so all values reset. That's why an apply-on-boot method is used for fixing values.
Info for which file does what is in OP.
This doesn't seem to work for me. OnePlus 6 with xXx NoLimits and Smurf Kernel. Latest stable versions for all. I have changed settings with EXKM and rebooted multiple times. /sys/klapse files accurately reflect the settings in EXKM. Setting K-Lapse alternately to time and light have failed to demonstrate any color changes as would be expected from the settings. I turned off the phone's night mode so that I can see more purely what K-Lapse does.
Thoughts?
maigre said:
This doesn't seem to work for me. OnePlus 6 with xXx NoLimits and Smurf Kernel. Latest stable versions for all. I have changed settings with EXKM and rebooted multiple times. /sys/klapse files accurately reflect the settings in EXKM. Setting K-Lapse alternately to time and light have failed to demonstrate any color changes as would be expected from the settings. I turned off the phone's night mode so that I can see more purely what K-Lapse does.
Thoughts?
Click to expand...
Click to collapse
I'm guessing you're using the wrong display calibration mode.
On the OnePlus 6 stock ROM it only works with custom and adaptive display modes in settings.
tanish2k09 said:
I'm guessing you're using the wrong display calibration mode.
On the OnePlus 6 stock ROM it only works with custom and adaptive display modes in settings.
Click to expand...
Click to collapse
That was it exactly. Thanks!
I can't find any settings for K-lapse in the latest EX Kernel Manager. I went through every section of the app. No K-lapse settings.
majikfox said:
I can't find any settings for K-lapse in the latest EX Kernel Manager. I went through every section of the app. No K-lapse settings.
Click to expand...
Click to collapse
Tools > Color Control > K-Lapse Settings
maigre said:
Tools > Color Control > K-Lapse Settings
Click to expand...
Click to collapse
Nope. Not there.
majikfox said:
I can't find any settings for K-lapse in the latest EX Kernel Manager. I went through every section of the app. No K-lapse settings.
Click to expand...
Click to collapse
I don't own EX kernel manager yet but I was given a v4.04 build to test, and it was under Graphics > Klapse-settings
They'll obviously only show up if the kernel supports it.
Also, some users reported that the update isn't live for them yet, so you may have to wait. That's not in my control either and flar2 handles EXKM.

Categories

Resources