NEWS
Z-Wave Adapter
-
So, bin Forenneuling und will kurz meine Erfahrungen zum besten geben
Habe ein Testsetup aus Raspi mit iobroker und der Razberry platine im Einsatz.
Sensorseitig kommt der Aeonlabs Multisensor gen. 5 zum Einsatz. Geschaltet soll ein Fibaro Double Relay switch werden…
Installation mit der Razberry eigenen Software ging einwandfrei, sollte allerdings via ibroker laufen da hier mit eineme Javascript bissl gespielt werden soll.
Erster Versuch war der direkt Weg. Zwave adapter installieren... Abgebrochen mit gyp Fehlern und war auch nicht zu überreden.
Dann die hübsche Anleitung auf Seite 2 gesehen ist auch aktueller als das was die adapterinstallation von github zieht.
> # Sollte hier die Datei libopenzwave.so.1.3 nicht gefunden werden, muss die Datei in den LD_LIBRARY_PATH hinzugefuegt werden.
War natürlich nicht zu finden, für alle anderen die hier gestolpert sind, einsudo ldconfig ````löst das Problem. Beim Adapterstart flogen mir dann diverse Fehlermeldungen um die Ohren. Was das beschrieben setup nicht macht, ist die GPIO Schnitstelle freigeben. [http://www.netzmafia.de/skripten/hardwa … erial.html](http://www.netzmafia.de/skripten/hardware/RasPi/RasPi_Serial.html) ` > Serielle Schnittstelle freischalten > > Per Voreinstellung ist auf der Schnittstelle, die unter Linux auf /dev/ttyAMA0 angesprochen wird, eine serielle Login-Konsole konfiguriert, auf der auch der gesamte Bootvorgang protokolliert wird. Deshalb kann man diese Schnittstelle nicht so ohne Weiteres für andere Zwecke verwenden. Das bedeutet, dass Sie zuerst die serielle Konsole abschalten müssen. Maßgeblich dafür sind zwei Dateien: > > /boot/cmdline.txt > > /etc/inittab > > Bearbeiten /boot/cmdline.txt > > Die Datei /boot/cmdline.txt regelt den Bootvorgang des Pi. Dort werden diverse Boot-Optionen eingestellt, so auch die serielle Konsole. Per Default steht relativ wenig in der Datei, wobei es bei kommenden Versionen schon wieder anders aussehen kann (für die Darstellung hier wurde die Zeile umbrochen!): > > dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 > > console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait > > Aus diesen Optionen müssen Sie nun die Angaben zur Konsole "ttyAMA0" löschen, aber alles andere unbedingt unverändert lassen. Am Besten machen Sie zuerst ein Backup der Datei (cp /boot/cmdline.txt /boot/cmdline.bak). Dann ändern Sie in der Originaldatei die Zeile: > > dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 > > console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait > > in die folgende Zeile (oben sind die zu löschenden Teile farbig hervorgehoben): > > dwc_otg.lpm_enable=0 > > console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait > > Bearbeiten /etc/inittab > > Nun wird die Datei /etc/inittab bearbeitet. In ihr ist die serielle Schnittstelle als Login-Schnittstelle definiert. Dazu Öffnen Sie die Datei und bearbeiten den folgenden Eintrag: > > #Spawn a getty on Raspberry Pi serial line > > T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100 > > Ändern Sie die Zeile durch ein davor gestelltes Kommentarzeichen in > > #Spawn a getty on Raspberry Pi serial line > > # T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100 > > Damit ist die Login-Funktion abgeschaltet. Wenn Sie den Pi nun neu starten, können Sie die serielle Schnittstelle beliebig nutzen. ` In Summe funktioniort das Setup vergleichsweise Schmerzfrei. Ich habe vorher mit einem scc1101 von busware rumgespielt…. Übel Nach Stunden, massig Kopfschmerzen ware die Platine als root ansprechbar, aber auch nur so. Obwohl Benutzer/sudo in den entsprechenden Rechtegruppen war etc... Und da es keine brauchbare Dokumentation dazu gibt ging das Ding postwendend zurück... Die Razberry Platine ist vergleichsweise gut dokumentiert. Leider gibts aktuell in der Kombination des öfteren mal einen kompletten freeze des pi der nur über strom raus strom rein gelöst werden kann... Stabil ist also momentan noch was anderes... Ein lustiges Problem bei der aktuellsten iobroker Version (0.80) funktioniert die Adapterliste nur wenn ich manuell einen restart von iobroker mache (via Konsole). Im Anschluss versucht iobroker alle 30s den Adapter (instance system.adapter.zwave.0) neu zu starten obwohl er noch läuft (code 7 Adapter already running). Nervig am Aeonlabs Multisensor ist, dass er trotz usb strom kein daueron modus hat. Er wacht nur sporadisch auf (wake on time min bei 4 Minuten) was zu testzwecken echt bekloppt ist... Doku ist auch eher sporadisch und mehr trial and error als gezielt suchen... So weit erstmal von meiner Seite, schönen Dank an euch erstmal für die Geile Arbeit rund um iobroker und die Adapter!!!
-
Hallo, tut leid das ich das erst jetzt lese und kommentiere.
Freut mich natürlich das du den Adapter verwenden möchtest.
Die Fehler brauche ich gar nicht weiter analysieren, die sollten mir alle bekannt sein…
In letzter Zeit habe ich viel Zeit in die Konfiguration gesteckt aber noch nicht freigegeben.
Werde heute Abend mal einen Version in Github hochladen und dann Bescheid geben.
Gesendet von meinem iPhone mit Tapatalk
-
Hallo, eine neue Version von zWave ist auf GitHub verfügbar.
Bitte die bestehende Instanz entfernen und per URL https://github.com/husky-koglhof/ioBrok … all/master neu installieren.
Danach bitte unbedingt in der Administration von zWave einen NetworkKey erzeugen.
Kann zum Beispiel per random.org (https://www.random.org/cgi-bin/randbyte ... 6&format=h) gemacht werden
Aber nicht vergessen es muss überall ein 0x davor gestellt werden und mit Komma separiert sein und es muss 16 Stellen lang sein.
Beispiel: (0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,0x10)
Aufgrund von Fehlern bei der Objekterzeugung, müssen alle Objekte innerhalb von ioBroker neu angelegt werden.
Bitte testen und dann Bescheid geben.
Ausserdem ist eine neue Konfigurationseite verfügbar.
Hier sind grundsätzlich alle Funktionen bis auf Scene-Management aktiviert.
Auch hier gilt, bitte testen und dann Bescheid geben.
Sobald die Software von euch getestet und von mir als stabil deklariert ist, wird sie selbstverständlich über ioBroker Bordmittel zur Verfügung gestellt.
LG Christian
-
Noch als Info, die Konfigurationsseite funktioniert im Moment erst dann korrekt, wenn alle
Geräte erfolgreich eingelesen werden konnten.
Dies ist innerhalb von ioBroker in der Lasche "Objects" ersichtlich:
NODE13, NODE14, NODE24 und NODE26 sind noch nicht fertig geladen.
Falls dies Batteriebetriebene Geräte sind, einfach ein NIF vom Gerät aus versenden (Klassiker, den Button drücken, je nach Gerät 1-3mal)
-
Klasse Arbeit.
Es git noch so unheimlich viel, mit dem man spielen und testen möchte.
Der Z-Wave Adapter gehört definitiv dazu! Klasse!
-
wird bei Gelegenheit mit den neuen AEONLABS Multisensor 6 getestet, werde berichten…
-
Habe beim Versuch, den neuen zwave-Adapter zu installieren, wieder das Problem, das ich beim ersten Mal hatte - mit dem Unterschied, dass ich jetzt nicht mehr weiß, wie ich es damals gelöst hab:
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/0.10.22" gyp WARN EACCES attempting to reinstall using temporary dev dir "/opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared/.node-gyp" gyp http GET http://nodejs.org/dist/v0.10.22/node-v0.10.22.tar.gz gyp http 200 http://nodejs.org/dist/v0.10.22/node-v0.10.22.tar.gz make: Entering directory '/opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared/build' CXX(target) Release/obj.target/openzwave_shared/src/callbacks.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-config.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-driver.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-groups.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-management.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-network.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-nodes.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-polling.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-scenes.o CXX(target) Release/obj.target/openzwave_shared/src/openzwave-values.o CXX(target) Release/obj.target/openzwave_shared/src/utils.o ../src/utils.cc: In function ‘v8::Local <v8::object>OZW::zwaveValue2v8Value(OpenZWave::ValueID)’: ../src/utils.cc:203:3: error: ‘EscapableHandleScope’ was not declared in this scope ../src/utils.cc:203:3: note: suggested alternative: /opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared/node_modules/nan/nan.h:361:7: note: ‘Nan::EscapableHandleScope’ ../src/utils.cc:203:24: error: expected ‘;’ before ‘handle_scope’ ../src/utils.cc:239:11: error: ‘handle_scope’ was not declared in this scope ../src/utils.cc:202:16: warning: unused variable ‘isolate’ [-Wunused-variable] ../src/utils.cc: In function ‘v8::Local <v8::object>OZW::zwaveSceneValue2v8Value(uint8, OpenZWave::ValueID)’: ../src/utils.cc:245:3: error: ‘EscapableHandleScope’ was not declared in this scope ../src/utils.cc:245:3: note: suggested alternative: /opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared/node_modules/nan/nan.h:361:7: note: ‘Nan::EscapableHandleScope’ ../src/utils.cc:245:24: error: expected ‘;’ before ‘handle_scope’ ../src/utils.cc:275:10: error: ‘handle_scope’ was not declared in this scope ../src/utils.cc:244:16: warning: unused variable ‘isolate’ [-Wunused-variable] ../src/utils.cc:276:2: warning: control reaches end of non-void function [-Wreturn-type] ../src/utils.cc: In function ‘v8::Local <v8::object>OZW::zwaveValue2v8Value(OpenZWave::ValueID)’: ../src/utils.cc:240:2: warning: control reaches end of non-void function [-Wreturn-type] openzwave_shared.target.mk:104: recipe for target 'Release/obj.target/openzwave_shared/src/utils.o' failed make: *** [Release/obj.target/openzwave_shared/src/utils.o] Error 1 make: Leaving directory '/opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared/build' gyp ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23) gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:789:12) gyp ERR! System Linux 4.1.13-v7+ gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /opt/iobroker/node_modules/iobroker.zwave/node_modules/openzwave-shared gyp ERR! node -v v0.10.22 gyp ERR! node-gyp -v v0.11.0 gyp ERR! not ok npm WARN optional dep failed, continuing iobroker.zwave@0.2.5</v8::object></v8::object></v8::object>
-
Hallo,
also für mich ist mal die letzte Zeile relevant, er behauptet, das er die Version 0.2.5 installieren will.
Das ist dann schon mal falsch.
Hast du per URL versucht zu installieren, oder per Update Funktion von ioBroker?
-
Ausserdem gehe ich mal davon aus, das du das ganze mit Node 0.10.x versuchst.
Werde mal bei meinem Test Raspi die Version installieren und schauen was passiert.
-
Hallo,
kann den Fehler nachvollziehen und habe deswegen ein Ticket (https://github.com/OpenZWave/node-openz … /issues/83) eröffnet.
LG Christian
-
So, Antwort ist schon da.
node 0.10 ist nicht mehr unterstützt, aufgrund dieses Fehlers.
LG Christian
-
also für mich ist mal die letzte Zeile relevant, er behauptet, das er die Version 0.2.5 installieren will.
Das ist dann schon mal falsch.
Hast du per URL versucht zu installieren, oder per Update Funktion von ioBroker? `
Ich habe sowohl per URL (siehe der längere Beitrag Seite 2) als auch per Update-Funktion probiert, bei beiden tritt der Fehler auf. Wenn ich per URL installiere, steht am Ende des Logs die Version 0.2.9, dennoch zeigt mir das ioBroker-Interface 0.2.5 als installiert an, es läuft also nicht durch.node 0.10 ist nicht mehr unterstützt, aufgrund dieses Fehlers. `
node.js ist die im vorkonfigurierten Image verwendete Version 0.10.22. Was heißt das jetzt für mich? Warte ich auf ein Update des Adapters oder kann ich den Fehler selbst beheben?Danke schonmal für die prompte Antwort!
-
Hallo, der Entwickler von openzwave-shared hat eine Anpassung durchgeführt,
bei mir funktioniert nun das manuelle kompilieren.
Sobald eine offizielle Version von ihm zur Verfügung steht, mache ich ein Update und gebe Bescheid.
LG Christian
-
Hallo, Fix ist drinnen, bei mir hat es mit 0.10 node funktioniert, bitte testen.
Zusätzlich sind dann auch gleich ein paar Hotfix von mir drinnen:
0.2.9.1 (2016-03-11)
- (husky-koglhof)
Fixed setConfigParam,
Removed hardcoded 'lbl' Value in dynamic Listbox
Extended 'forceInit' Function, config File will be removed too
LG Christian
-
Installation ist einwandfrei durchgelaufen, demnächst Testberichte.
Edit: läuft leider nicht, direkt nach dem Adapter-Start finde ich folgenden Fehler im Log:
> error instance system.adapter.zwave.0 terminated with code 103 ()
Edit #2: Nach Downgrade auf 0.2.5 läuft es wieder, scheint also ein Problem der neuen Version zu sein.
-
Hallo, kriegst du außer dieser Meldung noch andere?
Bzw. mal mit Debug starten, bzw.
mir mal das OZW log zukommen lassen.
Gesendet von meinem iPhone mit Tapatalk
-
Hallo,
Ich hab mich jetzt auch endlich mal hier angemeldet.
Ich habe iobroker unter jessi laufen. Hat zwar etwas gedauert bis Z-Wave anfangs lief, aber irgendwann hat es funktioniert.
Habe jetzt auch die 0.2.9 drauf, weil ich mit 0.2.5 nur Probleme hatte.
@AlCazone: lösche bitte mal Z-Wave komplett aus ioBroker und installiere dann die 0.2.9 neu. Das hat mir bei diesem Problem auch geholfen.
Gesendet von iPhone mit Tapatalk
-
Komisch, habs jetzt einfach nochmal deinstalliert und wieder installiert, jetzt scheint es zu laufen.
-
Hallo, bedeutet, die Version 0.2.9.1 ist aktiv?
LG Christian
-
Sorry für die späte Antwort, komme erst jetzt wieder zum Arbeiten an meinem Projekt.
Ja, 0.2.9 läuft auf dem Raspi.
Großartig wäre es, wenn einige der Funktionen des Adapters über ioBroker-States zugänglich gemacht würden. Ich arbeite an einer Automatisierungslösung mit dem Skript-Modul, da wäre folgendes wirklich interessant:
-
Statusmeldung des Adapters wie "alle Nodes fertig geladen", "Treiber/Controller fertig initialisiert"
-
aktivieren/deaktivieren des inclusion/exclusion Modus der zwave-Platine
-