HomeKit Automation: Create action with time delay

Create Home Automation

With the Shortcuts app, you can create HomeKit automations that wait a moment before triggering.

Creating an automation in HomeKit is relatively simple. However, the possibilities are also very limited. It usually boils down to a sensor detecting something and then another device responding immediately.


HomeKit: Notification when door is open for a certain time

But sometimes this is not desired and you only want to start an automation after a certain period of time has elapsed. This would be useful, for example, if you forgot to close your fridge door and you want the system to remind you after a minute. Here it is nonsense if there is an immediate reaction to every opening – after all, you need a short time to find something tasty. Or maybe you monitor a room with a motion detector, in which you always go to get something, but want to be notified if someone stays there for longer than 30 seconds.

Both are examples where the system detects an opening or movement, but has to wait for a while before triggering the next reaction. This is not possible directly in the Home app, so we are taking the detour via the Shortcuts app. In these, actions can not only be defined for the iPhone itself on which the app is running, but also for HomeKit, so that the automation created is available to everyone in the household.


HomeKit and Shortcuts can be combined to a limited extent

Two quick notes: Anyone who has already played with the shortcuts app and perhaps recreated our example for better battery health here will find that a shortcut for HomeKit offers significantly fewer options. Apple has severely restricted this, so you won’t find all the options for HomeKit to use. This also includes the fact that, for example, no notifications can be created that appear on the iPhone – only a reaction within the HomeKit system is possible. In addition, the name is a bit confusing: you start in automations, then convert the automation into a shortcut, which is then listed under automations. So do not wonder. Correctly it should read: a shortcut that is packaged in an automation. Once this has been created, it also appears in the Home app – this is the interface between the Home app and the Shortcuts app.


HomeKit automation that waits: add a time delay

Since, as we said, the option to delay HomeKit can only be made via the shortcuts app, let’s start with this one. Tap on Automations at the bottom and then on the plus in the top right. Then select “Create Home Automation”. Then select A Sensor Detects Something and the appropriate sensor.

HomeKit Sensor detects

Then configure the subtleties. So whether it should react to movement or if it is open or closed, for example if it is a window contact.

HomeKit choose sensor
HomeKit sensor details

The last step is to select a device to control – we’ll leave that alone. Instead, tap Convert To Shortcut

HomeKit convert to shortcut

Then it continues under the title Shortcut. First click the small X to delete the created suggestion.

HomeKit shortcut delete suggestion

Then you tap on Add Action

HomeKit shortcut add action

And select “Wait” under “Scripting”. Enter your desired time span. Just hold the plus so you don’t have to keep tapping.

HomeKit scripting
HomeKit wait automation

After that add another step: but then choose “Apps” and choose the “Home App”.

HomeKit automation device

Then select the scene or the devices that you want to control in the new field.

HomeKit wait automation done

Ready.


How to recognize HomeKit automations with shortcut

Here’s another tip: if you have several automations, you can differentiate between the normal and those with shortcuts as follows: the normal ones always show When and the respective Accessories, those with shortcut show When and Do.

So you can now create HomeKit automations with a time delay – within the limits that Apple has drawn for the combination of the actually very practical tools.

One thought on “HomeKit Automation: Create action with time delay

  1. I tried setting up a window switch to turn off a thermostat after the window had been open for X time, following your motion detector scenario. However, if the switch closes within the delay time, the logic does not reset. The thermostat turns off anyway after X time. It seems that some conditional logic needs to be applied.

Leave a Reply

Your email address will not be published. Required fields are marked *

Close