Moin zusammen,
heute mal ein kleines Tutorial, wie man das Einbinden von Fibaro RollladenSchaltern FGRM-222 in der WebUI des Z-Way-Servers ( ZWave.me ) erfolgreich durchführt, wenn die Firmware 22.22 auf dem kleinen Autor ausgespielt ist und man mit dem HTTP-API-Aufruf folgende unschöne Fehlermeldung im Browser erhält:
TypeError: Cannot read property 'data' of undefined
Für alle die vor dem gleichen Problem stehen, hier folgende Lösung:
Ausgangslage:
– erfolgreich in eigene Netzwerk eingebundener ZWave-Aktor von Fibaro (FGRM-222 Firmware 22.22) im Z-Way-Server von ZWAVE.me (Controller ist entweder ein RazBerry-Board oder ZME_UZB1 USB-Stick )
– keine Anzeige eines Sliders wie im folgenden Screenshot:
-> so wie im nachfolgenden Bild sollte es aussehen:
Lösung:
Teil 1:
Hierbei ist es von elementarer Wichtigkeit, dass alle Geräte (Roller Shutter Autoren) für die dieses Tutorial angewendet werden soll, vorher kalibriert worden sind !!!
Zur Lösung dieses Problems müssen wir uns ins Dateisystem des RaspBerry PI begeben. Ich mache das am liebsten mit TextWrangler ( beliebter freier Editor für Mac OS X). Hier kann ich die Dateien direkt vom FTP-Server holen und bearbeiten. Ab diesem Punkt lass ich die Bilder für sich sprechen:
ZielVerzeichnis auf dem RaspBerry PI: /opt/z-way-server/config/zddx/
Die XML-Datei %-DeviceData.xml enthält die MetaDaten aller in euer ZWave-Netzwerk eingebundenen Geräte. ( Dateiname bestehend aus: <eurer HomeID>-DeviceData.xml )
Wichtig: Bevor ihr irgendwelche Änderungen an dieser Datei vornehmt, ERSTELLT vorher IMMER eine SICHERUNG !!!
geöffnete XML-Datei
- ein Collapse Top-Level Folds lässt die komplette Datei etwas übersichtlicher Aussehen (Gruppieren und Zusammenklappen auf NodeEbene)
- so behält man gut die Übersicht
- wir schauen uns jetzt MetaDaten der Nodes 12 und 13 mal genauer an
- NodeID 12 ist noch ohne Slider und NodeID 13 hat schon einen (da neuere Firmwareversion des Autors ;/ )
- kopiert den kompletten Block von NodeID 13 der zwischen den INSTANCE-Tags steht und fügt ihn in ein leeres Dokument ein
- hier sollten dann alle Command-Classes von NodeID 13 zu sehen sein.
- alle Vorkommen von devices.13 durch devices.12 ersetzen
- sollte danach ungefähr so aussehen
- als nächstes kopieren wir den geänderten Inhalt und ersetzen in der vorher GESICHERTEN ORIGINAL-VERSION den Inhalt zwischen den INSTANCES-Tags (ACHTUNG) von DEVICE-ID 12 !!
- Speichern und Upload auf dem RaspBerry PI nicht vergessen
- damit wäre der Bearbeitungsteil beendet
Teil 2:
- Neustart des Z-Way-Servers auf dem RaspBerry PI
sudo /etc/init.d/z-way-server restart
- Neuanmeldung in der WebUI des Z-Way-Servers ( elementar wichtig, sonst funktioniert das Nachfolgende Procedere nicht und ihr müsst Teil1 nochmals von vorn durcharbeiten ! )
- Diese beiden URL’s nacheinander im Browser ausführen. (Eine Anmeldung im WebInterface muss vorher erfolgt sein ! )
Das ‚X‘ durch die Node-ID des Gerätes ersetzen. Im BeispielFall wäre dies jetzt die ID 12.
http://<raspberrypi-ip>:8083/JS/Run/zway.devices[X].SwitchMultilevel.data.supported=true #Response im Browser: true http://<raspberrypi-ip>:8083/JS/Run/zway.devices.SaveData() #Response im Browser: null
Jetzt in der Expert-UI ein ‚Update alles‘ durchführen und die Darstellung ändert sich wie folgt:
Sollte sich bei Euch auch die Änderung in der WebUI entsprechend geändert haben, dann habt ihr alles richtig gemacht, Glückwunsch.
Wenn nicht, postet es hier und es euch wird geholfen werden 😉
Oliver
Disclaimer !
Ich übernehme keinerlei Verantwortung und Haftung für Schäden oder Datenverluste die durch Benutzung dieser Anleitung entstehen oder entstehen könnten. Die Umsetzung des Gelesenen erfolgt auf eigene Gefahr und Verantwortung!
[asa]B00HSICQ4U[/asa] [asa]B00BL9QFH6[/asa] [asa]B00QJEY6OC[/asa]