-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zigbee-network map #252
Comments
Good plan! I'd also be keen to see some device mapping info available via MQTT which could potentially be rendered by e.g. HA. I got a map of my small network using the method from here https://community.smartthings.com/t/faq-mapping-your-zigbee-network-with-digis-xctu/28477/55. I could do this because I had a Digi XU-Z11 XStick laying around from when I had previously hoped it would work with HA. Here's the map it shows of my zigbee2mqtt network. The XU-Z11 is the R in the top left. The CC2531 is the C. Note that it shows true mesh links and did pick up all my devices. Not suggesting that an XU-Z11 should be required, this is just an example of the level of detail that would be useful in a map. Does the lqi function report the mesh or just shortest path? |
@clockbrain In contrast to Digi XU-Z11, this map can be obtained from coordinator and sent by mqtt to HA. |
@kirovilya If the problem is on our end PR's are welcome. I suspect however that the device may not be LQI robust (sometimes ignoring them or similar). Currently the LQI scan is lazy (it's intensive enough without repeats) but I would welcome any well thought out patch for robustness in any area of our forks. |
@splitice yes of course! thank you! |
@splitice I found one error in your code :) https://github.com/HalleyAssist/zigbee-shepherd/blob/master/lib/shepherd.js#L426 - you has not return result in chain function, in compare with my version https://github.com/kirovilya/zigbee-shepherd/blob/dev/lib/shepherd.js#L433 |
Thanks, Nice find, looks like you are correct. I'll patch that in the morning |
This looks really great! |
@Koenkk what about provide json array with map Informations as mqtt topic? |
@tb-killa I think we need a separate topic for this. Also it would be nice if we somehow could provide a rendered graph to home assistant (e.g. via an http jpeg endpoint) which can be used with https://www.home-assistant.io/components/camera.generic/ |
I used the visjs to draw a graph. |
Yes New topic sounds right. Some Javascript map to jpeg could be work. |
With visjs we could export as png... Does this is okay or have it to be jpeg? https://stackoverflow.com/questions/42663203/export-visjs-network-to-jpeg-png-image |
I think that the rendering of the image should not be on the side of the Zigbee2mqtt |
@kirovilya would you be willing to submit your networkmap code as pr so we can continue with the editing? |
@tb-killa ok. later, in evening |
Would be nice to create an Hassio plugin for installing this! |
Example for PR Koenkk/zigbee-shepherd#3 :
|
Permit join through router:
|
then tests are needed for the max number of connected devices. I have not so much :) |
Please do pr any tests you write :) |
@kirovilya doesnt we could use lqi Infos from #173?? |
@tb-killa yes we can, but in liqScan it also exist :) |
@Koenkk what about building new timer or use If we got this i could work on building some sort of docker image for mqtt to png or mqtt to dot to jpeg as webstream. |
@luci-11 I've implemented this in the latest firmware. You need to do this only once (after flashing). |
@ptvoinfo great news! I will flash it too tonight (I'm also very interested in testing the trasmission power increase) |
@luci-11 please, note, transmission power increase is only related to cc2530+cc2591. |
@ptvoinfo ah right, i didn't read it correcty :( but i'll flash anyway |
@luci-11 the green light is now on by default, and I get the slow blinking of the red led. cmd I use to create the graph is:
and
to trigger it |
is the networkmap feature still working for you with latest dev branch ? oh I guess I know why... issue with latest commit regarding friendly_name and networkmap |
I've proposed #443 |
@ptvoinfo is this firmware for CC2531 both router and coordinator? If just router, where can I find the latest coordinator firmware please? Also, if I update the firmware, will I need to re-pair my Xiaomi sensors (not a problem, but just so I know). I'm looking forward to trying out the new mapping features. :) |
@JAAPS There is a firmware for a router. |
Can someone briefly explain to me how I update to the dev branch? I'd like to try the network, too... Updategit checkout HEAD -- npm-shrinkwrap.json |
@mark078 you don't need the dev branch for that, all the functionality is in zigbee2mqtt 0.1.8 |
@Koenkk thank you, I tried it again and it worked, realy nice! :) |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
@xmace @kirovilya how did you create this type of map? Is it a function of iobroker, of zigbee2mqtt or one of its dependencies, or an independent module? |
It's been said before: #252 (comment) EDIT: MY BAD, you meant with the icons. |
exactly. I already got the graphviz map. |
Hi, Your ZigBee network map looks cool! Do you mind to share how to display this network map? As I have no idea how to display even though I have installed Zigbee2mqtt add on. |
For my application, I began to make feature to display the network map. It shows the connections between devices and nodes, as well as the quality of link.
I use the ZShepherd.prototype.lqiScan (thanks to @splitice and HalleyAssist fork) function that collects this info.
https://github.com/kirovilya/zigbee-shepherd/blob/dev/lib/shepherd.js#L417
But it does not always work correctly and some devices are not included in the map. Until I figured out why and how to fix it. :(
Another possibility is to start the pairing process on a separate router, rather than in the entire network. To do this, you need to send the NWK-address of the device to permitJoin function.
https://github.com/kirovilya/zigbee-shepherd/blob/dev/lib/components/controller.js#L338
The text was updated successfully, but these errors were encountered: