ZigBee ohne Hersteller-Gateway: Unterschied zwischen den Versionen
Geli (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Geli (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 2: | Zeile 2: | ||
Die beschriebene Vorgehensweise folgt im Wesentlichen der Dokumentation von [https://www.zigbee2mqtt.io/ Zigbee2mqtt]. | Die beschriebene Vorgehensweise folgt im Wesentlichen der Dokumentation von [https://www.zigbee2mqtt.io/ Zigbee2mqtt]. | ||
====CC2531 flashen==== | ====CC2531 flashen==== | ||
==== | ====Node.js und npm installieren==== | ||
Zuerst werden '''Node.js''' (JavaScript Laufzeitumgebung) und '''npm''' (dazugehöriger Paketmanager) installiert. Leider funktioniert die Anleitung nicht für Raspberry Pi Zero W, da dessen Prozessor eine abweichende Architektur aufweist. Daher ist eine alternative Vorgehensweise erforderlich.<br /> | Zuerst werden '''Node.js''' (JavaScript Laufzeitumgebung) und '''npm''' (dazugehöriger Paketmanager) installiert. Leider funktioniert die Anleitung nicht für Raspberry Pi Zero W, da dessen Prozessor eine abweichende Architektur aufweist. Daher ist eine alternative Vorgehensweise erforderlich.<br /> | ||
Zuvor soll überprüft werden, ob Node.js nicht ohnehin installiert ist. | Zuvor soll überprüft werden, ob Node.js nicht ohnehin installiert ist. | ||
Zeile 26: | Zeile 26: | ||
Damit wird im Ordner test ein packge.json erzeugt. Das Directory test kann anschließen mit rm -r test wieder gelöscht werden. | Damit wird im Ordner test ein packge.json erzeugt. Das Directory test kann anschließen mit rm -r test wieder gelöscht werden. | ||
====Clone zigbee2mqtt repository==== | |||
found 2 moderate severity vulnerabilities | found 2 moderate severity vulnerabilities | ||
run 'npm audit fix' to fix them, or 'npm audit' for details | run 'npm audit fix' to fix them, or 'npm audit' for details | ||
$ npm audit fix | $ npm audit fix |
Version vom 14. März 2019, 16:29 Uhr
Möchte man ZigBee-devices ohne Hersteller-Gateway betreiben benötigt man eine Lösung auf Basis des CC2531 USB-Enabled System-On-Chip für ZigBee, der die Rolle des Coordinators im ZigBee-Netzwerk übernimmt. Für die Einbindung in openHAB wird die Software Zigbee2mqtt auf dem openHAB-Server installiert. Die in openHAB vorgesehenen Hersteller-Bindings wie TRÅDFRI oder Philips Hue können nun nicht verwendet werden, da diese ein Hersteller-Gateway voraussetzen.
Die beschriebene Vorgehensweise folgt im Wesentlichen der Dokumentation von Zigbee2mqtt.
CC2531 flashen
Node.js und npm installieren
Zuerst werden Node.js (JavaScript Laufzeitumgebung) und npm (dazugehöriger Paketmanager) installiert. Leider funktioniert die Anleitung nicht für Raspberry Pi Zero W, da dessen Prozessor eine abweichende Architektur aufweist. Daher ist eine alternative Vorgehensweise erforderlich.
Zuvor soll überprüft werden, ob Node.js nicht ohnehin installiert ist.
node --version # Should output > v10.X npm --version # Should output > 6.X
Falls das der Fall ist, kann man zum Schritt Clone zigbee2mqtt springen.
Install Node.js on a Raspberry Pi Zero W
Die aktuelle Distribution findet man auf der offiziellen Website https://nodejs.org/dist/. Dort wählen wir die letzte Version https://nodejs.org/dist/v11.9.0/. In diesem Verzeichnis wählt man node-v11.9.0-linux-armv6l.tar.gz. Das File wird am besten in einem freigegebenen Ordner z.B. openHAB-conf/scripts temporär gespeichert. In PuTTY wird sodann folgendes ausgeführt:
cd /etc/openhab2/scripts tar -xzf node-v11.9.0-linux-armv6l.tar.gz (6l heißt 6L, nicht 61) sudo cp -r node-v11.9.0-linux-armv6l/* /usr/local/
Die Versionen von Node.js und npm können mit
node --version npm --version
überprüft werden. Zum Schluss wird das Downloadverzeichnis bereinigt:
rm -Rf node-v11.9.0-linux-armv6l rm node-v11.9.0-linux-armv6l.tar.gz
Abschließend kann man testweise ein package.json-file erzeugen:
mkdir test cd test npm init -y
Damit wird im Ordner test ein packge.json erzeugt. Das Directory test kann anschließen mit rm -r test wieder gelöscht werden.
Clone zigbee2mqtt repository
found 2 moderate severity vulnerabilities run 'npm audit fix' to fix them, or 'npm audit' for details
$ npm audit fix