[Release] Logitech Harmony Hub Driver v0.1.20230311

Any idea how I can fix this?

I REALLY don't want to make an all new device instance because I switched my hub. Too many webcore pistons and such.

" 2022-12-08 02:31:03.228 AMwarnfailure message from web socket failure: Expected HTTP 101 response but was '401 Wrong hubId'"

Fixed:

state.remove("remoteId")

Don't need any state variables... just rule machine. A virtual switch.

I.use alexa but google should also work on anything that toggles that virtual switch.


All,

I have just released a new version of the Logitech Harmony Hub integration, v0.1.20221230. The main change is that the Parent driver now uses Hubitat's built-in Generic Component Switch driver (instead of my custom HubDuino Child Switch driver). This has the advantage of being usable with Hubitat's new HomeKit integration.

Please be forewarned that this is a BREAKING CHANGE. if you simply update your Parent Driver code, you will end up with a bunch of duplicated child devices, 2 per Activity. The old ones will no longer function properly. They can be REMOVED one at a time, after you replace them in any Apps that you may have used them in.

WARNING - v0.1.20221230 is a BREAKING code change. DO NOT UPGRADE to this new version unless you are willing to spend the time to start anew with your Hamony Hub integration with Hubitat. This new version now uses Hubitat's built-in Generic Component Switch driver, which has the benefit of allowing the Child Activitiy Switch devices to show up in the new Hubitat HomeKit integration.

For the daring, feedback is always welcome!

There is no requirement to upgrade to this version, as it is functionally identical to the previous version. However, all future enhancements will be based on this new codebase.

2 Likes

I have fully swapped mine out now to the new release. I renamed all the previous child devices with "OLD" so they would be easier to see after the change. After the switch over I also deleted the child device driver and all the "OLD" child devices. So far so good. Thank You!! Great work!! :slight_smile:

2 Likes

Great suggestion @eric22 !

@ogiewon setting the rooms for the child switches was as much work as updating rules that used the old devices. Can the default be to inherit the room of the parent device?

Thanks.

Jeff

1 Like

I do not know of any way to pre-configure the 'room' of the devices.

I updated to the new driver and swapped everything over. I renamed all of the children with "old" first, so all of the rule updating, etc, didn't take as long as I had feared. I also added most of the child devices plus the "power off" device to the HomeKit integration, and they all appear to be working fine. I've removed the old hub and all of its children.

So far, so good.

1 Like

Just updated the driver, but I'm not seeing the duplication. Do I need to do something to the devices themselves to prompt?

You may already know it’s… I don’t use the room view much in Hubitat, but if you go into the room view, click on the room itself, you have a drop-down there to select devices for the room. May be a quicker way for you to do it en masse.

1 Like

@brad I should have remembered that! I'm sure that's what I used when I initially put everything in rooms.

Thanks.

Jeff

@ogiewon is this in HPM? I was not able to find it?

Worked out well if that is the case,,,, i.e. the breaking change.... As much as I would like this in HPM, given Logitech's committment to the platform, can understand the reduced commitment to the LG platform.

No, it is not in HPM. And as @sburke781 mentioned above, breaking changes like this one are part of my reasoning for not adding my code to HPM. Had it been in HPM, everyone would simply upgrade and then be upset when their Harmony Hub integrations broke.

With this latest update, it is simply one driver to manually install. Takes literally about 30 seconds to complete the code update by clicking the IMPORT button in the custom driver code editor, and then clicking save. The work to re-do one's automations is where the real time is spent, and only if the user wants to expose the child 'activity' switch devices to HomeKit, using Hubitat's built-in HK integration.

4 Likes

I saw the fields for the Home Control and Light Control in the preferences and got excited that I might be able to get some info in Node Red to make those button pushes do something. THEN, I read the details from your post. Oh well..... haha

1 Like

You’ll need to open the Logitech Harmony Hub Parent device and then slick Save Preference before the new child devices will populate.

1 Like

All,

I just released v0.1.20221231 which includes a very minor tweak to how requests are handled to stop a running Activity (or running the 'PowerOff' activity.) The code will now check to see if there is an Activity already running, and only if true will it stop the Activity. This will prevent running the "PowerOff" Activity if all Activities are already off. I noticed that doing so actually caused the Harmony Hub to turn some things back on.

3 Likes

I am setting up this up on my Hubitat for the very first time. I followed all the steps that went perfect right up to entering my Harmony IP. After I hit save, I do not see any child devices such as "Apple TV" "Blue Ray", etc. When I look at my logs, I have the following (see image). Is there something I need to do with line 417 of the parent code?

@ogiewon - Here is line 417 of the code for reference.

In the HUbitat Hub's Settings-> Network Setup page, you'll find a link at the top for Network Utilities.

See if you can ping the Harmony Hub's IP address from the Hubitat Hub. Are they both on the same VLAN? Are you sure your Harmony Hub is at 192.168.1.32?

One more thing to check... What version of firmware is running on your Harmony Hub? Make sure it is up to date.