ConBee: Unterschied zwischen den Versionen

Aus FHEMWiki
(→‎Dokumentation und Setup: Einzeiler für Linux Desktop eingefügt)
(→‎Dokumentation und Setup: deCONZ Parameter ergänzt und Text neu strukturiert)
Zeile 26: Zeile 26:


Um den minimalen Dienst (deconz) in Betrieb zu nehmen, sind noch folgende Schritte notwendig:
Um den minimalen Dienst (deconz) in Betrieb zu nehmen, sind noch folgende Schritte notwendig:
# Optionale Konfiguration (empfohlen): serielle Schnittstelle und WEB-Port (Standard: 80) einstellen (siehe Problembehebung)
# Optionale Konfiguration (empfohlen): serielle Schnittstelle und WEB-Port (Standard: 80) einstellen (siehe Problem Behebung)
# Start und Test: <code>sudo systemctl start deconz</code>, mit dem Browser Zugriff auf Phoscon App testen: http://gatewayIP:Portnummer
# Start und Test: <code>sudo systemctl start deconz</code>, mit dem Browser Zugriff auf Phoscon App testen: http://gatewayIP:Portnummer
# Funktioniert alles, kann man den Service dauerhaft aktivieren: <code>sudo systemctl enable deconz</code>
# Funktioniert alles, kann man den Service dauerhaft aktivieren: <code>sudo systemctl enable deconz</code>
'''Hinweis''': Es gibt eine Ungereimtheit in der Beschreibung des Parameters '''''platform''''': es scheint aktuell (April 2021) egal zu sein, ob man <code>-platform minimal</code> oder <code>--platform minimal</code> verwendet.  
'''Hinweise''':
 
* Das Programm deCONZ verwendet die Hardwareschnittstelle und kann nicht mehrfach gestartet werden und dabei die gleiche Hardwareschnittstelle verwenden! 
* Es gibt eine Ungereimtheit in der Beschreibung des Parameters ''platform'': es scheint aktuell (April 2021) egal zu sein, ob man <code>-platform minimal</code> oder <code>--platform minimal</code> verwendet.  
* Beim deCONZ Aufruf empfiehlt sich generell den --dev= Parameter anzuhängen (siehe Problem Behebung).
* deconz.service und deconz-gui.service sind alternative Aufrufe der gleichen Binary - es kann nur einer von beiden Diensten gestartet werden. 
* Alternativ (nicht empfohlen) kann man das deconz Setup auf einem Desktop System ausführen und den Dienst deconz-gui konfigurieren und aktivieren. Der Zugriff auf die GUI erfolgt dann mit einem VNC Viewer (RealVNC bietet eine portable Version).
* Wer eine einfache Konfiguration möchte und sich mit docker auskennt, kann die docker Variante wählen.
Mit der Phoscon Web-App kann man  
Mit der Phoscon Web-App kann man  
* Das Gateway verwalten, Firmware, Backup/Restore, Zeitzone, Sprache
* Das Gateway verwalten: Firmware, Backup/Restore, Zeitzone, Sprache
* ZigBee Geräte anmelden und verknüpfen, Szenen einrichten ...
* ZigBee Geräte anmelden und verknüpfen, Szenen einrichten ...
* Applikationen mit dem Gateway verbinden, dazu zählt auch das HUEBridge Device von FHEM
* Applikationen mit dem Gateway verbinden, dazu zählt auch das HUEBridge Device von FHEM
* Zugriff auf die alte WebApp erhalten (Hilfe Seite)
* Zugriff auf die alte WebApp erhalten (Hilfe Seite)
Mit der deCONZ GUI kann man
* Die Firmware der Geräte aktualisieren (OTA Plugin)
* Das Zigbee Netzwerk visualisieren
* ... (noch vervollständigen)
Um den Zugriff auf die deCONZ GUI zu erhalten, kann man '''X11 Forwarding''' verwenden, dazu braucht man nur einen X11 Server (Linux Desktop oder Windows VcXsrv, Xming; beides auf SourceForge.net verfügbar).
Um den Zugriff auf die deCONZ GUI zu erhalten, kann man '''X11 Forwarding''' verwenden, dazu braucht man nur einen X11 Server (Linux Desktop oder Windows VcXsrv, Xming; beides auf SourceForge.net verfügbar).


Einzeiler für Linux Desktop <code>ssh -X <user>@<host> deCONZ</code>
Einzeiler für Linux Desktop : <code>ssh -X <user>@<host> sudo systemctl stop;deconz deCONZ --dev=/dev/ttyACM0;sudo systemctl start deconz</code>
 
Einzeiler für Windows 10 : <code>ssh -X <user>@<host> export DISPLAY=%COMPUTERNAME%:0.0;sudo systemctl stop;deconz deCONZ --dev=/dev/ttyACM0;sudo systemctl start deconz</code>
=== Problem Behebung ===
deCONZ verwendet offenbar beim Start auch per default die Schnittstelle /dev/ttyAMA0 (raspbee Modul). Die Kommunikation eines dort steckenden anderen Moduls wird dabei gestört, die GUI reagiert eine Zeit lang nicht.
 
