Zigbee devices with poor LQI, not finding better routes that I am certain exist

Thanks for your answer!

1 Like

I considered a remote zigbee controller powered via POE but I opted against it as my controller can reach most devices directly from where it is, and having APs in most areas of the house, the interference is likely quite similar. I tried swapping antennas from lower gain to higher gain than the default one supplied with the Sonoff zigbee dongle. I found that the higher gain antenna (about 10dB) was causing an increased number of failures upon boot where ZHA would fail to start complaining it could not start due to too much noise. With the default antenna this happens less, and rarely if ever with the shorter 3dB or so gain antenna. The LQI is lower with the lower gain antenna and higher with the higher gain antenna but I don’t really see any obvious benefit. Right now I am using the lower gain antenna and it seems a bit more stable but keep in mind this is just based on my “perception” as I could not find any good way to test this reliably.

Going back to the remote zigbee controller, one other reason I did not go with it was that I did not want to add another point of failure. Every time I update/reboot my network could bring down the zigbee mesh rather than just when I reboot HA. Either way I see the value for some applications.

I think having it run separately is actually more reliable. I restart HA often to deal with HACS updates, etc…, and I like the ability to not have to update zigbee just because I am updating HA and vice versa. So when HA restarts, zigbee2mqtt running separately means the zigbee network mesh is totally unaffected.

The number of Pi restarts is far fewer than HA restarts for me, but your mileage may vary.

What channel number are you using for Zigbee? I use channel 25, which is up at the far end of channel 11. I also don’t run 2.4 Ghz on all my AP’s. I have quite a few AP’s, and I found it better from an interference POV to limit the number of 2.4 Ghz AP’s and power levels. The only devices that can’t talk to 5 GHz are IOT ones, and they connect to an IOT only SSID that has a lot of settings to optimize roaming and throughput off. I care about reliability and lack of interference much more so on 2.4 Ghz than 5 Ghz, which is what all the high speed devices use.

1 Like

I use ZHA and I believe it prefers channel 15 so I am guessing it is on that. I was never able to confirm it though. I have 5 APs and the 2.4GHz band is low on power and channel width so as to reduce interference. With 5 APs I am using all 3 of the relevant 2.4GHz ISM band channels so there is no escaping wifi… All high performance devices are on 5GHz, so not much uses the regular 2.4GHz SSID, if anything. All my IoT stuff is on an IoT specific SSID with settings, like in your setup, tailored for finicky IoT devices.

I have considered moving to zigbee2MQTT but I definitely do not want to add MQTT layer. I use zwavejs2mqtt but there I can turn it off and go through the websocket. Hopefully, some day, zigbee2mqtt will allow the same.

Take a look here: ZigBee and Wi-Fi Coexistence | MetaGeek Ch 15 gets hit from both 1 and 6, whereas 25 only gets hit from wifi 11. 15 is Not a good channel from a co-existence POV. Ch 26 pushes you even further away, but as the article says, some older devices have issues. If you try changing from 15, you may want to try 26.

The MQTT operation is very transparent with zigbee2mqtt. Look at any of setup videos for HA zigbee2mqtt, it’s really not an issue. But to each his own.

Good luck.

Have a read of this Should I change my Zigbee Channel - #6 by tom_l changing the wifi channel the nearest the coordinator fixed my issues.

@fresnoboy @Arh Ok, I will change the channel to 25 even though I have to repair all my devices as I am tired of all these issues. I am assuming I am on 15 as I can’t find a way (that works) to confirm that.

I added the zigpy_config YAML needed to change the channel to 25 but nothing happened. I was hoping it would change the channel and leave me with a network to be repaired, instead it seems like it just stayed on whatever channel it was on as everything seems to be working. What makes this really hard is that there are so many commands / systems / chipsets that it is like searching for the proverbial needle…

I am using ZHA, and a Sonoff dongle that is supported / serviced by zigpy. How to I go about changing channels to 25?

I am tempted to just swap out the coordinator since I have 2… that will do it :wink:

That’s weird. I can change channels easily the the zigbee2mqtt settings page. Sorry,. I don’t use ZHA so can’t help you there. Maybe someone else can chime in on that. I can’t understand why anyone would select 15 as the default. It’s obviously not as good as 25, so if ZHA is really doing that it should be fixed as 2.4 GHZ wifi is very common!

