Zigbee2mqtt: show the networkmap in home assistant

I think some of your devices were unreachable but the dot string is published despite errors. So I don’t think that’s the problem.

What does your file source.js in the folder www\community\zigbee2mqtt_networkmap look like?
You can try to display the generated dot string with http://viz-js.com/ and see if it works there.

Hi Robin,

The content in folder www\community\zigbee2mqtt_networkmap is like:

  • panzoom folder
  • viz.js folder
  • map.html

No source.js as seen in several comments here but also no errors that it can’t be created and i have given full rights to this folder, maybe i should create source.js manually?

The generated dot string works indeed on viz-js.com and looks perfect.

I’ll do some more test and config checks tomorrow, i must be missing something simple which i can;t see now.

Thanks for helping me :wink:

Zigbee2mqtt_networkmap is not working for me as well. This is on Hass.io 0.97.2 running on Ubuntu with zigbee2mqtt 1.5.1.2 addon.
I can see in zigbee2mqtt log that the map get created after I call the service, but when I open the map it shows old map from 3 days ago.
I also get the message in the HA log

Received message for unregistered webhook 87c0c2f1b6f2665607084e6781d28c14066a8fa72fab9ae78d83e0f22d443ba3

I went over the install, but everything is as it should be. Not sure if this happened after upgrade from 0.96 or after I installed zigbee2mqtt Networkmap HACS over my old and working installation

Hello probably i missed some meddage, how can i set a friendly name for the maps device? If i remember right it’s possible.
Thanks in advance

What?

What device? This component produces an iframe with a network map in it.

You should not have both the hacs version and a manual install at the same time.

Sorry, meddage was message.
i mean that in network mac we can see only the device_id, example, 0x0637e7e7bh but I remember that someone posted how to change it with friendly name

Oh I see. Yes, that would be useful, I saw that somewhere too.

The path in the www folder has changed, you have to change the iframe URL to ‘/local/community/zigbee2mqtt_networkmap/map.html’.

You can set a friendly_name in zigbee2mqtt:
https://www.zigbee2mqtt.io/configuration/device_specific_configuration.html
The picture in the first post shows that these are displayed in the network map.

Double checked all configurations and files and then I did a debug in browser and found this:

Looks like certain files can’t be find although i followed the guide step by step (it’s not that complicated though :stuck_out_tongue: )

I think the problem is that i don’t have the source.js file being created in my environment, no idea how to troubleshoot that either.

The source.js file is created every time you call the service. Since the MQTT message is successfully published by zigbee2mqtt, I assume it is due to missing permissions.

Of course, I used the old path. :man_facepalming:
I should not be troubleshooting 1 o’clock in the morning.
It works now. Thank you

Hi,

I appear to be having an issue with displaying the actual map.
I believe I’ve no issues generating the required data, based upon the logs

  zigbee2mqtt:info 8/14/2019, 8:50:19 AM Starting network scan includeRoutes='0'...
  zigbee2mqtt:info 8/14/2019, 8:50:19 AM Network scan completed
  zigbee2mqtt:info 8/14/2019, 8:50:19 AM MQTT publish: topic 'zigbee2mqtt/bridge/networkmap/graphviz', payload 'digraph G {
node[shape=record];
  "0x00124b001938f0b3" [style="bold, filled", fillcolor="#e04e5d", fontcolor="#ffffff", label="{0x00124b001938f0b3|0x0 |No model information available|online (2019-08-14T08:50:19+01:00)}"];
  "0x00124b001938f0b3" -> "0xd0cf5efffeed648e" [penwidth=0.5, weight=0, color="#994444", label="80"]
  "0x000d6ffffe483dc3" [style="rounded, filled", fillcolor="#4ea3e0", fontcolor="#ffffff", label="{0x000d6ffffe483dc3|0xe2fb |IKEA TRADFRI LED bulb GU10 400 lumen, dimmable, white spectrum (LED1537R6)|online (13:11:50s ago)}"];
  "0x000d6ffffe483dc3" -> "0x00124b001938f0b3" [penwidth=0.5, weight=0, color="#994444", label="1"]
  "0x000d6ffffe483dc3" -> "0xd0cf5efffeed648e" [penwidth=0.5, weight=0, color="#994444", label="255"]
  "0xd0cf5efffeed648e" [style="rounded, filled", fillcolor="#4ea3e0", fontcolor="#ffffff", label="{0xd0cf5efffeed648e|0x2c54 |IKEA TRADFRI LED bulb GU10 400 lumen, dimmable, white spectrum (LED1537R6)|online (13:11:50s ago)}"];
  "0xd0cf5efffeed648e" -> "0x00124b001938f0b3" [penwidth=0.5, weight=0, color="#994444", label="31"]
  "0xd0cf5efffeed648e" -> "0x000d6ffffe483dc3" [penwidth=0.5, weight=0, color="#994444", label="255"]
}'
  zigbee2mqtt:info 8/14/2019, 8:50:22 AM Network scan timeout no outstanding requests

I’ve also taken the generated source.js and used http://viz-js.com/ to display the file, which generates as below:

However, Home Assistant display a blank map on the Zigbee Map tab.

I think that’s also due to missing write permissions.
I would expect an error message in the Homeassistant log in such cases…

Thanks for the advice, but not seeing anything in the Home Assistant main log and the Zigbee2MQTT log is as I previously posted.

Which file are you suggesting the permissions error is, as obviously it appears to be writing to the .js?

Thanks,

Hi guys, not sure if this has been mentioned here already, I didn’t see it, but check out this tread: https://community.home-assistant.io/t/zigbee2mqtt-lovelace-custom-card-to-show-zigbee2mqtt-network-map
This is plugin that gives a really neat representation of the zigbee network.

I had this same issue… but the cause may not be the same for you… But essentially, I had migrated from a self-install to a Hass.IO + HACS install and what I found was that the map would never update. What i realized was that the data was being sent to the old self-installed version. I just deleted the old directory, uninstalled the HACS version, restarted and reinstalled and everything works now.

For some reason the iframe is not visible (not even on the menu)
Where should I be looking? The configuration.yaml looks OK - direct copy and paste from OP

1 Like

Have you called the service? No error in log?