Philips Hue Gateway in Home Assistant einbinden

Philips Hue Gateway in Home Assistant einbinden

Philips Hue Gateway in Home Assistant einbinden – Was wir benötigen

Da Home Assistant eine vollständige Integration von Philips Hue besitzt benötigen wir nur ein Gateway:

 

Die Hue Bridge lässt sich einfach nach der beiliegende Anleitung in ein Netzwerk einbinden.

  • Hue Bridge mit dem Netzwerk Verbinden
  • App aus dem App-Store herunterladen
  • App und Hue Bridge Verbinden

Konfiguration in Home Assistant

Die Konfiguration ist mehr als einfach wenn der „Discovery“ Modus aktiviert ist:


# configuration.yaml
discovery:

Home Assistant durchsucht das Netzwerk automatisch und bietet die gefundenen Hue Gateways/Bridges in der Oberfläche an.

 

Manuelle Konfiguration ab Version 0.6

Aber auch wenn der Discovery Modus nicht aktiv ist lässt sich die Hue Bridge einbinden.

Hierzu muss aber die IP-Adresse der Hue-Bridge bekannt sein:


# configuration.yaml
hue:
  bridges:
    - host: 192.168.178.25

 

 

Home Assistant schreibt nun eine phue*.conf Datei in das config Verzeichnis um sie den Zugriffsschlüssel zur Hue Bridge zu merken.

Szenen als Schalter in Home Assistant darstellen

Home Assistant UI Switch

Möchtet ihr viele Lampen mit nur einem Schalter steuern gibt es eine gute Möglichkeit dies mit Home Assistant zu tun.

Lampen mit Szenen zusammenfassen

Mit einer Szene schalte ich meine komplette Ambientebeleuchtung im Haus.

Insgesamt sind es vier Ikea Tradfri Birnen und zwei Z-Wave Relais die im Schaltkasten eingebaut sind.

Der Vorteil ist das ich nicht nur die Lampen ein und aus schalten kann sondern bei den Tradfri Lampen auch den Dimm-Faktor angebe:

scene:
  - name: haus_ambientebeleuchtung_an
    entities:
      light.wz_nahmaschine:
        state: on
        brightness: 10
      light.wz_stehlampe:
        state: on
        brightness: 10
      light.ku_kochinsel_links:
        state: on
        brightness: 10
      light.ku_kochinsel_rechts:
        state: on
        brightness: 10
      switch.ke_haus_ambiente_licht_fibaro_fgs223_switch:
        state: on
      switch.ez_stehleuchte_steckdose_fibaro_fgwpf102_switch:
        state: on

Die gleiche Szene muss nochmal zum ausschalten der Lampen angelegt werden.

Szenen als Schalter in Home Assistant

Nun sieht eine Szene in der UI von Home Assistant nicht wirklich ansprechend aus.

Um auch ein Feedback zu bekommen lege ich ein „template“ Switch an:

switch:
  - platform: template
    switches:
      sw_ha_ambientebeleuchtung:
        friendly_name: Haus Ambientebeleuchtung
        value_template: "{{ is_state('switch.ke_haus_ambiente_licht_fibaro_fgs223_switch', 'on') }}"
        turn_on:
          service: scene.turn_on
          entity_id: scene.haus_ambientebeleuchtung_an
        turn_off:
          service: scene.turn_on
          entity_id: scene.haus_ambientebeleuchtung_aus

Der Switch schaltet die Szenen „an“ und „aus“.

Zusätzlich nimmt der Schalter den Status von dem Switch „ke_haus_ambiente_licht_fibaro_fgs223_switch“ an.

 

Somit spart man viel Platz in der UI und steuert seine Szenen auch mit einem sichtbaren Status (was ansonsten nicht möglich wäre).

Ambiente und helle Außenbeleuchtung in einem – Die intelligente Außenbeleuchtung

