Affiliate Disclosure
If you buy through our links, we may get a commission. Read our ethics policy.

How to control HomeKit with Stream Deck

Last updated

While you can control your entire HomeKit setup from an El Gato Stream Deck, the solution is far from obvious. Here's what you need to do.

Egg, chicken, chicken, egg. While HomeKit remained less successful than, say, Amazon's Alexa ecosystem, third-party firms might only develop for Apple's home app as an afterthought.

Hopefully this will change as Apple, and others, keep moving forward with the Matter system that means they'll all work together. But in the meantime, neither Elgato's Stream Deck nor the third-party plugins it supports, can control HomeKit.

However, those third-party plugins now include one called Shortcuts by Sentinelite. It can't control HomeKit either — but it can control Shortcuts, and that changes everything.

Stream Deck has always been able to open apps, and you can make app versions of your Shortcuts. So you could make a Shortcut to turn on a light for instance, then turn that into an app, then get Stream Deck to open it.

But it was more fiddly to do than that sounds, and you also end up with a lot of apps that do nothing but run specific Shortcuts.

Now with Sentinelite's free plugin, you can trigger Shortcuts directly and much more readily. So now the job becomes just creating Shortcuts to do what you want, then using Sentinelite's plugin to assign Shortcuts to Stream Deck buttons.

First, write a Shortcut to control, for example, a light in your home

How to use your Stream Deck to control HomeKit

It doesn't matter what specifically you want to do with HomeKit, the process is always the same. You want one Stream Deck button to trigger at least one HomeKit light or door or whatever.

So your first step is to decide what you want to happen, and then your second step is to make a Shortcut to do it. This has nothing to do with Stream Deck yet, you are making a very small Mac app — and you do it using Shortcuts.

Start off in Shortcuts

  1. Open Shortcuts on the Mac
  2. Click the plus sign to start a new one
  3. Name it something like Office Light On, or Kitchen Light Off
  4. In the Search for apps and actions box, type Home
  5. From the actions that appear, choose the one beginning Control and your home's name
  6. In the action that now begins with "Set", click where it says Scenes and Accessories
  7. Choose the room, then the light or other accessor you want, and click Next
  8. Click to choose whether you want the accessory on or off
  9. Close this new Shortcut

If you did want to run this Shortcut on Stream Deck without using the plugin, you could now Right click on the Shortcut in the gallery and choose Add to Dock. That makes the Shortcut into an app — and places it in your dock.

You can just drag it out of the dock, though, and know that it remains in your ~/Users/[your name]/Applications folder.

Get the plugin

