Zigbee Child and Route Info Table Help / Explanation

I was recently directed to the Zigbee Child and Routing Info table at the link below. Seems like this would help me troubleshoot some weird intermittent problems I have been having with my Zigbee network but I am not entirely sure what I am looking at.

This is a spill of what I am getting from the http://HUB_IP_ADDRESS/hub/zigbee/getChildAndRouteInfo link.

Parent child parameters
EzspGetParentChildParametersResponse [childCount=17, parentEui64=0000000000000000, parentNodeId=65535]

Child Data
child:[Blue Room Exterior Sliding Door, 6C19, type:EMBER_SLEEPY_END_DEVICE]
child:[Living Room Motion Sensor, CAD0, type:EMBER_SLEEPY_END_DEVICE]
child:[Master Bedroom Motion Sensor, D9A3, type:EMBER_SLEEPY_END_DEVICE]
child:[Logan's Bedroom Motion Sensor, 462D, type:EMBER_SLEEPY_END_DEVICE]
child:[Garage Motion Sensor, 9F67, type:EMBER_SLEEPY_END_DEVICE]
child:[Foyer Motion Sensor, 0131, type:EMBER_SLEEPY_END_DEVICE]
child:[Basement Hall Motion Sensor, 84FA, type:EMBER_SLEEPY_END_DEVICE]
child:[Guest Bedroom Motion Sensor, 20FD, type:EMBER_SLEEPY_END_DEVICE]
child:[Blue Room Motion Sensor, D802, type:EMBER_SLEEPY_END_DEVICE]
child:[Sunroom Motion Sensor, 3309, type:EMBER_SLEEPY_END_DEVICE]
child:[Basement Stairs Motion Sensor, 1404, type:EMBER_SLEEPY_END_DEVICE]
child:[Master Bedroom Door, DDE7, type:EMBER_SLEEPY_END_DEVICE]
child:[Dining Room Motion Sensor, 45EA, type:EMBER_SLEEPY_END_DEVICE]
child:[Outside Porch Door Motion Sensor, 5574, type:EMBER_SLEEPY_END_DEVICE]
child:[eBay Room Motion Sensor, 5317, type:EMBER_SLEEPY_END_DEVICE]
child:[Office Motion Sensor, 40B0, type:EMBER_SLEEPY_END_DEVICE]
child:[Logan's Bathroom Door, 7D82, type:EMBER_SLEEPY_END_DEVICE]

Neighbor Table Entry
[Tool Room Work Bench Light, 0E59], LQI:254, age:4, inCost:1, outCost:3
[Blue Room Wax Warmer, 2A83], LQI:254, age:4, inCost:1, outCost:1
[Garage Air Circulator, 330C], LQI:254, age:4, inCost:1, outCost:3
[Living Room Wax Warmer, 4C56], LQI:255, age:4, inCost:1, outCost:1
[eBay Room Desk Lighting, 5C12], LQI:254, age:4, inCost:1, outCost:1
[Kitchen Wax Warmer, 6B08], LQI:254, age:3, inCost:1, outCost:1
[eBay Room Remote Outlet, 6B84], LQI:255, age:4, inCost:1, outCost:5
[Basement End Table Lamps, 7A6E], LQI:255, age:3, inCost:1, outCost:1
[Sunroom Dimmer Outlet, 937C], LQI:255, age:4, inCost:1, outCost:1
[Basement Wax Warmer, AEF1], LQI:255, age:4, inCost:1, outCost:1
[Pool House Speaker System Power Switch, C840], LQI:82, age:6, inCost:7, outCost:0
[Master Bedroom Electric Heater, CF20], LQI:255, age:4, inCost:1, outCost:1
[Office Table Lamp, DD54], LQI:255, age:4, inCost:1, outCost:1
[Office Credenza Lamps, E7C5], LQI:254, age:4, inCost:1, outCost:3
[Basement Dehumidifier, ED04], LQI:255, age:4, inCost:1, outCost:3
[Blue Room Mantle Lights, FFF2], LQI:254, age:4, inCost:1, outCost:1

Route Table Entry
status:Active, age:64, routeRecordState:0, concentratorType:None, [Basement Motion Sensor South, 7F7B] via [Blue Room Wax Warmer, 2A83]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Blue Room Mantle Lights, FFF2] via [Blue Room Mantle Lights, FFF2]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Guest Bathroom Door, A2B6] via [Blue Room Mantle Lights, FFF2]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Tool Room Work Bench Light, 0E59] via [null, DD30]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Entry Keypad, E59F] via [Sunroom Dimmer Outlet, 937C]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Basement Motion Sensor North, F33A] via [Blue Room Mantle Lights, FFF2]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Tool Room Motion Detector, 7BA0] via [null, 3CF2]
status:In Discovery, age:0, routeRecordState:2, concentratorType:High Ram, [null, 0000] via [null, E780]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Pool House Speaker System Power Switch, C840] via [null, 6F5A]
status:Active, age:64, routeRecordState:0, concentratorType:None, [null, E67B] via [null, AA30]
status:Active, age:64, routeRecordState:0, concentratorType:None, [Basement Door, 6AC3] via [null, 8E37]
status:Unused
status:Unused
status:Unused
status:Unused
status:Unused

