On our most recent IoT Podcast, Jonathan called in with an interesting smart home problem to solve. He’s looking for a button or some other simple device that, when pressed, will disable any smart home routines. Jonathan’s wife has an irregular sleep schedule due to her job so he doesn’t want automations or routines to activate when she’s sleeping. If she could just hit a connected button to put the smart home in “do-not-disturb” mode, the home wouldn’t interrupt her sleep.
Why should Jonathan’s wife be woken up by the Roomba’s scheduled cleaning time? Or from sunlight when the connected shades open up? We’ve faced the same challenge in our smart home when someone is taking an afternoon nap only to be woken up by our connected lights turning on at dusk.
Depending on the devices Jonathan has (aside from the Roomba and shades that he mentions), there are some less than optimal workarounds that could help.
Some smart home platforms support geofencing, for example. So it might be possible to use advanced automation rules that turn a device on only if someone isn’t home. This rule would use the phone’s GPS location to determine if a specific individual is present. In Jonathan’s case, that would be his wife, but it could apply to any smart home family member.
We considered suggesting the addition of smart outlets to certain devices because those can easily be turned off with automation rules. And the trigger event to kick off those rules can be a connected button such as the Flic.
But a smart outlet won’t stop a Roomba from vacuuming if the device is already charged. Nor would it disable any automated blinds, smart bulbs, or smart switches. Even worse, any inactive devices can be overridden by someone in the home; there’s simply no universal method to temporarily turn off the smart home.
The closest solution we’ve seen so far is specific to Home Assistant, an open-source, self-hosted smart home solution. A Home Assistant forum member was seeking the exact same do-not-disturb functionality so that automation scripts wouldn’t run during a user-defined period of time. The solution is a custom script but again, it’s specific to Home Assistant. There’s no way to do this with Amazon, Apple, or Google smart homes. At least not yet.
To hear Jonathan’s question, as well as our discussion in full on the topic, tune in to the IoT Podcast below: