Hue

Aus FHEMWiki
Version vom 20. Januar 2022, 20:27 Uhr von Benni (Diskussion | Beiträge) (Link auf neues Tutorial "Conbee/deCONZ im Proxmox LXC-Container (Tutorial)" und Unterscheidung Proxmox-VM und Proxmox LXC-Container)
Zur Navigation springen Zur Suche springen
HUEBridge
Zweck / Funktion
Anbindung Bridge des Philips Hue Lighting System
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Zigbee
Modulname 30_HUEBridge.pm
Ersteller Andre (Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


HUEDevice
Zweck / Funktion
Ansteuerung Geräte des Philips Hue Lighting System über HUEBridge
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Zigbee
Modulname 31_HUEDevice.pm
Ersteller Andre (Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!

HUE-Bridge

Einrichtung in FHEM

Die Einrichtung ist wirklich einfach. Mit

define Wiesollesheißen HUEBridge 192.168.0.123

wird die Bridge eingebunden. (Die IP-Adresse gegen die der HUE Bridge ersetzen oder den DNS Namen.) Dann einfach auf den runden Knopf in der Mitte der Bridge drücken und sie wird von FHEM erkannt. Die drei Lampen des Starterkits werden automatisch erkannt und sind ansteuerbar -> fertig!

WICHTIG: danach in FHEM einmal die Konfiguration speichern damit der Pairing-Key gesichert wird. Sonst muss beim nächsten FHEM-Neustart das Pairing erneut durchgeführt werden.

Falls die Hue Bridge resetet wurde bleibt der Status auf "paired" und geht nicht mehr auf connected. Um das pairing erneut durchzuführen, muss das Attribut "key" gelöscht werden.

Nonblocking

Wenn man möchte, dass die Versuche, die HUEBridge zu kontaktieren, FHEM nicht blockieren, sollte man

attr <HUEBridge_Name> httpUtils 1

setzen.

HUE-Device

Als Gerät können alle Hue und LightLink kompatiblen Modelle verwendet werden, die sich an der Bridge anlernen lassen. Dies sind unter anderem:

  • HueBulbs (E27, GU10, Lux, White, ...)
  • Hue Beyond und Phoenix
  • Friends of Hue LightStrips und LivingColors Bloom
  • LivingColors ab gen2
  • LivingColors Bloom, Iris und Aura
  • LivingWhites Energiesparlampen
  • LivingWhites Leuchtenadapter
  • LivingWhites Bulbs
  • Hue Tap und Hue Dimmer (mit Einschränkungen)
  • dresden elektronik Vorschaltgeräte
  • OSRAM LIGHTIFY Lampen (an der Hue Bridge angelernt)
  • Müller Licht tint
  • ...

Diese sind jeweils über eine Bridge (HueBridge) steuerbar. Die LivingColors und LivingWhites Geräte sind vorher mit Hilfe einer LivingColors oder LivingWhites Fernbedienung an der Bridge anzulernen.

Es werden auch alle HUE Sensoren (Taster, Bewegungsmelder) unterstützt. Diese werden aber nicht per autocreate angelegt, sondern müssen manuell definiert werden. Hier ist auf ein passendes Polling-Intervall zu achten (siehe: HUE Dimmer Switch).

Sensoren (und Aktoren) lassen sich Konfigurieren (parameter Einstellen) und eigene Set- und Get- Kommandos im definieren.

Mögliche andere Gateways

HUEDevice Client-Devices können (mit leicht unterschiedlichem Funktionsumfang) auch mit den folgenden Gateways anderer Hersteller und dem zugehörigen Bridge-Device verwendet werden:

Das HUEBridge Modul erkennt, wenn ein Leuchtmittel zwischen einer Hue und einer deCONZ Bridge (oder umgekehrt) wechselt und verschiebt das zugehörige HUEDevice in FHEM jeweils zum richtigen Bridge-Device. D.h. wenn z.B. zum Firmwareupdate die Bridge gewechselt wird, ist auf FHEM Seite nichts weiter zu tun.

Grundlagen - Farbmodelle

Ein HueDevice kann per set-Befehl über unterschiedliche Farbmodelle gesteuert werden. In der folgenden Tabelle ist dargestellt, welche Werte-Kombinationen sinnvoll sind:

Farbmodell Bestandteile Beispiel
xyY x- und y-Koordinate im Farbraum, Y ist die Helligkeit set bulb1 xy 0.4595,0.4105 : bri 220
hue,sat,bri Farbwert, Sättigung und Helligkeit set bulb1 hue 14922 : sat 144 : bri 220
ct Farbwert über Farbtemperatur set bulb1 color 2600
rgb Farbbestandteile rot, grün und blau set bulb1 rgb FFC698

Hinweis: Zur Regelung der Helligkeit sind die Befehle bri und pct gleichwertig. bri hat den Bereich 0..254, pct 0..100 .

Das Modul lässt die Mischung von Angaben aus unterschiedlichen Farbmodellen technisch zu, jedoch sind diese nicht immer sinnvoll.

HA-Bridge: In der HA-Bridge können virtuelle Devices definiert werden, welche in FHEM als Dimmable light eingebunden und verwendet werden können.

Zusätzlich zu den bereits beschriebenen set-Befehlen kann der Zustand der HA-Bridge-Devices mit Hilfe von habridgeupdate in Kombination mit on, off, pct und bri aktualisiert werden, ohne dass die HA-Bridge einen Schaltbefehl versendet. Beispiel: set bulb1 habridgeupdate : on : pct 50 Details siehe: [1].

Darstellung im Webfrontend

Wenn man die SVG Icons verwendet, ist es sinnvoll, das Attribut color-icons zu setzen. Mit

attr HUEDevice1 color-icons 2

werden z.B. die Farben und der Dimmzustand der Lampe als Icon dargestellt. Damit das ganze funktioniert, muss noch

attr WEB iconPath fhemSVG:openautomation:default

gesetzt werden.

Spezielle Konfigurationsmöglichkeiten

Zur Syntax der nachfolgenden Attribute (für widgets) siehe Patchvorschlag im Forum

setList

Ermöglicht einen indirekten Zugriff auf den Befehl setsensor der HUEBridge.

Beispiele

configList

Ermöglicht einen indirekten Zugriff auf den Befehl configsensor der HUEBridge.

Beispiele

RaspBee & ConBee

Das HUEBridge Modul unterstützt auch die ZigBee Gateway Module RaspBee und ConBee von Dresden Elektronik über die zugehörige deCONZ Software und die Wireless Light Control WebApp und die Phoscon WebApp (kommt zusammen mit deConz). Die hierzu erhältlichen Funk-Vorschaltgeräte sind noch nicht getestet, sollten aber auch funktionieren.

Im diesem Forenbeitrag wird über Details der HUE Module diskutiert, die das deCONZ PushAPI über Websockets unterstützen (die entsprechenden Modulversionen sind mittlerweile regulär verfügbar). Sensoren müssen hier nicht mehr gepollt werden.

Mittlerweile funktioniert die Einbindung der RaspBee und ConBee Module auf einem sehr einfachen Weg. Dieser ist in diesem Forenbeitrag zusammengefasst. Zusätzliche Plugins sind nicht mehr nötig.

Installation von deCONZ in einer Proxmox-VM

Folgende Schritte sind notwendig, um unter Proxmox zu installieren:

  • Installation einer Ubuntu oder Debian VM:
cd /var/lib/vz/template/iso/
wget http://releases.ubuntu.com/18.04/ubuntu-18.04.2-desktop-amd64.iso
oder
cd /var/lib/vz/template/iso/
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.8.0-amd64-xfce-CD-1.iso
  • Weiterreichen des USB Devices in die VM:
Auflistung der verfügbaren USB Geräte:
root@node1:~# lsusb
Bus 002 Device 004: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Der Conbee meldet sich als "Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)", hier ist die ID wichtig (0403:6015).
Anschließend kann das USB Gerät an die VM weitergeleitet werden. Der Wert 804 ist durch die ID der VM zu ersetzen.
qm set 804 -usb0 host=0403:6015
  • Installation von deCONZ:
apt-get update && apt-get upgrade -y
wget http://www.dresden-elektronik.de/deconz/ubuntu/beta/deconz-2.05.60-qt5.deb
sudo dpkg -i deconz-2.05.60-qt5.deb 
sudo apt install -f
sudo systemctl enable deconz
reboot now

Installation von deCONZ in einem Proxmox LXC-Container

Conbee/deCONZ im Proxmox LXC-Container (Tutorial)

Installation von deCONZ unter Docker

https://hub.docker.com/r/marthoc/deconz/

Installation von deCONZ auf einem RaspberryPI

Für den ConBee2 kann der guten Installation von Phoscon gefolgt werden. Entweder ihr installiert deCONZ direkt (wie hier beschrieben) oder über einen Docker Container. Der Docker Container hat ein paar Einschränkungen bzgl. Firmware Updates.

Der ausführende Benutzer muss dialout Rechte haben um auf /dev/tty* zugreifen zu dürfen:

sudo gpasswd -a pi dialout

Im Standard wird deCONZ mit dem pi-Benutzer (user id 1000) ausgeführt.

Das deCONZ Repository bei APT hinzufügen (Vorteil davon ist dass später ganz normal mit sudo apt update/upgrade deCONZ aktualisieren könnt):

wget -O - http://phoscon.de/apt/deconz.pub.key | \
           sudo apt-key add -;
sudo sh -c "echo 'deb http://phoscon.de/apt/deconz \
            $(lsb_release -cs) main' > \
            /etc/apt/sources.list.d/deconz.list";
sudo apt update

Mit der Einführung des Raspberry Pi 3 sind noch weitere Einstellungen notwendig. Diese sind hier: Raspberry Pi 3: GPIO-Port Module und Bluetooth – FHEMWiki ausführlich beschrieben.

deCONZ installieren:

sudo apt install deconz

Wenn ihr euren RaspberryPI mit UI betreibt, kann deCONZ über Menu > Programming > deCONZ aufgerufen werden. Es gibt aber auch den Service-Modus, der ohne X11 funktionert. Hierfür die Datei /lib/systemd/system/deconz.service anpassen (ich habe z.B. den Port des Webservers geändert) und den Service wie folgt aktivieren:

systemctl enable deconz.service

HUE auf der Fritzbox

Da auf der FB standardmäßig kein JSON installiert ist, muss dies nachinstalliert werden: Man lädt das JSON-Paket http://search.cpan.org/CPAN/authors/id/M/MA/MAKAMAKA/JSON-2.53.tar.gz, packt es aus und kopiert den Inhalt vom lib-Verzeichnis nach \fhem\lib\perl5\site_perl\5.12.2

HUE auf der Synology Diskstation

Da auf der DS standardmäßig kein JSON installiert ist, muss dies nachinstalliert werden, die Anleitung dazu in diesem Forenbeitrag.