3/4-way Red Switch doesn't show correct state in HA, but does on the device

So I’ve have a few 3 way and 4 way switches that I setup a few years ago. For the most part, things are working correctly:

  • When I click on one switch, the state is reflected across the other physical devices (the light on the switch turns on or off)
  • Clicking on any switch correctly turns the light on/off

Needless to say, my wife is happy because things just work :slight_smile:

That being said, today I noticed that HA doesn’t show the correct state for all the other switches. I noticed this because I have an “all lights off” script that polls for any light that is on, and it doesn’t include these switches (hence they stay one).

So I’m not sure what’s going on, or honestly how to debug, and curious if this group has any ideas.

For what it’s worth, this is the node red script I’m using to turn all lights off on a triple click (it works for all lights except the 3/4-way switches)

[{"id":"b88860e25be046b0","type":"tab","label":"All Lights Off","disabled":false,"info":"","env":[]},{"id":"94a88fb7ee98feec","type":"inject","z":"b88860e25be046b0","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":460,"y":580,"wires":[[]]},{"id":"3d5d1d1aed13ec8c","type":"ha-get-entities","z":"b88860e25be046b0","name":"get lights that are on","server":"7114fde5.02aa54","version":0,"rules":[{"property":"entity_id","logic":"starts_with","value":"light.","valueType":"str"},{"property":"state","logic":"is","value":"on","valueType":"str"}],"output_type":"array","output_empty_results":false,"output_location_type":"msg","output_location":"payload","output_results_count":1,"x":320,"y":160,"wires":[["098f15ac1853c245","24773876dc609804"]]},{"id":"098f15ac1853c245","type":"api-call-service","z":"b88860e25be046b0","name":"turn lights off","server":"7114fde5.02aa54","version":5,"debugenabled":false,"domain":"light","service":"turn_off","areaId":[],"deviceId":[],"entityId":[],"data":"{\"entity_id\": $join(payload.entity_id, \",\")}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":510,"y":220,"wires":[[]]},{"id":"9b4f15e000925d96","type":"server-events","z":"b88860e25be046b0","name":"all lights triple click down (except theater closet)","server":"7114fde5.02aa54","version":2,"eventType":"zwave_js_value_notification","exposeToHomeAssistant":false,"eventData":"{\"value\":\"KeyPressed3x\",\"property_key\":\"001\"}","haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"waitForRunning":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"$outputData(\"eventData\").event_type","valueType":"jsonata"}],"event_type":"","x":180,"y":240,"wires":[["92f92829d5c1d782","3d5d1d1aed13ec8c"]]},{"id":"92f92829d5c1d782","type":"ha-get-entities","z":"b88860e25be046b0","name":"get fans that are on","server":"7114fde5.02aa54","version":0,"rules":[{"property":"entity_id","logic":"starts_with","value":"fan.","valueType":"str"},{"property":"state","logic":"is","value":"on","valueType":"str"}],"output_type":"array","output_empty_results":false,"output_location_type":"msg","output_location":"payload","output_results_count":1,"x":310,"y":320,"wires":[["4a67b2a4b7c68799"]]},{"id":"4a67b2a4b7c68799","type":"api-call-service","z":"b88860e25be046b0","name":"turn fans off","server":"7114fde5.02aa54","version":5,"debugenabled":false,"domain":"fan","service":"turn_off","areaId":[],"deviceId":[],"entityId":[],"data":"{\"entity_id\": $join(payload.entity_id, \",\")}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":510,"y":280,"wires":[[]]},{"id":"24773876dc609804","type":"debug","z":"b88860e25be046b0","name":"debug 1","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":400,"y":480,"wires":[]},{"id":"7114fde5.02aa54","type":"server","name":"Home Assistant","addon":true}]

Based on the thread and your flow I assume this is a “virtual 3 way” that’s setup through association?

The first thing that comes to mind is this setting.

But where I have my doubts is if the state of the light is staying as on after the main switch receives the off command. Those switches that are staying on should be picked up by the node red flow.

To clarify, the physical switches all operate and maintain state correctly…it’s just what shows up in HA.

And yes, these are virtual. I took a look at one 3-way set and I don’t see that particular setting…is that parameter 4? For me, thats “Association Behavior” and is set to 11