Meine Frau hat mich gebeten unsere Außenbeleuchtung „schön“ zu machen.
Das Problem sind aber die ca. 19 Lampen die sie damit gemeint hat.
Wie also bekommt man es hin eine schöne Ambientebeleuchtung und eine helle Außenbeleuchtung zu vereinen, ohne dabei neue Kabel verlegen zu müssen?

Herausgekommen ist ein Konzept das auf bewährte Technologien setzt (Z-Wave und ZigBee), bezahlbar ist, und trotzdem individuell, automatisierbar und erweiterbar ist.

 

Z-Wave und ZigBee

Die Protokolle Z-Wave und ZigBee

Nach meinen bisherigen Erfahrungen in der Haussteuerung möchte ich nur auf bewährte Technologien setzen.

Der Grund dafür ist einfach: Sollte ich zu irgendeiner Zeit keine Lust mehr haben meinen Raspberry Pi zu hegen und zu pflegen, müssen alle angeschlossenen Komponenten Plug&Play über ein anderes Steuerungssystem, zbs. Homee, angebunden werden können.

Da Z-wave und ZigBee momentan die zwei bewährtesten Systeme. Die Vorteile sind das viele Firmen diese Standards unterstützen und es somit kein Monopol eines Herstellers gibt. Beide Funkprotokolle bilden ein Mesh-Netzwerk so das die Reichweite mit jedem eingesetzten Gerät steigt. Außerdem Ergänzen sich Z-Wave und ZigBee indem Z-Wave eher für Sensoren und Aktoren genutzt werden kann und ZigBee in der Beleuchtungssparte seine Heimat hat.

 

Gedanken über ZigBee

Um die gleiche Lampe als Ambiente und als normale Außenbeleuchtung nutzen zu können benötigt man eine Dimmfunktion. Mit gut ausgewählten Leuchtmitteln und einem Dimmschalter wäre das kein Problem umzusetzen, wenn, ja wenn meine Frau nicht darauf bestehen würde das nicht alle 19 Lampen in der Ambiente Beleuchtung mit eingebunden sein sollen. Das Carport zum Beispiel soll nicht beleuchtet werden. Genaus wenig die Garage.

Die Lösung könnte nun aussehen das ich überall neue Kabel ziehe (Was bei einer Grundstücksgröße von ein paar hundert Quadratmetern nicht wirklich Spaß macht). Ich kann aber auch einfach ZigBee Leuchtmittel benutzen. Denn damit lässt sich jede einzelne Birne an und ausschalten, selbst wenn an der Lampe Strom anliegt.

Es ermöglicht also folgendes:

  • Ambiente: 17 von 19 Lampen leuchten auf ca. 20% Leuchtstärke
  • Außenlicht: 19 von 19 Lampen leuchten auf 100% Leuchtstärke

Vorrausetzung dafür ist lediglich das jede der 19 Lampen eine Fassung hat in die ein ZigBee Leuchtmittel passt (Beispiel: Ikea Tradfri, GU10, E27, E14)

 

Gedanken über Z-Wave

Was passiert aber nun wenn die Haussteuerung ausfällt? Lassen sich die ganzen ZigBee Birnen dann nicht mehr steuern?

Für dieses Problem gibt es auch eine Lösung, nämlich einen Relaisschalter der den Stromkreis der Außenlampen ein und aus Schalten kann und der zusätzlich über einen Standard Wandschalter schaltbar ist. (zbs. Fibaro Relais Switch FGS-223)

Ikea Tradfri ZigBee Birnen reagieren nämlich folgendermaßen:

  • Wird der Strom weggenommen schalten sich alle Birnen aus (klar, der Strom ist ja weg)
  • Wird der Strom aber wieder angeschaltet gehen alle Birnen in den letzten bekannten „AN“ Status zurück. Selbst die Birnen die vorher „AUS“ waren leuchten ab diesem Zeitpunkt also wieder.

Mit dieser Lösung kann ich also meinen Standard Wandschalter (der schon immer die Außenbeleuchtung gesteuert hat) weiterverwenden und trotzdem über die Haussteuerung (zum Beispiel Home Assistant) jede Lampe einzeln dimmen.

 

