package icon

Tideo Auto Brightness

A glass-box replacement for Android's adaptive brightness
New in version 1.9.0
Reliability and safety release.

Privileged Display now reads the device state and checks Android's Night Light and always-on display capabilities before writing. Disable HDR remains an Android 14+ experimental preference control; applying or clearing it may need a reboot, and display-mode changes may briefly blank the screen.

Emergency Reset now vibrates its S.O.S. confirmation. At debug level 8, ignored control commands say why.
You taught Android your brightness preferences and it is still wrong. Tideo
replaces the opaque on-device ML of stock adaptive brightness with deterministic,
inspectable math: a tunable lux-to-brightness curve you can see and shape, smooth
animated transitions, circadian (time-of-day) scaling, per-context overrides, and
an optional privileged "super dimming" mode that takes the screen below the system
minimum.

To use it, first disable the system's stock Adaptive/Auto Brightness
(Settings > Display), then launch Tideo, complete onboarding, and toggle the main
service on from the Dashboard.

Features:

* Three-zone perceptual brightness curve with a live, editable graph.
* Automatic curve fitting: adjust brightness by hand during normal use and, after
a handful of points across varied lighting, the wizard suggests a fitted curve.
* Reactivity control: per-range dead zones that kill sensor jitter without making
the screen sluggish.
* Smooth animated transitions with override detection: drag the system slider and
Tideo steps aside, then resumes per your rules.
* Circadian scaling synced to local sunrise/sunset, shifting the whole curve
across the day.
* Super dimming (privileged): drives Android's Reduce Bright Colors below the
hardware floor, plus a PWM-flicker-aware software-dimming mode.
* Context automation: load profiles automatically by foreground app, time window,
location, charging state, Wi-Fi SSID, or day of week.
* Profiles: five built-in presets plus save / overwrite / factory-restore and
JSON import/export.
* Live Debug scene: a glass-box readout of every runtime variable and decision.
* Emergency recovery: flip the phone upside-down and shake to force brightness to
max with an SOS vibration.
* Surfaces: foreground-service notification with actions, a Quick Settings tile, a
home-screen widget, and boot-start.

Privilege tiers:

The core pipeline is fully functional at the BASIC tier, which uses only the
user-grantable WRITE_SETTINGS permission. The optional ELEVATED tier unlocks super
dimming and requires a one-time WRITE_SECURE_SETTINGS grant that YOU perform via
adb, Shizuku, or root. It is never granted automatically.

About the permissions Tideo requests:

* Background location and location: used only by the optional location-aware
context rules and the once-a-day sunrise/sunset refresh for circadian scaling.
* Usage access (PACKAGE_USAGE_STATS): used only by per-app context rules to read
the foreground app; granted from a Settings screen, not a runtime dialog.
* Accessibility service: optional and presentation-only. It draws the debug/context
flash overlay system-wide. It does not read screen content and does not consume
input events. With it off, Tideo falls back to a foreground toast.

Privacy:

Tideo is local-first with no analytics, ads, or accounts. It makes one outbound
network request, and only as a last resort: if you opt in and enable circadian
scaling and no on-device location is available, it falls back to a single HTTPS
request to ipwho.is to estimate your city from your public IP. This fallback is off
by default and can be turned off under Circadian > Date & location. Automatic lookup
runs at most once per day, and the resolved coordinates are saved only on-device;
the user-triggered Use current location action can make an additional request after
on-device location fails. Everything else runs entirely on-device.

Tideo is a ground-up Kotlin/Compose rebuild of the Advanced Auto Brightness Tasker
project, ported with exact behavioural parity. It is not affiliated with Tasker.

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 1.9.0 (21) suggested Added on Aug 21, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 12 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access location in the background
      This app can access location at any time, even while the app is not in use.
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • android.permission.DUMP
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.PACKAGE_USAGE_STATS
    • show notifications
      Allows the app to show notifications
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • control vibration
      Allows the app to control the vibrator.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.WRITE_SECURE_SETTINGS
    • modify system settings
      Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
    • com.tideo.autobrightness.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 23 MiB PGP Signature | Build Log

  • New in version 1.8.2
    Maintenance and safety release.

    Updated the Android build toolchain while preserving F-Droid reproducibility. Profile imports now reject oversized or unreadable files, and a system restart respects the service-off setting.

    Stopping restores Android's brightness mode and clears leftover Extra Dim state. Emergency Reset continues its recovery steps if one system setting fails, and Extra Dim activation no longer risks applying a stale level.
  • Version 1.8.2 (20) - Added on Aug 04, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 12 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access location in the background
      This app can access location at any time, even while the app is not in use.
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • android.permission.DUMP
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.PACKAGE_USAGE_STATS
    • show notifications
      Allows the app to show notifications
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • control vibration
      Allows the app to control the vibrator.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.WRITE_SECURE_SETTINGS
    • modify system settings
      Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
    • com.tideo.autobrightness.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 23 MiB PGP Signature | Build Log

  • New in version 1.8.1
    Fix "Resume context automation": pressing Resume now immediately re-evaluates your context rules — a matching rule applies at once, and with no match it reverts to your last manually-loaded profile — instead of leaving the settings screens showing the old profile while the label flipped to "Default".
  • Version 1.8.1 (19) - Added on Jul 28, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 12 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access location in the background
      This app can access location at any time, even while the app is not in use.
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • android.permission.DUMP
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.PACKAGE_USAGE_STATS
    • show notifications
      Allows the app to show notifications
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • control vibration
      Allows the app to control the vibrator.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.WRITE_SECURE_SETTINGS
    • modify system settings
      Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
    • com.tideo.autobrightness.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 22 MiB PGP Signature | Build Log