Controller Commands *PRIORITY_ROUTE

Begonnen von krikan, 24 November 2016, 21:18:20

Vorheriges Thema - Nächstes Thema

krikan

Für ZWLib.pm:

'92'  => 'ZW_GET_PRIORITY_ROUTE',
'93'  => 'ZW_SET_PRIORITY_ROUTE',


Geraten ist der Ausbau für ZW_GET_PRIORITY_ROUTE
get <ZWDongle> raw 92|NodeId

Damit kommen beim Vision ZWave+ Antworten der Form:
raw_9204  019204011a00000002

Also:
0192|angefragteNodeId|Controller|Router1|Router2|Router3?|Router4?|??
?? hat bei mir bei einem Router den Wert 02 und bei keinem den Wert 03

An die SET-Variante habe ich mich nicht herangetraut, da ich auch nichts kaputt machen will.  8)

Gruß, Christian

rudolfkoenig

Kannst noch sagen, wozu das verwendet wird?

krikan

ZitatKannst noch sagen, wozu das verwendet wird?

Hatte bis eben nur aus den Namen der Funktion und den Rückgaben interpretiert; habe zwischenzeitlich hier https://github.com/Z-Wave-Me/Z-Way-Manual/blob/master/includesDev/funcclasses_autodoc.tex handfeste Infos gefunden.

ZW_GET_PRIORITY_ROUTE = (GetPriorityRoute) Rufe Route mit höchster Prioritaet für einen Node ab
ZW_SET_PRIORITY_ROUTE = (SetPriorityRoute) Setze Route mit höchster Prioritaet für einen Node

Aus dem Dokument ergeben sich insb. Hinweise für set. Wenn ich das für get übernehme und bei mir gegenchecke ist wohl tatsaechlich ?? die Routengeschwindigkeit.

rudolfkoenig

Ich habe die beiden Zeilen in ZWLib eingefuegt, und dem 00_ZWDongle ein (noch undokumentiertes) get routeFor spendiert.
Ich behaupte (bis es widerlegt ist), dass die erste Zahl die Anzahl der aktiven Elemente ist, und diese Funktion nur die 5/6 passenden Bytes aus dem EEPROM ausliest, siehe auch die Backup-Datei. Btw. die Funktion wird von meinem Goodway nicht unterstuetzt, und ist vmtl. ueberall, wo explorerFrames aktiv sind irrelevant. Soweit zur Theorie. :)

krikan

ZitatBtw. die Funktion wird von meinem Goodway nicht unterstuetzt
Behaupte, die gibt es erst ab 500er-Chipsatz=ZwavePlus. Goodway hat 300er und bei meinem alten Vision-Controller mit 400er gibt es die auch nicht.

Theorie zu explorerFrames unterstützte ich. Die Funktionen dienen nach meiner Theorie der Ermittlung der Netzwerkqualität http://z-wave.sigmadesigns.com/wp-content/uploads/2016/08/Z-Wave-IMA-Network-Health-Monitor.pdf und mir vielleicht zu mehr Verständnis des Netzes.

Hast Du Deine Theorie mit der Backup-Datei kontrolliert?

rudolfkoenig

Nein, da mein UZB1 fuer alles nur 00000000 liefert.

krikan

Zitat von: rudolfkoenig am 25 November 2016, 16:43:34
Nein, da mein UZB1 fuer alles nur 00000000 liefert.
Nur 00 hat mir der Vision nur bei freien NodeIDs geliefert. Da ich nicht vermute, dass Du nichts inkludiert hast:
Schon mal ein Firmwareupdate des UZB gemacht?

rudolfkoenig


krikan

ZitatIch behaupte (bis es widerlegt ist), dass die erste Zahl die Anzahl der aktiven Elemente ist
Ich behaupte (weiterhin), das ist die ControllerId. Gegen Deine Theorie sprechen diese Ergebnisse
routeFor_19     NrRouters:1 ZWave_SWITCH_BINARY_6
routeFor_26     NrRouters:1 ZWave_SWITCH_BINARY_6 ZWave_SWITCH_MULTILEVEL_27 ZWave_SWITCH_MULTILEVEL_4
routeFor_27     NrRouters:1 ZWave_SWITCH_MULTILEVEL_26 ZWave_SWITCH_MULTILEVEL_4
routeFor_4       NrRouters:1 ZWave_SWITCH_MULTILEVEL_26


Die letzte bisher von routeFor nicht berücksichtigte HexZahl sollte die Routengeschwindkeit sein:
01: 9.6 kbps
02: 40 kbps
03: 100 kbps
Passt zumindest bei meinen Geraeten für 02 und 03.

ZitatNein. Muss ich?
Grundsaetzlich: Nein. Ja, wenn Du bei den Funktionen mitreden willst und die erst mit einem Firmeware-Update nachgerüstet wurden.  ;) (Habe bisher nicht mit dem UZB getestet)

rudolfkoenig


krikan

#10
Danke.

Rückgaben ergeben in meinem Netz alle Sinn.

Der UZB1 mit Firmware 5.06 liefert auch "vernünftige" Rückgaben. Obwohl der UZB1 Sekundaercontroller die NodeId 10hex hat, ist das 1 Byte der Rückgabe 01 (=NodeId Primaercontroller).

krikan

Zitat von: rudolfkoenig am 25 November 2016, 16:17:16
Ich behaupte (bis es widerlegt ist), dass die erste Zahl die Anzahl der aktiven Elemente ist
Zitat von: krikan am 25 November 2016, 17:30:57
Ich behaupte (weiterhin), das ist die ControllerId. Gegen Deine Theorie sprechen diese Ergebnisse

Beide Theorien sind nach http://zwavepublic.com/sites/default/files/command_class_specs_2017A/SDS13784-4%20Z-Wave%20Network-Protocol%20Command%20Class%20Specification.pdf PDF-Seite 109 bzw Abschnitt 4.4.12.3 "Priority Route Report" falsch. Das ist "Route type".
Kleiner Fix anbei.

rudolfkoenig