Automatisation mit Home Assistant

Home Assistant steuert die Ambiente Beleuchtung voll automatisch. Bei Sonnenuntergang wird das Licht eingeschaltet (nur die gewünschten Birnen) und gedimmt. Am späten Abend wird das Licht wieder ausgeschaltet.

Beim auslösen des Alarms werden alle Lichter eingeschaltet und auf 100% Leuchtkraft gedimmt.

Drückt man auf den konventionellen Schalter werden alle Birnen automatisch eingeschaltet, wenn auch in der letzten Dimm-Einstellung.

 

Fibaro Wall Plug FGWPF-102 in Home Assistant einbinden

)Fibaro Wall Plug FGWPF-102

Der Fibaro Wall Plug (FIBEFGWPF-102) ist ein kleiner, unauffälliger Zwischenstecker der nicht nur über Z-Wave geschaltet werden kann sondern auch noch den Stromverbrauch anzeigt.

 

Einbinden des Fibaro Wall Plug FGWPF-102 in das Z-Wave Netzwerk

Nach dem einstecken in eine Steckdose können wir den Wall Plug in unser Z-Wave Netzwerk einbinden.

Dazu den Kontroller in den Anlern-Modus bringen und am Fibaro Wall Plug 3x den kleinen Knopf an der Oberseite drücken.

Der Wall Plug signalisiert den erfolgreichen Anlernprozess über den LED Ring.

 

Neue Entities in Home Assistant

Ich habe das Z-Wave Gerät in „EZ Stehleuchte Steckdose Fibaro fgwpf102“ umbenannt, daher heissen meine neuen Entities folgendermaßen:

zwave.ez_stehleuchte_steckdose_fibaro_fgwpf102
Zeigt den Status des Geräts an

switch.ez_stehleuchte_steckdose_fibaro_fgwpf102_switch
Zeigt den Schaltzustand der Steckdose an, bzw. schaltet die Steckdose

sensor.ez_stehleuchte_steckdose_fibaro_fgwpf102_power
Zeigt den momentanen Verbrauch an der Steckdose an (in Watt)

sensor.ez_stehleuchte_steckdose_fibaro_fgwpf102_energy
Zeigt den gesamten Verbrauch an der Steckdose an (in kWh)

Home Assistant UI

 

 

Übersicht über das anlernen und auslernen eines Z-Wave Gerätes an einen Kontroller

Z-Wave Logo

 

Die meisten Z-Wave Kontroller und Z-Wave Geräte haben unterschiedliche Methoden wie sie in den „inclusion /pair“ (anlern) und „exclusion/unpair“ (auslern) Modus gesetzt werden.

Die Z-Wave Kontroller:

Name Anlernmodus Auslernmodus
Aeon
Z-Stick S2
(DSA02203-ZWUS)
Kurzer Knopfdruck
=> langsames Blinken
Langer Knopfdruck
=> schnelles Blinken

 

Die Z-Wave Geräte:

Name Anlernmodus Auslernmodus
Aeon
Multisensor Gen 5
(ZW074)
1x Knopfdruck 1x Knopfdruck
Fibaro
Double Switch 2
(FGS-2×3)
3x schneller Knopfdruck auf S1 3x schneller Knopfdruck auf S1
Fibaro
Universalsensor
(FBGS-001)
3x schneller Knopfdruck 3x schneller Knopfdruck
Fibaro
Wall Plug
(FGWPF-102)
3x schneller Knopfdruck 3x schneller Knopfdruck

Fibaro Double Switch 2 FGS-223 in Home Assistant einbinden

 

Fibaro Double Switch 2

Der Fibaro Double Switch 2 (FIBEFGS-223) ist ein kleines Relay mit dem zwei Stromkreise über konventionelle Schalter und Z-Wave geschaltet werden können.

