Some lights in z2m light group stop listening when quickly sending commands

I’m working on tweaking performance and have this annoyance I can’t seems to find root cause. Symptom is toggling on/off the zigbee group quickly. The lights respond instantaneously the first few toggles, then 1-2 lights stop listening for another toggle, then they all stop listening until I stop toggling for few seconds. After this wait, they respond instantaneously again. During the time the commands seem “clogged”, I can still send and receive other zigbee messages. i.e. I press buttons on a remote I have paired and see MQTT messages fly by.

I’ve messed with the following things that either had no effect or degraded performance somehow:

  • setup a home assistant group and toggled that instead
  • configured these various settings in z2m:
    • concurrency: 2, 16, 100
    • adapter delay: all the way up to 2000
    • QOS 0, 1, 2
    • retain settings on the lights
    • optimistic

I feel like I’ve tried all I know to try, so any suggestions?

My setup:

  • 4 Sylvania Ledvance color/white downlights in a zigbee2mqtt group
  • each component in a separate container, latest or stable version pulled today:
    • z2m
    • mosquitto
    • home assistant
  • Tube’s CC2652P2 ethernet coordinator, layer-2 adjacent on same switch as docker server
  • using channel 25, no other signals at this frequency. nearest 2 wifi are on channels 1 and 6. I live out in the country so 100% sure about no wifi on channel 11.

@tube0013 is it possible for me to get any kind of debug stream from the coordinator to help with narrowing down the bottleneck?

Not really. the best source would be z2m debug logging, though I won’t be much help there as I’m not well versed in it. It’s possible there is a bottleneck but it would be on the cc2652 not the serial link. the latest Dev FW may help, but I have not really tested it and only just follow the issues threads there to keep an eye on things. Folks using z2m seem to not be having any issues with it though.

I also use Tube’s CC2652P2 Ethernet Coordinator with Z2M and I’m also experiencing a similar issue. I’ve learnt to not issue too many back-to-back commands to not clog up whatever is being clogged up.

Previously, my wireless switches and lights intermittently do not respond when I press the switches to turn the lights on and off. I have since raised transmit_power to 20 and it seems better for now.

However, what still hits me, is when I call a service targeting an entire room (for example to turn off all the lights in my bedroom), followed immediately by another command (to turn on the bedside lamp). The next command (in this instance, the bedside lamp) might not respond immediately, if at all.

I read that zigbee groups can help, and I do use them, but I do not group for example the entire room’s lights into one group, as the state of each individual fixture that I still want to control, does not seem to get updated consistently after being toggled as part of a group, and vice versa.

I found this thread while googling, and I’m trying to raise adapter_concurrent to 100 to see if it helps.

EDIT: Thought to drop in to update, adapter_concurrent: 100 kinda works, until it doesn’t. I can send many commands at once, but once the commands are sent, it freezes up waiting for the replies. I believe with more commands being sent, the more replies it has to wait for. After sending a command to turn off all zigbee lights in my living room, the entire network freezes for almost 10 seconds before it would respond again.

I can’t work around the congestion no matter what knobs I fiddle with and slowing my button presses is not going to work because the wife won’t have it. I’ve decided to ditch HA for controlling lights and use AppDaemon to listen and talk directly through MQTT. I’m an adequate Python programmer so I’ll be able to write something to better control the throttle. Right now I’m at that stage of learning how AppDaemon works. wish me luck.

Hello, have you achieved any results on fighting the congestions? It seems I’m in the same boat.

Nope. I spent a couple days with Appdaemon and realized I didn’t have time to fool with it. So I bought 2 more of Tube’s coordinators and rebuild everything on 3 channels. The system is still not perfect but it is a LOT better. Congestion still happens, but recovery is much faster and predictable.

Thanks for the answer. Same to me - about to go with more coordinators.
Seems meshing is not production ready yet. I have a 80 devices in the network and it seems very laggy under the load.
I tried to setup dedicated routers on CC2652P with no luck - lags still occur. Some of them are up to couple minutes, which is unacceptable for the lights.