Presence-Based HomeKit Automation vs. Android In The House

Daniel Marcinkowski
Daniel Marcinkowski’s Blog
3 min readJan 29, 2022

--

Spoiler: you will need Homebridge.

Suppose you’re into home automation, but you live with someone who doesn’t use the same mobile operating system as you do. In that case, you know exactly how limiting it can be. In my case, I use an iPhone, but I didn’t manage to convert my girlfriend from Android just yet (I’m working on it). This makes it almost impossible to run presence-based automations in HomeKit. But there are some workarounds.

My first attempt to approach this problem was using the Tado Platform plugin for Homebridge. It can create virtual occupancy sensors based on Tado’s app geofencing. It worked… until my girlfriend’s Xiaomi phone started killing the Tado app running in the background despite following all of Tado’s troubleshooting steps.

I went with another Homebridge plugin called people, which creates virtual occupancy sensors based on IP addresses of connected Wi-Fi devices. It works slightly slower than Tado’s geofencing, but it’s fast enough to activate home automations when my girlfriend or I get back home.

Virtual occupancy sensors created using homebridge-people
Virtual occupancy sensors created using homebridge-people

Creating virtual occupancy sensors is a good start. For example, it’s possible to set up automations for leaving or arriving back at home, like this:

Automation using homebridge-people virtual sensors
Automation using homebridge-people virtual sensors

Unfortunately, it’s not possible to include the virtual occupancy sensors in time-based automations. For these, you have to use HomeKit’s people detection feature.

HomeKit default “People” automation options
HomeKit default “People” automation options

Luckily, there’s yet another workaround — condition-based automations offered by the Eve app. Here’s how it works:

  1. In the Eve app, go to the Automation section and then switch to the Rules tab;
  2. Select one of the existing time-based automations. You can also create a new automation, but then you need to create or use a HomeKit scene;
  3. Go to Conditions and tap Add Value Conditions. Select the virtual occupancy sensor that you want to use. I created one for anyone to avoid creating separate conditions for each person.
Setting up a condition-based automation in the Eve app
Setting up a condition-based automation in the Eve app

And that’s it — you can now use presence-based automations in HomeKit, even if your partner won’t give up using an Android phone.

--

--