Zusätzlich misst das kleine Gerät den Strom in Watt und kWh und gibt diese Informationen an Home Assistant weiter.

Anschluß des Fibaro Double Switch 2

Der Anschluß ist recht simple: (bei diesen Arbeiten immer vorher den Strom abstellen!)

  • L = Phase (meist braun)
  • N = Neutral (meist blau)
  • Q1 = Erster Stromkreis der geschaltet werden soll
  • Q2 = Zweiter Stromkreis der geschaltet werden soll
  • S1 = Erster Schalter
  • S2 = Zweiter Schalter

Die Schalter können auf durch Taster ersetzt werden, hierfür muss allerdings eine Konfiguration über Z-Wave erfolgen.

Beispiel in eine Schaltkasten: (Die Kabelfarben bei S1 und S2 sind nicht den Regeln entsprechend, daher bitte nicht darauf achten)

Fibaro Double Switch 2 im Schaltkasten

 

Einlernen des Switches

Um den Switch zu pairen drücken wir den Knopf auf dem Aeon Z-Stick ein mal kurz (Der Stick fängt an langsam zu blinken)

Nun Drücken wir 3x schnell hintereinander den Schalter an S1 des Fibaro Double Switch 2.

Der Z-Stick bestätigt nun das Einlernen durch eine Unterbrechung des Blinken.

Nachdem der Stick wieder in den Raspberry Pi gesteckt wurde muss Home Assistant zweimal neu gestartet werden, um alle Entities mit korrekten Namen anzuzeigen.

Neue Entities

Folgende Entities werden nun, unter Anderen, in Home Assistant angezeigt:

Zwei für die Schalter:

  • switch.fibaro_system_fgs223_double_relay_switch_6_0
  • switch.fibaro_system_fgs223_double_relay_switch_6_0_2

Zwei für den aktuellen Stromverbrauch in Watt:

  • sensor.fibaro_system_fgs223_double_relay_power_6_8
  • sensor.fibaro_system_fgs223_double_relay_power_6_8_2

Zwei für den Gesamtverbrauch in kWh:

  • sensor.fibaro_system_fgs223_double_relay_energy_6_0
  • sensor.fibaro_system_fgs223_double_relay_energy_6_0_2

 

Egal wie man nun das Relay auslöst (ob per Schalter oder via Home Assistant) der Status wird in Home Assistant angezeigt und kann auch für Automatismen benutzt werden. Es sind keine weiteren Einstellungen nötig!

 

Fazit:

Meiner Meinung nach ist der Fibaro Double Switch 2 (FGS-223) wirklich empfehlenswert, da man für 45€ ein sehr einfach zu integrierendes und voll funktionierendes Z-Wave Produkt bekommt. Mit dem Konkurrenz Produkt von Philio (PAN04-1b) hatte ich in der Hinsicht weniger Glück.

Aeon Z-Stick – mit Home Assistant Z-Wave Geräte verwalten

In der Z-Wave Welt ist es nicht immer ganz einfach neue Geräte zu verwalten, da es hierfür keine einheitliche Spezifikation gibt. Dieser Blogeintrag soll ein bisschen Licht in die grundlegende Funktionen der Geräteverwaltung in einem Z-Wave Netzwerk bringen.

 

Wichtig sind hierbei zwei Begriffe:

Z-Wave Controller: Das ist der Aeon Labs Z-Stick S2
oder ein anderes Gerät das ein Z-Wave Netzwerk kontrolliert

Z-Wave Gerät: Das kann jeder Sensor oder Aktor sein, den man einbinden möchte

 

Um ein Z-Wave Gerät zu nutzen muss es also immer an den Controller angelernt werden. Die zwei lernen sich also kennen um zu Kommunizieren.

Ein Gerät kann natürlich auch entfernt werden oder im schlimmsten fall sogar ausfallen.

Was dann zu tun ist habe ich in vier einfachen Punkten beschrieben:

 

