How to control TV volume with Alexa, Harmony Hub & Smartthings

Get “Alexa” & “Harmony” from App Store. Get “Smartthings” as follows:
In “Alexa” home page click “skills”, then type in search box “smartthings”, click on it to add it to Alexa
STEP 1: Log into your myLogitech account (mine is on my computer)
Then “Add a Remote” if you haven’t already done so, in this case it will be the HUB attached by USB to your computer
Next: Create “new activities” e.g. “TV” (to turn on or off TV)( no quotation marks)
For a specific channel, e.g. “CNN”, THEN “Customize this activity” CLICK ON “Add Step” and add “Device” “Action” and channel number)
TO CONTROL VOLUME: I created 2 activities “SOUND UP” and “VOLUME DOWN”.
In each activity I Customized each activity to with a 2 sec delay then a command “volume up”, then a 1 sec delay, then a command “volume up”, 5 times. For “Volume Down” customized with a 2 sec delay, then a command “volume down”, then a 1 sec delay , 3 times. When you finally get to the step in the Alexa app, create a “Group” named “sound” check “sound up” and a “Group” named “Volume” and check “volume up”. When you want to raise the volume, say “Alexa turn “Sound” on”, and when you want to lower it, Say “Alexa turn Volume on”.
Step 2: SYNC with HUB device (connected to computer with USB)
Click the 3 stacked bars in upper left hand corner of app on cell phone to reveal “menu”
CLICK “Harmony Setup”; CLICK “Sync”
Click “Add Thing”; Click “Entertainment” ; Click “Remotes & Buttons”; Click “Logitech”
Click “Logitech Harmony Home Hub”; Go To: “Connect Now”; Click “Select Harmony Hub”
Check “whatever name you called your hub”; Click “Done”; Click “Select Harmony Activities”
Check “TV”, “CNN”, etc; Click “Done” ;Should see banner stating Logitech is connected; Click “Top Smart Apps”; Click “Logitech”; Click “whatever name you called your hub”
In Alexa app, disable smartthings then re-enable skill; Authorize “my switches”/“activities”
Finally: HAVE ALEXA DISCOVER and create “Groups” as necessary


How do you create an activity with just those volume commands? Every time I create an activity, it always asks me for a device, an input, etc. And turning the device on or off is always in the activity.

@franctel, i think you have to select the input for the TV/box, then customize it like the tutorial above otherwise it won’t know.

Hope this helps

1 Like

Hope this helps.

Thanks, the part I was confused about was regarding the fact that harmony has to end an activity (and turns everything off) to start a new one (like the volume up activity). But I saw that you can set your devices to “stay on” when starting other activities. I have it working now, thanks again for the help.

1 Like

Thanks David. This worked fine to turn volume up for one time only, as the activity “Sound” in the harmony will be pressed (selected) and you can’t issue the same command to Alexa or call the same activity again unless you call another activity first. Did you manage to solve this?! Theoretically, you need to release the activity after it’s pressed, maybe by calling amedian activity in between 2 calls for the “Sound” activity. But how can we achieve that. If you can solve this then it’s so practical and you won’t need the physical remote again! I spent the past 2 days trying things, I know it’s because the harmony hub keeps the activity button pressed, but I couldn’t manage to release the button in order to call the activity again! I believe there must be away, a workaround, but I’m new to harmony. BTW, this also applies to “Channel Next” and “Channel Previous” actions, you can’t call the same action twice unless you release the action button first or call a median action in between!

Hi franctel. Where can I select devices to “stay on”?! I’ve seen it somewhere but can’t find it again. Thanks!

Within the section of the app where you can edit settings, click on “devices”, click on a device, click on “power settings”, options are listed there.

I got round the one time use of activity in harmony by creating 2 activities for the same thing, for example, tv sound up and tv sound more, both with the same activity, so if tv sound up has been activated then tv sound more will switch the activity and apply it again, bit clunky but it works

1 Like

Thanks franctel!

@darkdog So if you need to increase the volume 4 times, your commands will be:
TV sound up
TV sound more
TV sound up
TV sound more
Am I getting this right? I honestly thought of the same thing, but avoided it as I preferred consistency with commmands and also didn’t want to fill my library with repetitive commands :slight_smile: Yet, might do it if it’s the only solution!

1 Like

Here’s what I did,

I made 3 activities for Volume Up and 3 for Volume Down.

Loud = 2x Volume Up
Louder = 4x Volume Up
Loudest = 6x Volume Up

Quiet = 2x Volume Down
Quieter = 4x Volume Down
Quetest = 6x Volume Down

These actually work pretty well.

So I just say “Alexa, Turn on Louder” Then the Volume is increased by 4.


