[Release] Logitech Harmony Hub Driver v0.1.20230311

I had a simple rule and it used to work but not anymore

Anyone can look and see what im doing wrong ?

Maybe try removing the “physical” and allow the rule to execute on any change?

@ogiewon Thank you for this! Works very well with my setup (even better than what I had with Smartthings, because of the local integration).

1 Like

@ogiewon Just a quick "thank you" for your work. I'd been struggling with combining Hubitat, Harmony and Google Home for my home theater. Harmony's own Google Assistant app/skill is a total mess.

Infinitely easier to just create a virtual switch to trigger the child devices than trying to get Google Assistant to do anything. And, at least Google Assistant can turn on/off a switch pretty reliably.

You, sir, are a tremendous asset to this community.

5 Likes

Any plans to support notification of play/pause actions in a Harmony activity to the Hubitat driver? The use case is to change lighting when pause is hit, and go back to dimmed lights when play is resumed.

2 Likes

This is an interesting idea. I’ll have to see if the play/pause/stop events are easily discerned via the webSockets data stream.

Update: I enabled some debug to see if the play and pause button presses on my Harmony remote were seen via the webSocket data stream. Unfortunately, I don’t see anything. Therefore, I don’t think there is a simple way of accomplishing this.

3 Likes

@ogiewon Thanks for looking into it. I'll admit, its a nice feature.

@scheeni what device / program are you controlling? I have that same functionality working for movies that I watch using Plex Media Server, but its the Plex webhooks that are used to trigger the lights.

Take a look at this thread: Plex Webhooks

If you're just controlling a physical player, you might be SOL.

BTW, @ogiewon, can I use Google Assistant do issue commands to the child switches (aka activities)? I've got it set up so I can run a start-up activity. "Hey Google, Fire Up the Theater" routine toggles my virtual switch that runs the Harmony Activity that turns on my projector, bluray player, and receiver.

But once I'm in that mode and the remote is set to control the bluray player, are the player's functions (play / stop / pause) controllable? I only see On and Off in the child device page.

I'd imagine I'd use another virtual switch because "hey google, pause the Basement Harmony Hub-Oppo BluRay" is a bit of a mouthful.

1 Like

Yes, you can turn 'on' and 'off' the activities.

No, not from Hubitat. It would be quite a bit more work to try to support media controls per activity, like play/pause/etc... Not all activities support those features. Currently, it is not even on my radar. I do accept pull requests, in case you, or someone else, wants to try tackling it in a generic, reusable way.

Google Assistant and Amazon Alexa both have native integrations with Logitech Harmony Hub. I am not sure exactly what features are exposed via these integrations, but it might be worth looking into. You can use Amazon Alexa or Google Assistant "Routines" to shorten the spoken commands.

I actually just uninstalled the Harmony integration because its a horrible dysfunctional mess. Your drivers took care of 95% of what I needed, using GA to trigger a virtual switch that launched whatever activity I needed on the hub. My man cave is basically "Powered by Ogiewon"

Now I'm just being greedy. But I'm gonna blame @scheeni for kickstarting my brain.

"media controls per activity" was the phrase I was looking for. Your drivers are working great for the on/off/switching activities. "Warm up the Theater" and "Fire up the Jukebox" make me very happy. Almost as much as "down periscope" to get the projector to drop down into place.

1 Like

The intent was to pause/resume activities such as my DirecTV DVR, Denon receiver, Roku player, etc.
Unfortunately, from what @ogiewon says, it is not possible to hook into pause/resume via the websocket interface.
I could potentially use Google Assistant or Alexa routines to turn on/off a Pause virtual switch after I utter the pause/resume commands, but this is just a partial solution. If someone in the house were to use just the Harmony remote for these functions, the experience wouldn't be the same.

does this allow you to map zwave/zigbee devices to buttons on the remote? I had the harmony hub extender and it was terrible. Awesome concept, terrible execution. It barely found any of my devices...

No, unfortunately the “smart home buttons” on the remote do not send anything to the Hubitat hub via this integration.

There are some complicated workarounds, but those end up being very user specific and require custom code changes.

This integration allows Hubitat to start/end Harmony Activities. It also receives instant updates when the Harmony remote control is used to change activities.

oh ok, thank you. guess this remote is useless for me then. I thought it was way more than what it really is when i got it. i have a whole house of zwave and zigbee devices and almost nothing that the actual harmony supports..

The Harmony remotes work great when controlling a home theater system. You can also use them to control smart home devices via officially supported integrations. For example, my Lutron switches and dimmers have a direct integration with Harmony. This allows me to map those lights to the Harmony smart home buttons.

You can also use Activities changing states in Hubitat (using the integration in this thread) to trigger Hubitat Rules to control lighting. For example, start the “Watch a Movie” activity via your remote, and Hubitat could then automatically set your lighting however you desire.

1 Like

We have Rules setup in both SL and RM in our Theater Room (TR) with Harmony Hub (HH) that control different lighting scenes when switching to different devices using the Harmony remote. Like when watch cable TV, and the Over head and Stair lights are off but the Scones lights are set to 15%, or when watching a movie or playing a game and all the lights are set to off.

Each device has the same basic Rule setup....

Our Theater Room (TR) is in our basement, and when you open the door to go down into the basement/TR we have a contact sensor on the door to turn on the TR - Stair Lights, and Over Head Lights when the door is opened.
But when you are watching a movie or playing a game in the dark, you don't want all the lights to turn on when some one opens the door. So we setup Rules to keep those lights Off when the TR devices are in use.

So far everything has been working great!

3 Likes

Thanks for this app! Works great.

Question for you guys:
Is there a way to create a group device that is on when any activity is on and off when all activities are off. Also, when I turn it on, it only turns on one activity and when I turn it off, it only turns off one activity.

Detail:
I have about 8 activities in my Harmony remote. I'd like to have a device called "Livingroom TV" that would be "on" if any of those 8 activities is currently on. If none of the 8 is playing, then it'd be "off". Also, if it's off and I turn it on, I'd like it to only turn on the "Watch TV" activity instead of all 8 activities (which of course would be chaotic). If on and I turn it off, then I'd like it to turn off the "Watch TV" activity (which is the same as turning off any activity).

Summary:
"On" state: Any of the activities is on
"Off" state: All the activities are off
Press "on": Activate "Watch TV"
Press "off": Turn off "Watch TV"

Thanks

Built-in to this integration is a device called “PowerOff” which basically does most of what you want. If any other activity is on, this device will be off. If you turn on the PowerOff switch device, it will turn off any active activity.

So, not exactly what you’re asking for, but it’s close. The on/off logic is reversed, as this device is designed to indicate if the power is off. You could create a virtual switch device and use Rule Machine to invert the values if necessary.

Thanks. Was aware of it but I don't think it has the ability to be turned off (my hub receives a command when I turn it off but no idea what it's doing).

Turning off the PowerOff device does nothing. Instead, you need to simply turn on the desired activity.

I have a projector that does not have input control available when defining an activity but it is available via the app device virtual remote.

For this - and other purposes, is there anyway to have hubitat send discrete commands or is it limited to harmony activities?