Neues Gerät anlernen mit dem Aeon Z-Stick

  • USB Stick entfernen
  • 1x kurz drücken am Stick
  • Erfolgreich: Langsames Blinken (Anlernmodus aktiv)
  • Am Gerät drücken (Anleitung beachten)
  • Erfolgreich: Z-Stick blinkt kurz schnell, dann kurz durchgängig.
  • USB Stick einstecken, Home Assistant neu starten

 

Bekanntes Gerät entfernen mit dem Aeon Z-Stick

  • USB Stick entfernen
  • 2 Sekunden gedrückt halten am Stick
  • Erfolgreich: Schnelles Blinken (Entfernmodus aktiv)
  • Am Gerät drücken (Anleitung beachten)
  • Erfolgreich: Z-Stick leuchtet kurz durchgängig.
  • USB Stick einstecken, Home Assistant neu starten

 

Totes Z-Wave Gerät aus Home Assistant entfernen

Sollte ein Z-Wave Gerät nicht antworten wird dies in Home Assistant angezeigt.

Um das Gerät zu entfernen kann ein „Remove Node“ gemacht werden. Dazu wählt man im „Z-Wave Manager“ die entsprechende „Node“ aus und klickt auf „Remove Failed Node“.

Home Asisstent UI Z-Wave Nodes

 

Z-Wave Gerät Reset

Wird ein Z-Wave Gerät nicht mehr benötigt oder verkauft, kann man es vorher resetten.

Dazu wird kein Controller benötigt. Jedoch ist es bei jedem Gerät unterschiedlich wie man einen Reset ausführt.

Beispiel:

Philio PHIEPAN04-1B: Knopf 3x innerhalb von 1,5 Sekunden drücken, danach sofort noch einmal 1x für 5 Sekunden halten bis das Licht ausgeht.

Fibaro Double Switch 2: 3x S1 drücken

Home Assistant Historie auf die eigenen Bedürfnisse anpassen

Die Home Assistant Historie ist eine gute Funktion um Abläufe oder Temperaturen zu überwachen.

 

Die Home Assistant Historie

Mit der steigenden Anzahl an Sensoren wird auch die Historie unübersichtlicher.

Home Assistant Historie

Es gibt verschiedene Möglichkeiten die Historie auf das Wesentliche zu beschränken.

 

Nur bestimmte Entities anzeigen

Um nur bestimmte Entities anzuzeigen reicht folgende Konfiguration:

# Example configuration.yaml entry
history:
  include:
    entities:
      - binary_sensor.mein_rechner
      - sensor.yr_temperature

Es wird in der Historie also nur der Status von „Mein Rechner“ und die „Temperatur“ angezeigt:

Home Assistant Hisotrie Entity

 

Include und Exclude

Benutzen wir nun „exclude“ anstatt „include“ erreichen wir genau das Gegenteil.

# Example configuration.yaml entry
history:
  exclude:
    entities:
      - binary_sensor.mein_rechner
      - sensor.yr_temperature

In diesem Beispiel zeigt die Home Assistant Historie alle Werte, außer „Mein Rechner“ und „Temperatur“, an.

 

Arbeiten mit Domains

Domains sind eine weitere Möglichkeit die Historie von Home Assistant zu beeinflussen.

Schauen wir uns dieses Beispiel an:

# Example configuration.yaml entry
history:
  exclude:
    domains:
      - automation
      - weblink
      - updater
    entities:
      - sensor.last_boot
      - sensor.date

In diesem Beispiel wird eine Reihe von History-Verläufen mittels „exclude“ ausgeblendet.

Die Bereiche „automation“, „weblink“ sowie „updater“ werden von der Historisierung ausgeschlossen. Sie werden also nicht in der Oberfläche angezeigt.

Zusätzliche wird noch der Sensor „last_boot“ und „date“ ausgeschlossen.

Status eines Netzwerkgerätes in Home Assistant anzeigen

Home Assistant kann durch ein einfaches Ping den Status „on“ oder „off“ diverser Netzwerggeräte anzeigen.

