Link Zigbee Entities request

Hi everyone,
I’m using Home Assistant with Zigbee2MQTT running in Docker, and I have several Zigbee lights that I want to keep perfectly synchronized. In my bedroom for example, the same light should be controllable from multiple switches/points: one near the bed, one near the door, and another near the window.

So far I haven’t found a solution that is 100% reliable, without delays, desyncs, or on/off loops.

What I’ve tried

  • Home Assistant automations / blueprints, such as “Link On/Off State of Multiple Devices”. It works but sometimes introduces loops or small delays.
  • Node-RED, with a custom flow where I:
    • listen to MQTT messages from multiple Zigbee2MQTT devices (e.g. Luci_Camera, Luci_Comodino_Fabio, Luci_Comodino_Laura)
    • detect which endpoint changed (state_left, state_center, state_right)
    • forward the new state to the other devices
    • use a small in-memory TTL cache to prevent immediate loops

This works almost well, but still not reliable enough — sometimes a loop happens, sometimes a switch doesn’t update the others fast enough, etc.

Limitations of my devices

The Tuya TS0003-style switches I’m using do not expose the standard GenOnOff (0x0006) cluster, so I cannot bind them directly.
This rules out the cleanest solution (Zigbee binding), which is why I’m trying software-based alternatives.

My question

Is there a proven, stable way to keep multiple Zigbee lights (from multiple endpoints/devices) fully synchronized when using Zigbee2MQTT?

Thanks

There is progress here GitHub - romasku/tuya-zigbee-switch: Feature-rich custom firmware for Telink-based Tuya Zigbee switches and switch-modules.

Eventually, it would allow for custom bindings…but it is not fully there yet :grin:

I did notice some TS0003 models in there though

1 Like

thanks! i’ll have a look