I have many Xiaomi devices connected to my hub including smoke alarms, water leak sensors, vibration sensors and motion sensors. But the problem is I have a small amount of devices left that seem to pair but will only stay connected for no longer than 5 minutes. I have tried disconnecting and re adding but with no success, the hub is connected directly to the router. I am out of ideas on what can be causing the fault so any suggestions would be awesome.
Xiaomi devices have a propritary Zigbee profile, its not Zigbee HA compliant. One of the things the Xiaomi doesn’t abide by is the standard ZHA “end aging” parameter. Basically, its a keep-alive checkin. If a devices doesn’t check in after so long, its kicked from the zigbee mesh. A while back, SmartThings implemented a firmware change to their hub that allows for extra time on the end aging, but other Zigbee HA devices do not have the same firmware.
In other words, if your Xiaomi device uses the ST hub as its parent node, you should be fine. But if your Xiaomi device uses another device as its parent node, like a zigbee outlet or bulb… you’re probably going to run into problems with it.
A couple work arounds… the first is to pair the xiaomi device right next to the hub to make sure it grabs the hub as its parent node. Then move it to its permanent location and hope it can still “see” the hub (if it can’t, it’ll abandon it and grab a new stronger node, and you back in the same boat. The second option is to put a repeater in place that are known to better support the longer end-aging parameter. The two I’m aware of are Peanut outlets and Ikea outlets. By sticking them in between your hub and the Xiaomi device, you should get more reliable functionality out of them.
In any regard however, you still need to be aware that Xiaomi devices are not Zigbee HA compliant like the ST hub expects. So even if you do get them working relyably like many have, you should still expect to have problems from time to time.
If/when you do have problems and lose them in the future, I suggest you search this site for the “CATCH ALL” method of pairing them. Using this method, you won’t have to unpair and repair them. You simply scan your hub logs to find the devices Zigbee ID. You can then take that Zigbee ID and manually modify it for the device in the IDE and it should come right back online without having to redo all of your automations.
Thank you so much for this information! I will keep you updated with my progress and start by adding an ikea plug to act as a repeater. The information you provided me was some of the best i have read regarding connectivity issues hopefully more people will be able to see what you have written. And will help them with a similar faults.
Michael covered everything very well, but I just wanted to caution you regarding the catchall pairing method. While using the Zigbee ID is a great way to re-pair previously paired devices without losing all routines/rules/etc attached to them, I wouldn’t recommend using the catchall method for initial pairing. Using this method for the initial pairing can occasionally create long term connectivity issues, so for initial pairing I always try to pair using the normal scan for devices method, even though it sometimes takes a bit longer with Xiaomi/Aqara devices.
And just to clarify, adding a compatible repeater near the Xiaomi devices that are dropping may not solve the issue if there are still incompatible repeaters on the network. If you’re going to be using Xiaomi/Aqara devices and don’t want them dropping off, then you should commit to avoiding incompatible zigbee bulbs/sockets on your network.