[App][Pro] Adaptive Lighting | Light that follows your natural rhythm

Hey all! I’d like to share my new app: Adaptive Lighting.

It automatically adjusts the color temperature and brightness of your lights throughout the day based on the actual sun position at your location. Cool and bright during the day, warm and dim in the evening.

How it works

The app calculates the sun’s elevation using your Homey’s geolocation and translates that into a smooth lighting curve. Color temperature ranges from 2000K (warm) at night up to 5500K (cool) at solar noon. Brightness ramps up around sunrise and back down around sunset.

Everything updates once per minute, so changes are basically invisible.

Getting started

  1. Install the app from the Homey App Store (requires firmware 12.4.0+)
  2. Open the app settings (Apps → Adaptive Lighting → Gear icon → App Settings)
  3. Tap “Add Lights” and select the lights you want to control
  4. Done. The app starts working immediately.

From there you can optionally tweak things:

  • Set global min/max Kelvin and brightness ranges
  • Set per-light overrides for supported Kelvin and brightness ranges
  • Choose a brightness transition speed (Normal, Relaxed, Gentle, Ultra-gentle)
  • Pick a temperature sync mode (per device, consistent across all lights, or consistent per zone)
  • Hit “Preview Curve” to see the full 24-hour curve for your location

Override detection

If you manually change a light (via the Homey app, a remote, flow, or another app), Adaptive Lighting tries to detect this and backs off. It won’t fight you. Temperature and brightness are tracked independently, so dimming a light manually doesn’t affect its color temperature control. The override clears automatically when the light is turned off. You can also clear it manually from the settings page.

Flow cards

Four action cards included:

  • Pause/resume control for a specific light (temperature, brightness, or both)
  • Pause/resume the entire system

Handy for things like pausing brightness during movie night, or resuming everything when you get home.


Good to know

  • Dim-only lights (no color temperature) are supported too, the app just controls their brightness
  • Sunrise is clamped between 06:00-08:30 and sunset between 17:30-21:00 to prevent weird behaviour in extreme seasons
  • When a light turns on it immediately tries to sync
  • Available in 13 languages

Feedback and feature requests welcome, especially now that the app is still in the testing phase!


Changelog:

Version Details Date
1.0.0 First version! 2026-02-21
1.0.1 Add community forum topic link 2026-02-21
1.0.2 Improve performance by reducing updates that are send to the lights 2026-02-21
1.0.3 Updated the settings page, included a log viewer. 2026-02-22
1.0.4 Remove icon library to keep app size down, use icon SVGs directly 2026-02-22
1.0.5 Removed unused sentry environment value 2026-02-22
1.1.0 Simplified override detection to use pure value comparison 2026-02-22
1.1.1 Add the ability to offset the sun altitude to tweak the temperature curve 2026-02-23
1.1.2 Add offset options for sunrise and sunset to control brightness during the day 2026-02-23
1.1.3 Improved slider styling to visualize the move away from the center 2026-02-24
1.1.4 Added skip in brightness override detection when dim reports zero 2026-02-24
1.1.5 Reworked the settings to include more hints for individial settings 2026-02-24
1.1.6 Add missing hint locales 2026-02-24
1.1.7 Improved robustness at edge cases and added input validation throughout 2026-02-24
:tada: Public release! :tada:
1.1.8 Fix crash due to null value capability 2026-02-26
1.1.9 Detect RGB color changes and pause temperature control 2026-02-27
1.2.0 Added zone-based pause/resume flow cards 2026-01-02
1.2.1 Fixed incorrect calculations for users outside the UTC timezone 2026-01-02
1.3.0 Added device group awareness with automatic migration 2026-02-02
1.4.0 Added configurable turn-on sync delay (global + per-device) 2026-02-02
1.4.1 Updated settings page to use brand color in various places 2026-02-02
1.4.2 Refine turn-on sync delay to 0.25s steps with 2.5s max 2026-02-03
5 Likes

Hi!

What Is the difference between this app and the existing app Circadian Lighting?

Good question! Both apps try to accomplish the same result, the main difference is in the approach.

Circadian Lighting exposes a virtual device whose values you use in flows to control your lights yourself. Adaptive Lighting skips that step and controls your lights directly, you don’t need any flows needed, and automatically tries to detect manual changes so it won’t keep fighting you.

I have actually used the Circadian Lighting app myself before building my own app, and it’s really great! But I ran into an issue with lights in the same room having different temperature ranges. Since it outputs a single value between 0 and 1, lights with different ranges end up at different color temperatures. Adaptive Lighting can map the circadian curve to each light’s individual range, keeping everything visually in sync.

That’s the main reason I’ve started building my own app and I took a different approach so there is something to choose based on what works best for people; flows versus a more hands-off approach. Both have their advantages :ok_hand:

1 Like

Great app. I like it.

