zwave-js / zwave-js-ui

Full featured Z-Wave Control Panel UI and MQTT gateway. Built using Nodejs, and Vue/Vuetify
https://zwave-js.github.io/zwave-js-ui
MIT License
989 stars 206 forks source link

express relations between nodes in human understandable notation #3676

Open josh-m-sharpe opened 7 months ago

josh-m-sharpe commented 7 months ago

Z-Wave_JS_UI

Problems: "dBm" ? Why is it negative? Is lower better? Since it's negative is lower really actually better or is it the inverse?

Solution: I suspect this UI is attempting to express how good of a connection nodeA has to nodeB. If that's the case(?) might it be better to express that as percent? 100% being awesome. 0% being... not awesome. If not percent then maybe some other scale that is simple?

robertsLando commented 7 months ago

@josh-m-sharpe the color of the edge should already give you a good extimation of the quality of the communication

cc @AlCalzone

AlCalzone commented 7 months ago

https://en.wikipedia.org/wiki/DBm answers the first 2 questions:

dBm?

dBm or dBmW (decibel-milliwatts) is a unit of level used to indicate that a power level is expressed in decibels (dB) with reference to one milliwatt (mW). It is used in radio, microwave and fiber-optical communication networks as a convenient measure of absolute power because of its capability to express both very large and very small values in a short form.

Why is it negative

A power level of 0 dBm corresponds to a power of 1 milliwatt.

Negative values mean we're dealing with powers less than 1 mW.

Is lower better?

Higher values (closer to 0) are better, but you likely won't get anywhere close to 0.

express that as percent?

Unfortunately, we can't. While there seems to be a link quality indicator in the underlying radio library, the Z-Wave firmware does not expose it for reasons I don't know. All we have are the RSSI values you're referencing. How good a connection is depends on those, but also the background RSSI, which we can only measure at the controller, but not between nodes, for reasons I again don't know. If there is a lot of background noise, -60 may be terrible, but if there is not, -60 is an excellent value. I don't even know how high these values can go in practice (although I've seen values in the -30 range), so using a relative scale won't work. And even the values we typically see differ between 500 and 700/800 series. You could compare them to the background RSSI at the controller, but for routes between nodes this may or may not give useful information.

I guess treating them as additional information is the best way to go about them. The route colors already indicate how good a route is, since better routes support higher speeds. If a route is using a lower speed, these numbers may be able to tell you if the first or second hop is a problem for example.

Adding an explanation to the legend could be helpful though: that they range from roughly -100 to roughly -30, where values closer to 0 are better.

robertsLando commented 7 months ago

Ok I could add that to the legend if it can help