Nice. I like “louder” and “quieter”, better words to remember. Now others
will pass it along. Interestingly enough, I just received an Alexa email
touting how it can now pair with Harmony. Small print at bottom of article
says, " it can’t control volume", how wrong they are.

see Fubie for his answers

I started doing it with two volume up and two volume down activities in August 2015 about two weeks after the first SmartThings/echo integration. It’s posted in the forum in one of the Echo FAQ topics. :wink:

As I’ve been saying for over a year, it’s clunky, but it works. For someone like me who can’t use a button remote, it’s definitely useful. I expect that most able-bodied people would rather just use the regular remote.

Because my voice sometime slurs a little, I wanted the commands to be very distinct, so I use lion, tiger, mouse, and moth. I also find it a little easier to remember when switching back-and-forth.

I use a similar method for mute, unmute, pause, unpause, and rewind.

I haven’t had the problem that others have mentioned about having to specify that the devices like the television don’t turn off. As long as the next activity includes the same device, it will stay on.

I think the difference is probably that I don’t have a sound bar, so the sound is always coming through my television anyway.

The more devices that you have, the more complicated these individual button controls activities become.

I’ve been really hoping that the official harmony/echo integration would deliver simpler volume control but maybe in the future. :sunglasses:

Here are some of the posts on the other buttons:


Step by step screenshots

A lot of the stuff in that thread is really old (more than a year at this point) and integration discussion doesn’t really apply anymore because that’s changed. But the setting up a harmony activity to just work one key is still valid.


glad it works as the Alexa/Harmony email update I just received says it
won’t control volume… check out
for details on how fubie solved problem

It can’t be done simply, which is probably why harmony support is saying it can’t be done. And different people will have to do it differently, because it depends on exactly which device in your setup controls the volume.

But it can definitely be done, as I mentioned, I’ve been doing it for over a year.

The key, as always with harmony, is to first create a harmony activity that will do exactly what you want, including leaving the correct devices on.

Once you have that, there are multiple different ways to have echo start that activity, including through the IFTTT channel, with yonomi, I think with stringify, with a SmartThings virtual switch, or now with the new Harmony/echo integration.

The really clunky part is that harmony won’t allow you to execute the same activity again if that activity is already running, so you need to have two that you can switch back-and-forth between.

Given all of that, I understand completely why harmony support says it’s not currently an official feature. But if you really need it, as I do, you can make it happen. :sunglasses:

I am not sure, I understand your comment around it cannot be done simply. I would think for Harmony folks it should be work but pretty easy to do. They have a harmony app and remote both sending button press events to the harmony hub. How hard it could be for them to program sending button press events from Alexa, something like “Alexa tell harmony button vol up”. This, BTW, will also work around the issue of which device is controlling volume, because you are sending button press event, which harmony hub will apply to right device based on current activity.

Anyways I took a slightly different approach to solve creating duplicate command issue, and definitely could use help from the experts here to fine tune that approach :smile:. What I did:

  1. Created an activity TV Louder on Harmony (actually 3 - Louder, Quieter and Mute)
  2. Created a Momentary Button Tile called “TV Volume Up” in Smartthings
  3. Created a CoRE trigger “Increase TV Volume” with following logic:
    • If “TV Volume Up” (Momentary button tile) changes to On
      Then with Harmony Hub Refresh (to refresh to latest activity)
      Then If with Harmony hub if current activity is "HTPC"
      Turn Switch TV Louder on
      Refresh Harmony Hub
      Turn Switch HTPC On

Basically this turns the TV Louder and switches back to HTPC. Had to add few seconds delay after harmony refresh to work and had to disable command optimization in CoRE for this piston because otherwise it would remove the command HTPC on. This is working and leaves me back to HTPC.

The problem I have is that I have 3 major activities that use TV Volume, HTPC, Chromecast and apple TV. I could make above logic complex by saying if activity is HTPC, increase volume, switch back to HTPC, if activity is Chromecast, increase volume and switch back to chromecast and so on, which seems hacky.

What I would really want to do is (and it seems should be possible in CoRE) is to create a piston with following logic

If the momentary switch turns on
refresh harmony
Then if current activity is not – (blank)
Save current activity to a variable
Start Activity “TV Louder”
Refresh Harmony
Restore activity from Variable

This does not seem to work. I have tried both saving current activity to variable and restore from variable or Save state to global store and restore state from global store. None of these want to switch back to last activity saved in variable or global store. If someone can make this work, I will be golden…

Thanks for reading…

Sorry, I meant it can’t be done simply by the customer using harmony’s current activity paradigm. I have no idea what it would take for logitech to change the way they process button presses all together. My point was just that you can do it now, but it’s complicated to explain and clunky to use. :disappointed_relieved:

As for questions about the piston, ask in the core peer assistance thread and people there will be glad to help you. That’s where the core experts hang out.