Routing Matrix

Begonnen von larry, 17 Dezember 2013, 19:03:24

Vorheriges Thema - Nächstes Thema

larry

Gibt es in FHEM eine Funktion sich die Routing Matrix anzuschauen (ist sehr hilfreich zur Fehlersuche)?

Mx112

#1
Noch nicht. Ich hab vor dazu solange https://code.google.com/p/openzwave-control-panel/ zu verwenden. Habs aber noch nicht am laufen.

Ich hab auch noch keine entsprechnede Doku dazu gefunden, sonst hätte ich schon versucht da was zu implementieren, die Routing Table insteressiert mich nämlich auch.  :)

Gruß
Matthias
FHEM 5.5 SVN - FB7390 FRITZ!OS 06.03 - RaspberryPi - Z-Wave - FBDECT

fhem-me

In meinem Z-Wave netz habe ich gerade mal 12 aktive Knoten.
Mein Fibaro Rauchmelder FGSS-001 schickt mir viele Nachichten bis zu drei mal.
Meine Jalousien haben gelegentlich das Problem das statt eines einfachen Stopp es zu einer Wiederholung des Kommandos kommt und sie dann die Richtung ändern
(zur Erklärung: on fährt hoch - off stoppt - noch ein off fährt wieder runter  :( )

Das riecht nach einem Routing-Problem bei dem Nachrichten mehrfach gesendet werden.
Also habe ich die Kommandos ZW_REQUEST_NODE_NEIGHBOR_UPDATE und GET_ROUTING_TABLE_LINE implementiert.
im ZWDongle gibt es dann bei SET ein "neighborUpdate" welches im Netzwerk die Routing-tabelle aktualisiert, sowie bei GET ein "neighborList" der als Argument die Knotennummer erhält deren Nachbarliste ausgelesen werden soll.
Wer bei dem Event "ZW_REQUEST_NODE_NEIGHBOR_UPDATE" auf "DONE" triggert kann seine aktualisierte Nachbarliste automatisch abrufen.
(verbose auf 4 setzten - dann kann man dem STARTED / FAILED / DONE besser zuschauen  ;) )

(siehe angehängte Patches basierend auf den aktuellen Revision 10_ZWave.pm 5564 bzw. 00_ZWDongle.pm 5568)
 
Die Nachbarliste hat sich bei meinem Netzwerk geändert - die Probleme sind leider geblieben.
Kennt jemand Details der "transmit option" bei send data ob man damit das Routing explizit angeben kann?

rudolfkoenig

Habs eingecheckt, obwohl ohne Doku.
Kannst du das bitte noch nachliefern?

fhem-me

#4
oops - natürlich ...  ;)
habe bei der Dokumentation gemerkt das die Eventnamen nicht in Großbuchstaben geschrieben werden.
Habe daher [started|done|failed] klein geschrieben.

Wer nicht so genau weiß was man mit den Methoden anfangen soll dem empfehle ich diesen Artikel:
http://www.vesternet.com/resources/technology-indepth/understanding-z-wave-networks


**** update ***
Zum Bereinigen der Routingtabelle habe ich noch ZW_REMOVE_FAILED_NODE_ID erfolgreich ausprobiert.
Frage: wie bekomme ich die unhandled ANSWER und command in Griff?

2014.04.24 23:19:41.909 5: SW: 010400610d97
2014.04.24 23:19:41.931 5: ZWDongle/RAW: /06
2014.04.24 23:19:42.146 5: ZWDongle/RAW: /01040161009b
2014.04.24 23:19:42.147 5: SW: 06
2014.04.24 23:19:42.150 5: ZWDongle_Read ZWDongle_0: 016100
2014.04.24 23:19:42.151 5: ZWDongle_0 dispatch 016100
2014.04.24 23:19:42.153 4: ZWDongle_0: unhandled ANSWER: ZW_REMOVE_FAILED_NODE_ID 00
2014.04.24 23:19:50.289 5: ZWDongle/RAW: /01050061020198
2014.04.24 23:19:50.290 5: SW: 06
2014.04.24 23:19:50.293 5: ZWDongle_Read ZWDongle_0: 00610201
2014.04.24 23:19:50.294 5: ZWDongle_0 dispatch 00610201
2014.04.24 23:19:50.296 4: ZWDongle_0 CMD:ZW_REMOVE_FAILED_NODE_ID ID:01 ARG:
2014.04.24 23:19:50.297 4: ZWDongle_0 unhandled command ZW_REMOVE_FAILED_NODE_ID

rudolfkoenig

Eingecheckt.

Zitatwie bekomme ich die unhandled ANSWER und command in Griff?
Indem du in ZWave_Parse vor der Fehlermeldung Code dafuer einbaust :)
Vermutlich lohnt sich alles was mit ANSWER zu tun hat in eine Funktion auszulagern.