Hat man andere Module an AMA0 (UART GPIO) oder an den Standard USB Schnittstellen (ACM0 usw.), muss der deCONZ Aufruf mit den richtigen Schnittstellen Parametern konfiguriert werden.


Einzeiler für Windows 10 (auch als direkter Link verwendbar):
Am zuverlässigsten ist es, die Definition per ID einzutragen. Der richtige Eintrag kann mit leicht abgefragt werden:
:<code><nowiki>ssh -X <user>@<host> export DISPLAY=%COMPUTERNAME%:0.0;deCONZ</nowiki></code>


Alternativ (nicht empfohlen) kann man das deconz Setup auf einem Desktop System ausführen und den Dienst deconz-gui konfigurieren und aktivieren. Der Zugriff auf die GUI erfolgt dann mit einem VNC Viewer (RealVNC bietet eine portable Version).
<code>ls -lha /dev/serial/by-id</code>


'''Achtung''': deconz.service und deconz-gui.service sind alternative Aufrufe der gleichen Binary - es kann nur einer von beiden Diensten gestartet werden. Wer eine einfache Konfiguration möchte und sich mit docker auskennt, kann die docker Variante wählen.
Die Konfiguration der Dienste erfolgt mit dem systemctl Editor:


=== Problembehebung ===
<code>sudo systemctl edit --full deconz</code>
deCONZ verwendet offenbar beim Start auch per default die Schnittstelle /dev/ttyAMA0 (raspbee Modul). Die Kommunikation eines dort steckenden anderen Moduls wird dabei gestört.


Hat man andere Module an AMA0 (UART GPIO) oder an den Standard USB Schnittstellen (ACM0 usw.), muss die Unit deconz.service mit den richtigen Schnittstellen Parametern konfiguriert werden. Am zuverlässigsten ist es, die Definition per ID einzutragen. Dazu bitte
:<code>sudo systemctl edit --full deconz</code>
und die Zeile ExecStart um diesen Parameter ergänzten (Beispiel):  
und die Zeile ExecStart um diesen Parameter ergänzten (Beispiel):  
:<code>--dev=/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE1234567-if00</code>
:<code>--dev=/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE1234567-if00</code>
Der richtige Eintrag muss mit <code>ls -lha /dev/serial/by-id</code>abgefragt werden.
Grundsätzlich ist diese Art der Einbindung auch für [[Mehrere USB-Geräte einbinden|alle seriellen Geräte]] in FHEM dringend anzuraten, wenn andere Services wie deconz auf demselben Server betrieben werden.
Grundsätzlich ist diese Art der Einbindung auch für [[Mehrere USB-Geräte einbinden|alle seriellen Geräte]] in FHEM dringend anzuraten, wenn andere Services wie deconz auf demselben Server betrieben werden.



Version vom 8. April 2021, 10:49 Uhr

Todo: Noch zu vervollständigen und zu verlinken

ConBee ist ein ZigBee USB Gateway (Interface), mit dem herstellerübergreifend ZigBee-Geräte bedient werden können. Unter der Bezeichnung RaspBee ist auch eine Variante als Raspberry Pi Modul erhältlich. Beide Geräte sind als ConBee II und RaspBee II in einer aktualisierten Version erhältlich. Im folgenden werden alle Version als ConBee bezeichnet und die Ausführungen gelten auch RaspBee; sofern es relevante Unterschiede gibt, wird das ausdrücklich erwähnt.

ConBee
frameless
Allgemein
Protokoll ZigBee
Typ Interface
Kategorie diverse Hersteller
Technische Details
Kommunikation Funk
Kanäle ?
Betriebsspannung 5V=
Leistungsaufnahme ?
Versorgung USB
Abmessungen ?
Sonstiges
Modulname HUEBridge.pm, HUEDevice.pm
Hersteller dresden elektronik, Vertrieb: Phoscon

Beschreibung

Das ConBee Gateway benötigt/hat keine Cloud-Anbindung. Eine Liste der kompatiblen ZigBee Geräte und Hersteller findet sich hier.

Dokumentation und Setup

Das Setup erzeugt auf einem Pi mit PiOS Lite sieben Services, die bis auf zwei alle disabled sind (systemctl list-unit-files|grep deconz).

Um den minimalen Dienst (deconz) in Betrieb zu nehmen, sind noch folgende Schritte notwendig:

  1. Optionale Konfiguration (empfohlen): serielle Schnittstelle und WEB-Port (Standard: 80) einstellen (siehe Problem Behebung)
  2. Start und Test: sudo systemctl start deconz, mit dem Browser Zugriff auf Phoscon App testen: http://gatewayIP:Portnummer
  3. Funktioniert alles, kann man den Service dauerhaft aktivieren: sudo systemctl enable deconz

