I’m back to looking for ways to use Home Control on my Harmony Remote, continuing this previous discussion. The Emulated Hue approach on HA works for a while but then stops working at some point. It hasn’t proved reliable and I am fed up with it.
@user834 has the emulated hue approach been reliable for you?
Otherwise, Anyone successfully using Lutron or Insteon to get home control commands back to Hubitat? @ogiewon any other ideas?
I simply use the Logitech Harmony Hub native integration with my Lutron Caseta and Philips Hue bridges. That gives me all of the control I need to use those Harmony Home Control buttons for.
The only option that I recall was using SmartThings virtual devices, and the Logitech to SmartThings native integration to map the Harmony Home Control buttons to the ST virtual dimmers. Then, using my Harmony Hub integration, uncomment some debug lines to "sniff" the incoming dimmer and take note of the data specifically for each button press and hold. Enter that data into the Harmony Hub parent device's settings, and you now have the Harmony hub acting as a button device. Not sure if this still works or not, as it has been a while since anyone asked about it. Details for doing this are in my Harmony Hub thread.
Since you have been using Emulated Hue with Home assistant, you may simply be able to do the Sniffing portion, and enter the data. This would avoid the need to use SmartThings. I am guessing as long as the Harmony hub has something mapped to the Home Control Buttons, that this technique will work.
Hm. I tried re-doing the local integration trick with Smarthings, and Smarthings and Harmony don't seem to get along anymore. Harmony won't see any ST devices anymore, so I can't map any buttons to a ST device. I tried using a (real, non-emulated) Hue device, but that doesn't produce the same sort of ID that the smarthings device did:
Unhandled data from Harmony Hub. json = {"type":"automation.state?notify","data":{"hue-00:XX:88:XX:02:8b:c8:97-0b":{"color":{"mode":"ct","xy":{"y":0.3952,"x":0.4128},"temp":296,"hueSat":{"hue":9132,"sat":66}},"brightness":254,"on":false,"status":0}}}
If ST doesn't work anymore with Harmony, does that mean the home control workaround isn't possible anymore?
Oh, interesting. I would definitely do that if you think it will work. To be clear, the emulated Hieu approach was not reliable for me. The Hue data here corresponds to real physical Hue devices that I do not actually want to control with the remote. I just mapped them to the home activity buttons in an attempt to get an id of sort for use Instead of the SmartThings ID. But, because these correspond to real physical devices that I do not want to control, because I do not want them to be turning on and off with these home control buttons, will this still work?
I assume not, because I will need to un map the physical devices at some point, right? And when unmapped would I still be able to use this ID to detect presses of certain buttons?
You're going to need to experiment a little to see what does and does not work. Others discovered the ST workaround. I am just guessing that a similar workaround might be possible using a different system. I would suggest using the Emulated Hue on HA to get the buttons mapped. Then try to sniff the data from the buttons, to see if something still shows up in the Hubitat Harmony parent device. Then, turn off/unplug your Home Assistant hub. Press the buttons on the harmony remote - does the Harmony Hub parent device still 'see' the button presses? If yes, then you're all set - just modify the Harmony Parent driver to handle those "Unhandled data from Harmony Hub. json" and turn them into button device events. If not, then you may be SOL.
Ok I got it working using the emulated hue "id" instead of the smart things id (since that's no longer possible). The only thing needed in the code to get that to work was to adjust line 239 to not require status = 1. I'm not sure what that status check was supposed to do, but I don't ever get status = 1. I get status = 0 when HA is running and status = 2 when HA isn't running. So, unless status = 1 is doing something important, a universal solution may be to just change line 239 as follows:
original:
else if ((json?.type == "automation.state?notify") && (description.contains('"status":1'))) {
new:
else if (json?.type == "automation.state?notify") {
When HA is up and running, this works great. Super quick. But when HA is off, there's a large delay on the order of 4-5 seconds. Wonder if there's anything that could be done about that...
Well, the same thing is happening as before, where Logitech Harmony appears to lose the association between the home control buttons and the devices. Once you go into the Harmony app on your phone and go to check on the button mapping, it starts working again, even if you don't make any changes. Don't suppose anyone has mentioned that sort of problem before and found a solution?
Your report is the first of this behavior. My home control buttons have continued to work using Philips Hue and Lutron Caseta direct integrations. I know the days are numbered, as eventually Logitech will shut their servers down. I just hope enough Logitech employees are using the Harmony hub that they keep it alive for many more years to come!
@ogiewon Have you been affected by the Logitech<-->Lutron integration outage these past few months? Just wondering if you have found a work-around yet. I got a little functionality back by using your Hubitat driver to detect the "active activity" and thus control the theater lights from a Hubitat routine, but it's obviously less functional than just directly controlling the lights using the Home Control buttons.