Bug in zwave ge addon switch with HA?

Tags: #<Tag:0x00007f3263c34988> #<Tag:0x00007f3263c34398> #<Tag:0x00007f3263c34258>

I have the ge z-wave 12722 and the addon switch 12723 in a 3 way wire solution.
The main switch works fine, on/off HA sees the state change.
The addon will turn the light on and off.
If you turn the light on with the addon switch, the main switch state does not update in HA (the led goes out and you here the main switch click)
If you turn the light off with the addon switch, the main switch state does not update in HA (the led comes on and you here the main switch click)

Would this be a bug in HA not picking up a code that is changing in the main switch? Granted the addon switch does not have a zwave radio in it.

Would it help to run the open zwave control panel and record pushing the aux switch?

I have some of these switches installed at home, but I don’t know that I’ve noticed this behavior. I’ll look this evening when I get home to see if I can reproduce your error. What z-wave hub are you using?

I can confirm that I get the same behavior. When manually changing the state of the light at the master switch it updates correctly in HA, but when using the slave switch it does not.

I just installed one of these over the weekend and noticed the same behavior this morning - I thought I was just crazy.

This would be helpful. It could be that the status doesn’t get transmitted when the switch is changed by the slave - that is to say, it could be an issue with the switch itself. See if OZWCP sees the change - if it does, it’s probably an unhandled issue in HASS. If not, there’s no way for HASS to even know that the switch changed.

Also - does the change eventually get picked up when the switch is polled? IE, not immediately reflected in HASS, but eventually.

I’m doing some more testing here - State changes from the new GE switches (one stand-alone, one three-way combo) I installed over the weekend are not being picked up automatically.

On OZWCP, they get picked up when I click “refresh” - I’m not sure if OZWCP updates automatically.

I just tested another GE stand-alone switch and HA saw the “On”, but hasn’t yet seen the “Off”. I have an Aeotec Smart Switch 6 and its states aren’t being triggered, either.

Hmmm…

Seeing instant notification is spotty in older or less-expensive switches. It used to be that there was a patent on instant notification, but it has recently (very recently) expired.

Clicking refresh in OZWCP is forcing a poll, the same thing that HASS does periodically, based on your polling_interval in the zwave platform.

Thanks for the info - My setup is less than two weeks old, so I’m still learning.

I had never setup polling_interval before now, so I just set it to 30 to see how things go. I can definitely confirm that I got instant notification from all of my zwave devices before this latest upgrade, but I can’t be sure when it stopped working.

30 is too low. From the docs:

polling_interval (Optional): The time period in milliseconds between polls of a nodes value. Be careful about using polling values below 30000 (30 seconds) as polling can flood the zwave network and cause problems.

I have mine at 6000.

Ha! I read that, processed it, knew I should put 30000, and I still put 30 like a dummy. :wink:

Fixed… let’s see what happens.

1 Like

TIL: Don’t click “Reset” in OZWCP.

3 Likes

The GE switches do not actually support instant updates. The reason you may see the state changes quickly is because the switch sends out a broadcast message when the switch is pressed. This message has no information about the state of the switch, but when received, OpenZwave will query it for its current state. Unfortunately, since it’s a broadcast message, your controller needs to be one hop away from the device to receive it. Also, press-and-hold actions do not result in this broadcast message. Furthermore, as was mentioned earlier in this thread, controlling the addon switch does absolutely nothing except phsyically change the state of the light. The controller will never see any action. The current GE switches sometimes look like they support instant updates, but they really don’t. It can sometimes work due to a work around built into OpenZwave. If you’re looking for switches that will report their state, make sure you specifically check for the ‘instant update’ feature (might be called something else). For example, the HomeSeer HS-WD100+ supports this feature (but it’s much more expensive).

1 Like

@sterling That’s helpful info, thank you! In hindsight, I might consider the HomeSeer switches for some of my lights just for the scene control, but the price difference isn’t worth it solely for instant update.

I’m thinking about replacing the basic switch that controls my fireplace, so I might grab a HomeSeer switch for that.

I’ve been wrestling with this issue for awhile now. The slave switch for whatever reason doesn’t cause the master to broadcast. Did anyone ever get this fixed? Even if I configure polling I can’t seem to get HA to reconcile state changes made through the slave switch.

This seems to work for me. I just turned down my kitchen light dimmer with one of the accessory switches and it did update in home assistant and in the iOS home app for that matter.

I’m having same issue. I’ve adjusted the polling_interval, but even after waiting 10 minutes, HA never refreshes the switch status. If I restart Home Assistant, the state is updated.

I would really like to know what others are doing to make this work.

Yeah, I’m seeing the same behavior. What really confuses me is why the state updates when HA restarts. Clearly it is capable of polling the device, it just refuses to do so under normal operation.

I got this working.

The Z-wave documentation on Home Assistant needs updating to make this more clear. The issue here is that “polling_interval” appears to do nothing unless you add the customize configuration under this. From there you need to add your GE switch and specify it’s “polling_intensity”.

If you look closely at the docs, it specifically says the device won’t be polled:

polling_intensity (Optional): Enables polling of a value and sets the frequency of polling (0=none, 1=every time through the list, 2=every other time, etc). If not specified then your device will not be polled.

I now have the following for my zwave configuration. When I use the addon switch, it updates in HA in about 60-90 seconds (even though I was thinking this would be around 30 seconds based on the config). It’s not perfect, but far from what it was before.

  usb_path: /dev/ttyACM0
  polling_interval: 30000
  customize:
    switch.hallway_light_switch_2_0:      
      polling_intensity: 1
3 Likes

I am also seeing good results with the same change that @swbradshaw made. It use to drive me nuts showing incorrectly but since this change I am now seeing the switches show correctly in the UI.

You just fixed my issue. I had the polling intensity set in my device customization under the homeassistant heading rather than in the zwave section. I’ve spent hours starting at this config wondering why it wasn’t working and it never dawned on me to check that. Many Thanks! @swbradshaw

1 Like