Some devices will not need repairs, they will scan when they no longer here the coordinator. So hopefully it will not be that hard for you.

I added the channel 25 instruction in my configuration YAML and I then wiped the NVRAM on the coordinator and reformed a network. This in theory was going to create a new network on channel 25 but after joining all the devices back I found out that my channel change was not saved… so it is most likely on channel 15, possibly where it was before.

I did an energy scan using

python -m zigpy_znp.tools.energy_scan /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus....

and it showed ch15 as the busiest but I wonder whether it was because of all the devices living on that channel. Ch25 was only at 5%…

I am guessing that once I move everything to ch25, that channel will be shown as the one having the highest energy… but at least I will know that prior to adding devices there, it was clear. I really can’t tell right now what the actual energy on ch15 is without disabling all the devices, right?

Here’s some info regarding ZHA and changing channels.

Changing the zigbee channel - Configuration / ZHA - Home Assistant Community (home-assistant.io)

Zigbee Home Automation - Home Assistant (home-assistant.io)

Zigbee Changing channel · zigpy/zigpy Wiki · GitHub

I too have been having lots of connectivity issues with my zigbee network. Was using zigbee2mqtt on channel 15 but that wasn’t solving the issue. Main router and AP were channel 1 and 6 so zigbee was smack dab in the middle Strange things is, out of the 29 devices I have it only affect the 6 light bulbs. Everything else is fine. Did switch to ZHA to see if that made a difference but nope. Moving the main router from channel 1 to channel 11 did help but still had some drops. This past Friday I deleted all devices and re-setup z2m using channel 20. Its been 6 days and so far so good. I hope I don’t regret not using channel 25 lol

2 Likes

@billyjoebob999 Thanks for the links. I referenced those pages too in my research and attempts but unfortunately I made a mistake (did not verify that the channel config was saved prior to reforming the network) and landed back on ch15 however something has changed as it appears to be working better than before… 42 devices have LQIs that are >100 and that is way more than before. I did upgrade firmware on my coordinator (latest development branch firmware as there are changes that help larger networks) so it is impossible to say whether reforming the network or the firmware are what helped. Likely both…

@aruffell Did you ever find a solution to the poor routing with the Sonoff coordinator? I think I’m experiencing the same thing. Devices will not route through routers, they drop off the network rather than route via routers that they have in direct line of sight.

@imagio - I moved my coordinator to using ch25 and things got much better. I then updated the coordinator to a newer beta firmware release which also appeared to help as more than double the devices now had a direct route to the coordinator. Before the update, I believe it was limited to 23 or so direct devices, last I checked I had over 40. I am guessing there will be a new release (non beta) relatively soon that you can find here:

Thanks for the tips! Unfortunately I’ve already done all of that and the problem persists.

Where did you find the beta version? The newest version I can find is CC2652R_coordinator_20220219.zip from 10 month ago.

@COUBOT - Back your stick up just in case… this is where you can find the beta release:

1 Like

Hi Tom, could you please share which application/integration did you use to get that picture with your zigbee link qualities? I’m looking for something similar to optimize my network and that would help.

Thanks a lot in advance.

Meanwhile, a long time later I reply…

It is indeed. It is all to do with SNR or Signal to Noise Ratio. If you whack up the gain, you whack up the noise the same amount. Better antenna and lower power is best. My Sonoff is actually mounted vertically, but upside down from a metal plate on the ceiling. Gives the whip a ground plane and a good signal.

I am currently using this antenna:

It has a better gain than the original Sonoff antenna but not as high as another omnidirectional antenna I tested. The actual reason I chose this one is not gain but lobe… it tends to have a higher gain in the direction it is pointing and a significantly lower gain in the opposite direction. Given my coordinator is in the non ideal side-of-the-house location, I figured it might help attenuate wifi interference (wifi ch9) from my neighbor (low gain side of antenna facing their house) and increase coverage in my house. While it is hard to say whether I achieved my goal, it does seem to help. Regardless, I still get high channel usage warning messages (never know if it is referring to traffic or rf usage) and relatively frequent devices having issues.