Add the Shortcuts by Sentinelite plugin to your Stream Deck via the Stream Deck app's Store button.

  1. Open Stream Deck
  2. Click on the Store icon toward top middle (it looks like color keyboard with a plus sign
  3. In the Store, click in the search box at top left and type Shortcuts
  4. From the results that appear, choose Productivity: Shortcuts by Sentinelite and click Install
  5. Click Install again to confirm
  6. Close the store window
Searching the Store may return several results, but this is the one you want
Searching the Store may return several results, but this is the one you want

It may take a moment to download, but now this plugin is installed in your Stream Deck and you can use it the same way you would any of the built-in controls.

Continue with Stream Deck

There are reasons to get a little more complex, to add more options, but start with the simplest approach to get one button that, say, turns on a HomeKit light.

  1. Click on an empty, unassigned button
  2. In the column to the right click in the Search box
  3. Search for Shortcuts
  4. From the Shortcuts heading that appears, drag the entry called Launch Shortcut, on to the button
  5. It takes a moment, but the controls at the bottom of the Stream Deck screen then fill out with Shortcuts options
  6. Give this button a title
  7. From the dropdown labelled "Shortcut," choose your new Shortcut

You will typically have to wait a short but a noticeable time for the Stream Deck button to show the Shortcuts controls. That's because each time you do this, it reloads the list of all your shortcuts so that you can pick from them.

If you have hundreds or thousands of Shortcuts, you'll have to count a few Mississippis.

The plugin offers extra Shortcut and Stream Deck options, including having Siri read the name of the Shortcut aloud
The plugin offers extra Shortcut and Stream Deck options, including having Siri read the name of the Shortcut aloud

Plus there are other options which might be convenient. This plugin lets you reduce the wait time by choosing to show only a specific folder of Shortcuts instead of listing all the ones you have.

That does require you to create a folder in the Shortcuts apps, though.

Also there is an accessibility option via the Sentinelite plugin. You can have your Mac speak the name of the Shortcut aloud.

Plus there is an option that affects whether the button on the Stream Deck shows its title or not. That option seems less useful since Stream Deck itself allows you to have just an image without any title, though Sentinelite's version is easier to find.

A basic but not very satisfactory solution

The result of all of this is that you have a Stream Deck button you can press, and, for instance, your light comes on. But it doesn't go off again when you press the same button.

It looks like you have to do a new "off" Shortcut and give that its own button, which is just wasting space. Especially on the smaller Stream Decks, space is at a premium.

But Stream Deck comes with an option called Multi Action Switch. At its most basic, you can set up one button that runs one Shortcut the first time you press it, and then runs a different one the next time.

So you can duplicate your Office Light On Shortcut, change it to turn that light off, and then put both Shortcuts on the same Stream Deck button.

  1. Remember to give that Off Shortcut a distinctive name
  2. In the Stream Deck app, search for "Multi" then drag "Multi Action Switch" to one of the buttons
  3. On the screen that appears, now search for Shortcuts and drag Sentinelite's plugin over onto the main screen
  4. Set that up to run your light on Shortcut
  5. Now click on the top line where there is a "2" next to the words "Multi Action"
  6. Repeat dragging Shortcuts over to this main screen and setting up the Light Off Shortcut
  7. Click on the back arrow icon next to the words "Multi Action

You now have one Stream Deck button that controls turning your light on or off. To make it clear what it does, you can drag an image onto the button on the Stream Deck app and that image will be shown on the physical button.

To make that image, you can use any image editor. Just create an image that is no less than 72 pixels by 72 pixels square.

Using Multi Action Switch, you can have one button that runs two different Shortcuts —  such as an On or Off one
Using Multi Action Switch, you can have one button that runs two different Shortcuts — such as an On or Off one

Creating a more complex Stream Deck button

The way this is all done, the Stream Deck doesn't care whether your light is on or off, it just sends the on or off command anyway. So equally, it doesn't reset if you — for instance — choose to turn off your light through the Home app on your iPhone, or via Siri.

Consequently, there will be times when the light is already on, say, and so when you press the button to turn it on, nothing happens. The Stream Deck will briefly show a green tick icon on the button, but that's it.

However, if you then press it again, you will turn the light off. So from time to time there is a moment's blink as you wonder what's happened, but it does always work.

It can, though, work better. Since all this is really doing is running a Shortcut, you could make that Shortcut be far more sophisticated.

For instance, you could have the Shortcut first check whether the light is on and then only if it is, turn it off. Or you could have one Shortcut that turns on the light, locks the back door, starts playing your Chvches playlist on Apple Music on your Mac.

That's specifically using a more elaborate Shortcut, but there is another possibility. The real reason for Stream Deck including Multi Action options is so that you can use it to have a single button perform a whole series of Stream Deck features in sequence.

Overkill

Since you have the Home app right there on your Mac, you can argue that all of this is pointless and you could just launch that app when you want to do something.

However, while it is true that the first time you set up a Stream Deck button, it will take a few minutes, every time afterwards is faster. No opening a Home app, no searching for the right HomeKit scene or accessory, and no setting the control for what you want.

Instead, you'll reach up from your Mac's keyboard, tap the Stream Deck button and apart from marvelling how good that feels, you'll be back typing before the light has even come on.