Do you see any chance to add an offset to move the light curve.
I think it would be a great addition.

Thanks

1 Like

Thanks for the detailed comparison @Waldo. I’ve also used Circadian Lighting some time, but will definitely give this one a try.

1 Like

In the latest test version i’ve added an option to set an offset for the sun altitude, which will affect the temperature. I’ll be working on offsets for sunrise and sunset next, which will affect the brightness instead.

Edit: Offsets for the sunrise and sunset are added now as well to fine tune the brightness.

2 Likes

I’ve submitted version 1.1.7 for certification, but it could take a bit longer since the app requires permission to control your Homey. The version won’t automatically be released on the app store once approved, as I’ll hold this version in testing for a little bit to see if any last bugs show up.

Adaptive Lighting is now publicly available! :tada:
The app has been released to the Homey App Store and is ready for everyone to use.

Quick update: Version 1.1.8 has just been published with a fix for a small crash that was discovered shortly after release. If you’re installing now, you’ll automatically get this stable version.

There seems to be an error with lights that support color. If you change the color, the app does not detect it and will overwrite it back to a color temperature. Is this intentional?

Thanks for catching this! That’s definitely not intentional, the app should respect manual color changes, but this has been an oversight.

For now, Id recommend disabling Adaptive Lighting for that specific light. I’ll be working on a fix this weekend and will get it out as soon as possible.

Appreciate the report!

1 Like

I’ve just pushed a new test version that should address this issue. You can install it from here:

Would you mind giving it a try and letting me know if it solves the problem on your end?

Thanks again for reporting this.

just done a quick test on a few lights and seem to be working! thanks :slight_smile:

1 Like

Hi @Waldo , interesting app ! Seems I could be getting rid of such flows, like the one below…I just wonder, any idea/plans implementing controls for lights with Night Mode ? Eg. in case of Yeelights (not sure if this is valid also for some other brands - API ) you can turn on Night mode, which basically turn light to yellow (warm light) and allow decreasing brightness even below min. level 1% during day mode. It’s also visible what I’m doing with it on the flow below. The dis-advantage is that it’s 1st time turn on bright and then decrease, which is annoying - with your app, seems this side effect is not occurring.

Thank you.


(just ignore the condition card above, it was there for some reason but now it’s just backup)
Also - night mode is “too low”, so basically it’s used only when kids going to sleep…that’s why the time condition.

2 Likes

Thanks, glad you like the app!

And nice to hear the smooth transition without that bright flash is already an improvement for you.

As for Night Mode; because it is a brand specific feature for those Yeelights and not part of Homey’s default light capabilities, I probably won’t be adding direct support for it anytime soon. For now I want to keep the focus on the core functionality that would works across all light brands. That being said, it’s not off the table entirely. if the app matures and there’s enough demand for brand specific features like these, I’d be open to revisiting it.

In the meantime, the app does come with a few flow cards, so you could set up a flow that disables Adaptive Lighting when Night Mode is activated and re-enables it when Night Mode is turned off, if that’s something you’d need.

1 Like

Schön wäre wenn man mehrere gruppen erstellen könnte, z.B. eine nur mit farbanpassung und eine mit farb und helligkeitsanpassung

Hi, I’m new to Homey and just downloaded your Adaptive Lighting app.

I’m in Phoenix, AZ area and it’s currently 12:01pm but when I goto the settings, the app says the current targets are 5420 Kelvin and 1% Brightness.

I tested the app with one of my lights, and it does indeed turn the brightness down to 1%.

Am I doing something wrong? Shouldn’t it be at 100% at this time of the day?

Welcome to Homey, and thanks for trying out the app!

You’re not doing anything wrong… you’ve actually uncovered a timezone bug. :sweat_smile:
It turns out Homey always runs its internal clock in UTC regardless of your location. Since Phoenix is UTC-7, the app was calculating your light targets as if it were 7pm instead of 12pm, which explains the 1% brightness.

I never caught this myself since I’m in UTC+1, so the difference was never noticeable enough on my end. I am updating the app to properly convert time based on timezones, I’ll post the test link as soon as the test version is live. I might even have it up this evening.

1 Like

Thanks for the suggestion! Could you provide a specific example of how you’d use separate groups? My German isn’t great, so I want to make sure I fully understand the use case before considering it.

Good news, I’ve pushed a test version with the timezone fix!
You can install it from here:

Would you mind giving it a try and letting me know if the targets look correct for your timezone now? If so, I can promote this build to a release version.

Ich habe im eingang die lampen so eingestellt xas sich die farbe und die helligkeit anpassen, und im wohnzimmer eine Beleuchtung wo ich nur die farbe stellen möchte, also eine zone wo ich beides steuern möchte und eine zweite zone wo ich nur die Farbtemperatur zu steuern wäre.

wäre schon cool wenn das über die app möglich wäre.

Sehr schöne app, weiter so​:+1: