A look at new HomeKit features in iOS11

Apple’s new mobile operating system iOS11 has arrived, and with it some much needed enhancements to the HomeKit platform, and the Home App specifically. The user facing changes are small on the surface, but plug some irksome gaps in the automation capabilities up to this point. I covered the announced changes from this year’s WWDC event, but the reality we have received is a little different from the expectations.

If we focus on the automation changes, we can see the mixed bag results most clearly. The additions are still welcome, but not quite as polished as I had hoped for. In fact, there is some odd behaviour that looks like things didn’t really get enough QA attention. 

Additional GeoFencing options

A big gap in iOS10 was the inability for HomeKit to recognise any person other than the ‘owner’ of the home. This was a purely security-based limitation as getting the presence integration working between two iCloud accounts apparently needed some more work to do it right. To be fair, I haven’t seen a security analysis of this implementation yet, but Apple’s past performance in this area points pretty strongly to both this explanation, and that it has been done right in iOS11. 

Automation options for presence now include a few new common sense options. These manifest in two different locations in the Home App; The Arrive and Leave automation types, and as a People section for any automation. 

Note: To use these conditions the people concerned need to have an iPhone running iOS11 specifically, otherwise they won’t be detected. 

To add someone to your ‘home’ in HomeKit, open the Home app and tap Edit at the top of the Home screen. Then tap the arrow next to the name of the Home. 

From the Home properties screen you can use the Invite... option to to send an invite email to anyone you wish. Invited users gain the ability to operate accessories, scenes and automations, as well as be selected for geofence triggers and conditions.  Note that only the owner of the ‘home’ can edit accessories and automations in any case.

The People Arrive and People Leave automation types allow for either specifically selected people (from those that your have shared the home with), or First and Last options respectively. This means you can now trigger actions based on the first person to come home, or the last person to leave, which is most useful. 

For other automation types, such as “A Sensor Detects Something”, the new People option appears on the When: screen. This option adds the ability to filter trigger actions based on presence (of those added to the home above). The options are limited to:

  • When somebody is home
  • When I am home
  • When nobody is home
  • When I am not home.

While it’s not person specific (other than yourself), they still add a lot of common flexibility that was missing before, and will enable better control of power use by more easily limiting activations of things when people are out. 

Time delay conditions

The new time options are where things go a bit awry. The indications from WWDC were that we would be able to not only set an activation time (turn off after x minutes), but time delays (trigger scene x after y minutes). We have the former, but not the latter.

Having said that, we have picked up some more detailed time controls, each automation types now includes a Time condition which includes the follow options: 

  • Any Time
  • During the day
  • At night
  • Specific times

Previously we only had After Sunset and Before Sunrise, which were a bit vague. Now, for each of those options other than Any Time, we can drill by tapping the info icon and define Start and End time limits. For the day and night options those manifest as ‘x minutes before’ or ‘x minutes after’ selections for sunset and sunrise. For the Specific times options it’s actual start and end time.

Note, if you have previously used a After Sunset condition, this will only work up to midnight. You need to use the new At Night option to go all the way through.

Additionally, and very helpfully, we can now specify a Turn Off duration from 1 to 60 minutes which will automatically turn off any activated accessories after than time.  This option appears on the last (confirmation) screen when creating a new automation, but only if an accessory has been selected to turn on, or a Scene has been selected which turns something on.

The addition of the Turn Off feature has had an unexpected knock on effect to third party Home Kit apps. I use Eve from Elgato to do some more advanced automations, and to gather graphing data from some of my Eve accessories (air quality, temperature and so forth). I’ve noticed that any automation that includes a Turn Off time disappears from the Eve Rules list. I expect this is just a compatibility issue that can be rectified with an App update, but worth noting for the next section.  You can see how the condition is presented in Eve vs Home below.

Conditional Triggers

This is an area that is distinctly missing in action. Talks at WWDC indicated we’d get the ability to add conditions to triggers in the Home app. The presence of such is yet to make an appearance, at least on the surface. HomeKit itself has had this capability for some time, and it has been available in third party apps, such as the Eve app mentioned above.  What is new is that any automations that have a condition defined do now show this as a toggle when viewing the automation properties in the Home app, but there doesn’t appear to be a way to create this conditions natively. 

I’ve created test rules in Eve with conditions, which then appear in the Home app correctly. As noted previously, the Eve app doesn’t yet have the Turn Off option in it’s rule settings, so that needs to be added in the Home app after the automation is created. The irony, of course, being that once a Turn Off time is added, the rule is no longer editable in the Eve app. This obviously creates a bit of a headache for managing more complex rule sets. Why the condition options have not made an appearance in Apple’s own app is a mystery. 

Baby Steps

In typical Apple fashion, the built in Home app for managing HomeKit devices has been left on the simple side since it’s inception. It’s good to see common sense features being added, but it’s slow going, especially where those features exist in Apple’s underlying platform anyway. The new geofencing capabilities, and the Turn Off option are very welcome additions in their own right, and plug some obvious holes in the platform.

Thankfully third party apps are able to access and leverage these features, and provide alternative presentations of what can be a complicated maze of devices and scenes. I use the Eve app by virtue of having Elgato devices in my home, other device manufacturers have app offerings as well that can offer similar functionality, and there are numerous third party apps available as alternatives to the Home app. Just beware that some of these are priced fairly high, and offer nothing more than free options like Eve, or the Home app itself.