[RELEASE] Zigbee Map app

That escalated quickly

4 Likes

not really true as i see routes going between floors all the time.. need a 3d rotatable cube.. lol

3 Likes

That sounds reasonable as to the origin of the device IDs.

I always have three unknowns that show up in my map; per usual, none of their device IDs exist in Zigbee details.

Just to satisfy myself that there were indeed no such physical devices on my mesh, I ran an XCTU scan on my Xstick; after a half hour or so of multiple scans (your app is so much faster at discovery!) it found 70 devices, all of whose device IDs matched up with actual entries in Zigbee details.

The app finds 73 which accounts for the 3 unknowns... And those unknowns in all three cases curiously showed links to Zigbee bulbs. Usually XCTU can display each router device's internal table entries (these bulbs are indeed routers) but curiously again for these Zigbee bulbs all of the internal entries display as zeros (the bulbs themselves have always worked fine). Maybe a quirk in their firmware causes this.

If those devices weren't such a pain to reset and pair, I would remove and re add them just to see if the unknown device IDs go away (neighbor and child entries are stored in non-volatile memory so I'm not surprised at just rebooting them by removing and re-adding power to them didn't change anything).

Just speculating since I don't know, but it does seem reasonable that an old device ID could occupy an entry in a device's table that hasn't been overwritten or purged, though evidently it must be internally marked as unused-- maybe in the same way that route table entries get marked unused when they contain null/unknown devices.

Maybe when the app tries to associate that device ID with a label (from the database) "unknown" gets returned from the query...

I'd be happy with an option to suppress unknowns from being drawn on the map; especially if that is easier than actually figuring out how to eliminate them. It's clear they don't exist physically and fortunately
Zigbee doesn't suffer from the ghost issue that Z-Wave does so they add no value for troubleshooting.

4 Likes

I removed two Zigbee plugs from C8 hub and added to my Hue Bridge...
Since then, I now have two "unknown" devices in addition to the one that was there from last couple of days!

EDIT: managed to get rid of the two unknown devices by removing the zigbee router (Computer Innr SP242) reporting these two devices, then re-paired the device.
Physically switching the plug off did not work.

5 Likes

Here is mine. Notice the lone non-repeater connected to the hub. It is about as far away from the hub as it can get. It has to go through a cabinet door, brick wall, cabinetry including a refrigerator rather than take route through the Kitchen repeater. I suppose I could reset and re-add it, but why bother? BECAUSE IT BUGS ME. But I won't. At least not yet.....

Summary

1 Like

Thanks, although unplugging the reporting device for a while and putting it back in didn't clear it.

2 Likes
4 Likes

~! HOLLY WOW !~
Thanks for making this ! What a great app !
Amazing - Great - Cool - Works !
I am Getting ONE Unknown .. And I do not even care ! LOL

This seemed to work for me, but now the count is off. It is showing found 28 of 29 devices, but the map is actually showing all 29 devices.

In this case, the 29th "device" is your hub --it also strikes me as odd to have it say "28/29" here instead of 28/28, but I suppose there must be a reason for it.

I myself don't think of my hub as a device in the context of this app, but maybe I'm an oddball in that respect :man_shrugging:

1 Like

Thanks for the reply. If it considers the Hub a device, it should say 29/29. If not, it should say 28/28. Any way you look at it, it found everything - not 28 out of 29.

Mine says 23 of 22 I do have 22 devices and one hub .. so I am guessing it counts the hub :wink:

The “unknown” is 23. Or perhaps 22&23 since you have 2 unknowns. It looks like your unknowns are/were repeaters.

@dandanache , any idea why the app thinks one of my Iris V2 motion sensors is a repeater? Should I just rejoin it or ignore it? It seems to work fine, but of course it fails the interview every time.
EDIT: Nevermind; it had stopped reporting. Apparently the battery needed replaced (reading 63%) and after replacing it, it shows up as an end device.

I've noticed this as well; a Zigbee router's child & binding tables (though not neighbor tables as I had previously assumed) are nonvolatile and won't be cleared by just rebooting a device by cycling power. How are different tables managed in EmberZNet?

It's still a mystery to me why old child device IDs wouldn't be recognized as such by the interview process but instead get lumped in with active devices...

3 Likes

This is strange, 1 unknown device connected to my 4 tuya thermostats (same products), not my repeaters. I checked all other devices, there are all there in the "known" list, any thoughts?

In the zigbee graph the device is not there

This is exactly what is happening.

The application starts by fetching the list of Zigbee devices from the following URL: https://hubitat.local/hub/zigbee/getChildAndRouteInfoJson. This list can be viewed in the Devices tab.

The number of devices in this list is shown as y in the status line that reads Discovered devices: x / y.

devices

Next, the application retrieves the Neighbors Table for each device and updates the graph accordingly. The Neighbors Table only contains the Zigbee ID (short address) of each device, not its name. Therefore, the application attempts to match the Zigbee ID with the name of a device in the list. If the match is successful, the device name is displayed on the graph. If the match fails, the device is marked with a different color and labeled as “Unknown”.

The status line also shows the number of nodes on the graph, excluding the Hub (-1), as x. This number may be different from y if some devices are not reachable (not present in any Neighbors Table) or some "Unknown" devices are found.

That's a reasonable request and will be included in the next version.

I like your energy!

To find the "missing" devices, look at the Devices tab, as they are marked with a red icon (:no_entry:). Found devices, that have a corresponding graph node, have an "eye" icon (:eye:) that you can click in order to center and zoom the graph on it (it is more usable on large screen where you can see side-by-side the devices list and the graph).

The app also counts the "Unknown" devices in the first number, that's why it is bigger than the total devices.

It is not the fault of the end-device (the motion sensor), the app does not talk to it by default. You can tell if a device was "interviewed" if it has a dot inside the node. You can see in the picture below that end-devices (in green) were not interviewed, so they are not at fault since data did not come from them.

Note: You can force the app to interview the green nodes, by right-clicking on them (make sure they are awake if you do this, otherwise they will timeout and will be marked as "failed").

dots

The app thinks that the Iris V2 motion sensors is a repeater because the Zigbee router/repeater that acts as their parent wrongly reported them as "repeater". Dunno why this happens, I'll also check maybe it is an error in my code.

All 4 tuya thermostats reported that they have a neighbor (a device in their radio range that they like to talk to) with the address of the "Unknown" device. Since it was reported by more than 1 router, I assume it was a mains-powered device (battery-powered devices usually latch onto a single node, its parent). Did you remove or re-paired a mains-powered Zigbee device recently?

4 Likes

The Devices tab had 29 devices (including the Hub). None were red. The map showed the same 29 devices (including the Hub). I checked that each of the 29 devices that were listed on the devices tab were in fact shown on the Map - all the same. The Map said it found 28/29. This is confusing to me.

If you look at my screenshot of the Map, there are 29 devices shown, all with their correct name (no "unknown"). So why is it saying it found 28?

1 Like

Yep, you are right. I did not realize that the Devices list contains the Hub. I will fix this in the next version. Thank you!

3 Likes

Aha, yes, a month ago, I did a restore of that time and indeed, this was the address of the device (broken repeater) I have deleted.

1 Like

@bobbyD I nominate this as User Contributed App of the Year, for 2024.

12 Likes