I am looking for some help filling in the gaps. Here is what I already know from searching existing forums.

  • LQI (Link Quality Indicator?) is really the most important metric and the 255 is perfect. Anything above 200 is considered good.

  • Age is the number of 16 second cycles that have passed since the device has checked in. After 64, the record is eligible to be purged from the routing table.

It seems that there is a lot of additional useful info here but is a bit of a mystery to me. Here are some of my questions.

  • What are incost & outcost. I am assuming these are path costs but I am looking for info on how they are determined and applied.

  • Why does this page show such a small subset of my devices? I have around 110 Zigbee devices on my network.

  • The device with the poor LQI is actually working just fine. If it is working fine, do I still need to take steps to increase the LQI?

  • Null records everywhere. I have a bunch of "null" records. These seem to pop up randomly in both the route table and occasionally in the neighbor table. I read in another thread that these are nodes that think they are supposed to be on the network because they were never properly removed/reset. That would make sense except my network is only a few months old and I don't have any devices floating around that would fit this description. Also, they seem to be constantly changing ID's. In my mind, these things are what is messing up my network but I have no idea what they are, where they are from, or how to get rid of them.

  • Loop Route? I see routes from time to time where a device is routing through itself. How is this possible? Is this causing problems?

  • Why are the numbers on this table different from the numbers on the Zigbee Logging page under the Zigbee settings? I have one node that has a relatively poor LQI on this table but shows a last hop LQI of 255 on the logging page.

  • Anything else that would help me understand what I seeing would be great!

3 Likes

This may help a little:

Still learning about this myself but a couple of observations:

  • The age number in the Neighbor Table (the list of current 'single hop' neighbors being used) is evaluated differently than the one used in the Route Table Entry list (I haven't cracked that nut yet; I don't think I've ever seen any age other than 64 in that list). You probably won't see an age >6 in for an active link in the neighbor table; and it always will get reset back to 3 once link status reports are regularly received for an entry that has made it to age 5 (you will see this happen on your network if you refresh your browser page periodically). The only links that would show age <3 would be newly established ones that are considered in a 'probationary' period for which link costs are being evaluated. It's worth keeping in mind that the neighbor table entries aren't static and are always being re-evaluated (only the best 16 neighbors are used for routing for the first hop no matter how many routers are in your network).

  • incost and outcost and LQI may be calculated differently depending on what vendor's stack is running on the device in question. From what I have gathered they are computed from factors that include signal quality, link errors, and retries at the MAC level. Ultimately their purpose is to enable selecting the 'best' path to take (with lower numbers being better quality links, except for the special case of cost=0 which means 'cost unknown' for a newly establishing link, or 'stale link' for one which is ageing out). As such they aren't perfect metrics and the lack of standardization in their computation is part of the 'sport' in getting multiple vendors Zigbee equipment to play together nicely.

  • You aren't seeing all your devices because you aren't seeing the network's complete routing table, only the 'first hop' to the devices that the hub is currently targeting. The end devices that are reporting back to your hub would presumably appear in route table entries of the other routers throughout your network.

  • The device with poor LQI (that is reporting a higher LQI on the Zigbee logging page) is likely going through a repeater, and it is that 'last hop' repeater's LQI and RSSI that is being reported.

Not sure about the nulls, but I think they are artifacts of failed rejoin attempts. There's data exchange that occurs when the short address gets assigned during a join (or rejoin) and a null results when that process hasn't completed, afaik.

Edit 7-4-22: changed 'poorer' to 'better ' to correct categorization of Link cost

3 Likes

Thank you both for the responses. Clears up a few of my questions. Now I just need to figure out these "null" devices. Going to put one in a new thread.

I was reviewing this document, and I can't find the log entries above in the document. I am specifically looking for the following in that document

More just a high level 101 def of what this is

Parent child parameters
Child Data
Neighbor Table Entry
Route Table Entry

Reviing an old thread.
Anyone know what the hop:Unknown relates too?
I get the first/last hop are identified and I may not be seeing the whole table but the 2 in the middle aren't even DNI's in my device list yet the list as ACTIVE.

dev:1462021-01-12 12:41:25.294 traceroute info- Destination:Guest Room Motion, Next Hop:Repeater Entrance, Status:Active

dev:1462021-01-12 12:41:25.290 traceroute info- Destination:Unknown:6C87, Next Hop:Unknown:1334, Status:Active

dev:1462021-01-12 12:41:25.287 traceroute info- Destination:Unknown:7ABE, Next Hop:Unknown:1334, Status:Active

dev:1462021-01-12 12:41:25.283 traceroute info- Destination:Kitchen Nook Light, Next Hop:Kitchen Sink Light, Status:Active