Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Aguaman

macrumors member
Original poster
Sep 15, 2016
32
8
If you want to control your device's volume with Siri, I've figured out a simple workaround that requires no additional code or software that you probably don't already have installed (i.e., Homebridge, the Harmony app, HomeKit, and the EXCELLENT HarmonyHub plugin).

The main problem is that the Harmony won’t activate an activity if it is already on. We can create an activity, for example, that increases or decreases the volume by 1, but we can't activate that same activity again to raise the volume again. We need some way to automatically turn off the activity (without turning off the device) so we can activate it again to raise the volume again. To work around that limitation, I created a toggle using the Harmony app, the HarmonyHub plugin, and HomeKit rules.

First, I set the audio device's power settings to switch between activities without powering off by using the Harmony app. Select the Devices tab --> Edit Devices --> your device --> Power Settings --> select Keep Device Always ON but Switch Off when OFF Button is Pressed, then select the right arrow at the top, next select Using Two Different Buttons, and select the right arrow at the top again twice. Lastly press the "X" in the upper right hand corner. You'll also need to do this for any other devices in any other activities that use the audio device (such as your TV, etc.).

Then I created a Harmony activity called STEREO NULL which is really just a placeholder and meant to do absolutely nothing other than accept the "power on" state from a Volume Up activity. Make sure there is no input set for the activity. Afterward, I created 2 other activities called VOLUP and VOLDOWN (so the names didn’t conflict with the Siri names I wanted), also with no input settings. Next I edited the VolUp activity and added 5 VolumeUp command steps to the Start Sequence (add as many or few as you like), and did the same thing for VolDown. Then restarted Homebridge.

The next step was to setup the Siri names I wanted to use. I created 3 scenes in HomeKit that switched on each of the activities above. I named the scenes: Stereo Volume Up, Stereo Volume Down, and Stereo Null.

The last step was to create 2 HomeKit rules, one for volume up and one for volume down. I named them something like "Stereo Volume Up Routine." The rules were:

Trigger - VOLUP=on
Condition - STEREO NULL=off
Action - STEREO NULL=on

Whenever the VOLUP activity is triggered, the STEREO NULL activity is triggered right afterward, de-toggling the VOLUP activity so that you can activate it again right away. So now it toggles between VOLUP and STEREO NULL and you can raise the volume as much as you like by speaking out loud "Hey Siri, Stereo Volume Up!" Then I did the same thing for volume down.

That’s it! I don’t know if it matters, but I used the EVE app to do all this.




Sign up for free
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.