Hinweise:

  • Das Programm deCONZ verwendet die Hardwareschnittstelle und kann nicht mehrfach gestartet werden und dabei die gleiche Hardwareschnittstelle verwenden!
  • Es gibt eine Ungereimtheit in der Beschreibung des Parameters platform: es scheint aktuell (April 2021) egal zu sein, ob man -platform minimal oder --platform minimal verwendet.
  • Beim deCONZ Aufruf empfiehlt sich generell den --dev= Parameter anzuhängen (siehe Problem Behebung).
  • deconz.service und deconz-gui.service sind alternative Aufrufe der gleichen Binary - es kann nur einer von beiden Diensten gestartet werden.
  • Alternativ (nicht empfohlen) kann man das deconz Setup auf einem Desktop System ausführen und den Dienst deconz-gui konfigurieren und aktivieren. Der Zugriff auf die GUI erfolgt dann mit einem VNC Viewer (RealVNC bietet eine portable Version).
  • Wer eine einfache Konfiguration möchte und sich mit docker auskennt, kann die docker Variante wählen.

Mit der Phoscon Web-App kann man

  • Das Gateway verwalten: Firmware, Backup/Restore, Zeitzone, Sprache
  • ZigBee Geräte anmelden und verknüpfen, Szenen einrichten ...
  • Applikationen mit dem Gateway verbinden, dazu zählt auch das HUEBridge Device von FHEM
  • Zugriff auf die alte WebApp erhalten (Hilfe Seite)

Mit der deCONZ GUI kann man

  • Die Firmware der Geräte aktualisieren (OTA Plugin)
  • Das Zigbee Netzwerk visualisieren
  • ... (noch vervollständigen)

Um den Zugriff auf die deCONZ GUI zu erhalten, kann man X11 Forwarding verwenden, dazu braucht man nur einen X11 Server (Linux Desktop oder Windows VcXsrv, Xming; beides auf SourceForge.net verfügbar).

Einzeiler für Linux Desktop : ssh -X <user>@<host> sudo systemctl stop;deconz deCONZ --dev=/dev/ttyACM0;sudo systemctl start deconz

Einzeiler für Windows 10 : ssh -X <user>@<host> export DISPLAY=%COMPUTERNAME%:0.0;sudo systemctl stop;deconz deCONZ --dev=/dev/ttyACM0;sudo systemctl start deconz

Problem Behebung

deCONZ verwendet offenbar beim Start auch per default die Schnittstelle /dev/ttyAMA0 (raspbee Modul). Die Kommunikation eines dort steckenden anderen Moduls wird dabei gestört, die GUI reagiert eine Zeit lang nicht.

Hat man andere Module an AMA0 (UART GPIO) oder an den Standard USB Schnittstellen (ACM0 usw.), muss der deCONZ Aufruf mit den richtigen Schnittstellen Parametern konfiguriert werden.

Am zuverlässigsten ist es, die Definition per ID einzutragen. Der richtige Eintrag kann mit leicht abgefragt werden:

ls -lha /dev/serial/by-id

Die Konfiguration der Dienste erfolgt mit dem systemctl Editor:

sudo systemctl edit --full deconz

und die Zeile ExecStart um diesen Parameter ergänzten (Beispiel):

--dev=/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE1234567-if00

Grundsätzlich ist diese Art der Einbindung auch für alle seriellen Geräte in FHEM dringend anzuraten, wenn andere Services wie deconz auf demselben Server betrieben werden.

Sollte bei der Verbindung zum X11 Server die Fehlermeldung Authorization required kommen, kann man beim Start des VcXsrv Server einfach den Haken bei disable access control setzen.

Unterstützung in FHEM

Info green.pngAlternativ kann man das Model ConBee II auch als Interface für zigbee2mqtt verwenden und dann die ZigBee-Geräte als MQTT2_DEVICE in FHEM einbinden.

ConBee wird über das Modul HUEBridge und über die deCONZ Software, die Wireless Light Control WebApp und die Phoscon WebApp (kommt zusammen mit deConz) in FHEM eingebunden.

Sensoren werden nicht automatisch erzeugt und müssen manuell angelegt werden.

Tipps:

  • Die HUEBridge funktioniert (noch undokumentiert) auch mit Portangaben, falls nicht Standard Port 80 verwendet wird.
  • Der SSL Port wird im Modul von der API abgefragt und kann in der HUEBridge nicht extra angegeben werden. Dazu darf der SSL Port nicht extern umgemappt werden, sondern der deconz Service muss wissen, auf welchem Port er läuft.
  • Die Bridge muss einmalig mit dem Gateway gepairt werden. Das FHEM Bridge Device erzeugt einen Key, in der Phoscon App muss man im Menüpunkt Gateway/erweitert/App die Funktion verbinden wählen.

Links