Adaptive Lighting support for HomeKit (iOS 14)

Hello,

I added a minimal support to HAP-python and now I think about next steps. At this moment it should be possible to extend the HA exported lights with Adaptive Lightning, but the question now is how the actual light adaptation should work.

I see the following options at the moment:

  • Implement the whole adaptive lightning controller in the HomeKit integration. The time schedule will be provided by a HomeKit controller (iPhone/HomePod) and the integration responsibility is to just execute this schedule. What is not clear to me is how to present it in the HA UI. This option is the easiest, but it also lacks any customization options. I prefer this option, but it would possibly introduce a lot of additional code in the HomeKit integration with a functionality that I am not so convinced that should be there.

  • We can possibly map the light to some existing component (Flux/Adaptive Lightning), ignore the iOS provided schedule and toggle the integration switch when the adaptive lightning is selected in the Home App. This is weird, with implicit dependency, but way more customizable.

  • Ultimate solution would be to extend the HA light entity with a notion of associated controller to make it clear to the rest of the system and to the user that the light is now managed automatically. Such controller would be provided by Flux, Adaptive Lightning and the HomeKit integration. This would be nice but it requires structural change to relatively core components, but this must obviously be discussed by responsible maintainers.

If you have any other idea or preference on how this should work please suggest. I’d like to collect some feedback before I start implementing it.

5 Likes