Dadurch lassen sich Automatismen wie folgende umsetzen:

Wenn der Fernseher eingeschaltet wird, dimmt das Licht herunter.

 

Konfiguration des „binary_sensor“ für jedes der Netzwerkgeräte

Um ein Netzwerkgerät zu überwachen reicht uns seine IP Adresse:

binary_sensor:
  - platform: ping
    host: 172.30.4.30
    name: Mein Rechner

 

Nun haben wir eine neue Entity „binary_sensor.mein_rechner“ die wir in einer Gruppe anzeigen können:

group:
  Netzwerkgeraete:
    name: Netzwerkgeraete
    entities:
      - binary_sensor.mein_rechner
  Sonstiges_View:
    name: Sonstiges
    view: yes
    entities:
      - group.Netzwerkgeraete

 

Das Ergebnis zeigt den Status des Gerätes mit „on“ oder „off“:

Netzwerkgeräte in Home Assistant

Den Status von Home Assistant per E-Mail verschicken

Home Assistant Status Email Kurz

Ihr wollt einen Status eurer, an Home Assistant angeschlossenen, Geräte von extern sehen, aber möchtet ungern eure Firewall für Zugriff aus dem Internet freigeben?

Dann habe ich hier eine einfache und schnelle Lösung für das Problem.

Das einzige was ihr benötigt ist einen Email-Account allein für Home Assistant.

 

„IMAP Unread Email“ Sensor anlegen

Zuerst legen wir einen neuen Sensor mit der Platform IMAP an.

Wir geben ihm alle Zugangsdaten zum Zugriff auf unser Email Konto.

# configuration.yaml
sensor:
  - platform: imap
    name: imap_state_req
    server: imap.strato.de
    port: 993
    username: a.b@c.de
    password: abc123!

 

„SMTP“ Notification anlegen

Nun benötigen wir noch eine SMTP Notification. Diese „notify“ Komponente wird später die Email verschicken. Auch hier müssen wir alle Zugriffdaten für das Email-Konto eintragen

# configuration.yaml
notify:
  - name: smtp_state_ans
    platform: smtp
    server: smtp.strato.de
    port: 587
    timeout: 15
    sender: a.b@c.de
    starttls: true
    username: a.b@c.de
    password: 123abc!
    recipient:
      - info@c.de
    sender_name: Home Assistant

 

Automatisation erstellen

Jetzt fehlt noch die Automatisation an sich.

Der Trigger löst aus sobald sich der Status unseres IMAP Sensors ändert. Also die Anzahl der ungelesenen Emails im Postfach steigt oder sinkt.

Die Aktion verschickt eine HTML-Email mit HTML-codiertem Inhalt.

Die Konfiguration „images“, mit der .jpg Datei, muss so in der Konfiguration vorhanden sein, ansonsten funktioniert die Aktion nicht. Das scheint ein Bug in Home Assistant zu sein.

# configuration.yaml
automation:
  - id: statreq
    alias: Reagiere auf Status Anfragen
    trigger:
      platform: state
      entity_id: sensor.imap_state_req
    action:
      service: notify.smtp_state_ans
      data_template:
        title: 'Home Assistant Status'
        message: 'Status'
        data:
            images:
                - /home/pi/snapshot1.jpg
            html: >
                 This is my email text!
                 Status Alarmanlage: {{ states.binary_sensor.fibaro_system_fgbs001_universal_binary_sensor_sensor_4_0.state }} 

 

Schicken wir nun eine E-Mail an a.b@c.de erhöht sich die Anzahl der ungelesenen Emails im Postfach und Home Assistant verschickt eine Status E-Mail an info@c.de.

So könnte die E-Mail dann aussehen:

Home Assistant Status Email

 

Der Vorteil an dieser Konfiguration ist das die Status E-mails immer an die vordefinierte Adresse verschickt werden. Dh. selbst wenn jemand diese Funktion ausnutzen möchte bekommt er selber nie eine Status E-Mail zugesandt.