I’m trying to understand more about how my Zigbee mesh works, and from what I’ve read, RSSI and LQI are some of the indicators you can use to assess the strength/quality of a Zigbee mesh. My understanding of the terms RSSI and LQI, as they relate to Zigbee, is that RSSI is an indicator of the raw signal strength between two nodes of the mesh and that LQI indicates how well useful data can be transmitted across the link. Further, LQI can be used to indicate the quality of data transfer across multiple hops in the mesh, not just point to point. If I have any of that wrong, please correct and I can edit this post…
That said, I see that the ZHA integration and zha_map
both provide RSSI and LQI values for each device. I’d like to understand more details…
-
When ZHA reports an RSSI value for an endpoint device, is that the RSSI measurement between that endpoint and its parent?
-
What about for LQI?
-
When ZHA reports an RSSI value for a router device, what is that? Since routers can have many connections in the mesh, is that the best RSSI for all the links that router has?
-
What about for LQI?
One thing I don’t currently understand is that when I look at the zha-network-card
data in HA, I see different LQI in zha-network-card
than what’s reported by zha_map
.
In zha_map
, almost all of the endpoint links are green and many of the inter-router links are green:
I wrote a script that processes the neighbors files generated by zha_map
and makes a table of the LQI values for all the (40) endpoints, and typically they’re 255 or very close. Thus, the green lines in zha_map
are consistent with the values in the neighbors files, as expected. I see no significant difference in examinig zha_map
data from the automatic runs vs. manually running via a service call.
However, when I look at the zha-network-card
, I usually see different values. I have about 85 devices, with 40 of them being routers. I typically see ~25% of them have reported LQI values of 255, ~50% with LQI values between 175 and 255, and the remaining ~25% having LQI values between 75 and 175.
What’s up with the difference in LQI values?
Some of my devices are occasionally unresponsive (e.g. light won’t turn on/off) or partially responsive (light turns on, but doesn’t change color/temp without a second service call). Further, sometimes, I get inconsistent behavior within a group of devices - e.g. I send a turn on to 333 mired command to the group of 4 bulbs in a fixture (8" from each other) with an initial state of off, and the result sometimes is that some are on and at their previous color temperature, and some are on with the specified (333) color temperature.
In addition to trying to understand Zigbee in generall better, I’m trying to figure out whether the lower LQI values reported in zha-network-card
are likely related. I suspect most of these questions are unrelated to the specific Zigbee hardware one is using, but I can provide more detail if that’s helpful.