Rescan mesh for devices with no functional route

Occasionally, when I add or remove a device from the Zigbee mesh, the mesh reconfigures itself over the next day or two, and one of the devices gets lost, like a little duckling falling into the drain gate behind an oblivious mama duck. Usually when this happens I can get it back on the mesh by power cycling the device enough times to get it to give up on whatever node it thinks it’s connected through and go hunting for a new one. Some of my devices have annoying power bricks and that can be a bit of a pain to do.

This happened again today; one of my LED strips quit responding sometime between 8AM and about an hour ago. It didn’t show up on the getChildAndRoutInfo list at all, so it must have been at least 2 nodes out from the Hubitat. Rather than fuss with the giant power brick, I tried hitting it with commands on the mesh repeatedly, knowing that they’d never get to the endpoint, but hoping that whatever node thought it was repeating to the missing device would get the point and mark it failed.

Then, I rebooted my C7. Sure enough, when the C7 came back up, it rebuilt its neighbor table and the missing device was directly attached to it, and functioned normally again, no fussing with power bricks in tight spaces. Hooray!

My question is — is there any way to get it to perform that activity short of playing Marco Polo on the mesh and then power cycling? I would love to automate this quasi-Zigbee-repair, if I can.

This isn't normal, so you shouldn't have to do this -- whether manually or "automated." So, I'd really look for the cause rather than trying to find ways to work around it. But to directly answer the question, the only thing I can think of to do is put the devices in "panic mode" to make them try to find a new route to the hub by powering down your hub for 20-30 minutes or so. But again, this shouldn't be necessary (because Zigbee should self-heal, i.e., find new routes on its own; this mostly just speeds up that process).

Two things come to my mind, both involving what kind of router/"repeater" devices you have in your network. If you aren't familiar, most mains-powered devices in your network are repeaters, including most dimmers, switches, smart plugs, bulbs (except Sengled), and USB-powered devices like dedicated repeaters or the odd motion sensor (though most of these are battery powered and not repeaters).

Both the hub and each repeater have some limit on the number of "direct" children they can route for. For the hub, this is 32. For other repeaters, it's usually far less--maybe 4-8, depending on the device? There's no guarantee a device will use a router just because it's there, but basically, you'll need some Zigbee routers on your network for sure if you've over the 32-device count for the hub itself (though it's a good idea to have some regardless of how many devices you have) or over the limit for repeaters in range of your farther-away devices. (These limits refer only to devices that connect directly through that device rather than repeating through another device; adding repeaters extends the amount of devices you can have on your network indefinitely, which is why, for example, there is not really a 32-device limit for the hub in the real world.) Your LED strips are likely repeaters, but I'm wondering what else you might have in this mix.

The other reason repeaters matter: are any of them smart bulbs? Sengled bulbs are not repeaters, but most/all others are; unfortunately, many of these do a bad job at repeating (Cree, Hue, GE Link, and others are ones that have been singled out, but there are likely more), and they can cause problems like other devices "falling off" your network. The solution is to keep them on a separate network, whether it's another Hubitat, a Hue Bridge, or any way to keep them from being used as repeaters on the same network as non-bulb devices.

This document contains some other tips that may be helpful if you aren't already aware, though it sounds like you have a good idea for some Zigbee tricks already: How to Build a Solid Zigbee Mesh - Hubitat Documentation

5 Likes

Get more zigbee repeaters. Especially high-quality ones that can support 8-12 end-devices apiece.

For an 85 node zigbee mesh, I have 16 repeaters; i.e. 69 end-devices, for a ratio of 4.3 end-devices per repeater. This network has been rock steady, and has even gone the coordinator being unpowered for 2 weeks (after a Hurricane) without a single device falling off.

My favorite repeaters are the TuYa USB zigbee repeaters. They are small, work in any USB outlet, and can repeat for ~10 end-devices.

4 Likes

Appreciate the comprehensive reply!

Everything I’ve got is a repeater. No Cree, Hue, or GE bulbs. About 30 total endpoints, a mix of Sylvania (LEDvance) bulbs, Sylvania lightstrips, Sylvania outlets, and Jasco switches/dimmers. It’s only when I change the topology that I lose a device (and it is only ever a single device that gets lost); the mesh is rock solid otherwise. Once something falls off following another device getting added or removed, it never comes back on its own (I’ve let something stay “stuck” for several days).

Early Osram/Sylvannia/Lightify bulbs were on the "naughty list" I alluded to above, but I'm not sure about the bulbs they made when they used the LEDVance name. I can't keep track, so I might be wrong. :smiley: Also not saying these are the problem, and it seems less likely if your mesh is otherwise behaving well (Zigbee devices can change routes whenever they want, not just when you add/remove a device, so it's interesting that the problems coincide). But maybe something to consider.

3 Likes