Allgemein
Home Assistant (HASS) ist eine vollständig in Python 3 implementierte Open-Source Home-Automation-Platform (HAP) ähnlich openHAB.
Kernfunktionen sind das Überwachen und Kontrollieren von Smart-Home-Geräten und -Diensten sowie deren Automatisierung.
Installation
Derzeit existieren drei Verfahren zur Installation von Home Assistant:
- Vorgefertigtes SD-Card-Image auf Basis des Betriebssystems ResinOS für verschiedene Embedded Systeme Bsp.: Raspberry Pi
- Manuelle Installation als Python Package
- Automatisierte Installation mittels Konfigurationsmanagement-Tool
Nach Abschluss der Installation ist die Weboberfläche unter der URL http://<IP-Adresse>:8123/ aufrufbar.
Konfiguration
Die gesamte Konfiguration für Home Assistant wird strukturiert in .yaml Dateien abgelegt und kann mit einem Texteditor bearbeitet werden.
In der Hauptkonfigurationsdatei configuration.yaml können mittels include weitere Dateien eingebunden werden.
Geheimnisse wie z.B. Passwörter können in einer separaten secrets.yaml ausgelagert werden, sodass die Konfigurationsdateien sogar auf öffentlichen GIT-Repositories wie Github gespeichert werden können.
Link zu Beispielkonfigurationen
Zusammenspiel mit Loxone Miniserver
Die Kommunikation zwischen Home Assistant und dem Loxone Miniserver funktioniert in beide Richtungen.
Home Assistant → Loxone Miniserver
Beispiel für eine Anwesenheitserkennung durch Home Assistant mit einem Bluetooth Beacon und einer Status-Übermittlung an den Loxone Miniserver
Alternativ siehe auch /wiki/spaces/LOXBERRY/pages/1189741361 oder Anwesenheitserkennung mit Bluetooth (BLE) und G-Tags
Dokumentation:
- https://home-assistant.io/components/notify.rest/
- https://home-assistant.io/components/device_tracker.bluetooth_le_tracker/
- https://home-assistant.io/docs/automation/
- https://www.loxone.com/dede/kb/webservices/
- https://www.loxone.com/dede/kb/virtuelle-ein-und-ausgaenge/
1. Benutzer mit entsprechender Berechtigung für Home Assistant anlegen 2. Virtuellen Eingang (VI) mit der Bezeichnung "presence" erstellen und als Digitaleingang markieren
device_tracker: - platform: bluetooth_le_tracker notify: - name: loxone_presence_home platform: rest resource: http://<Loxone HASS Benutzer>:<Loxone HASS Passwort>@<Loxone Miniserver IP-Adress>/dev/sps/io/presence/on - name: loxone_presence_away platform: rest resource: http://<Loxone HASS Benutzer>:<Loxone HASS Passwort>@<Loxone Miniserver IP-Adress>/dev/sps/io/presence/off automation: - alias: Loxone Presence Home hide_entity: True trigger: - platform: state entity_id: device_tracker.gigaset_gtag state: 'home' action: service: notify.loxone_presence_home data: message: I'm home - alias: Loxone Presence Away hide_entity: True trigger: - platform: state entity_id: device_tracker.gigaset_gtag state: 'not_home' action: service: notify.loxone_presence_away data: message: I'm away
gigaset_gtag: hide_if_away: false mac: BLE_00:11:22:33:44:55 name: Gigaset G-tag Bluetooth Beacon picture: track: true vendor: unknown
Loxone Miniserver → Home Assistant
Beispiel für einen Schalter innerhalb der Loxone, welcher mehrere Phillips Hue Leuchtmittel in einer Stehlampe ein- und ausschalten kann
Alternativ siehe auch Loxone PicoC Programm für Philips Hue
Dokumentation:
- https://home-assistant.io/developers/rest_api/
- https://home-assistant.io/components/light.hue/
- https://www.loxone.com/dede/kb/virtuelle-ein-und-ausgaenge/
Voraussetzungen:
- Alle Hue Leuchtmittel sind mit der Hue Bridge verbunden und können gesteuert werden
- Mehrere Hue Leuchtmittel wurden über die Hue Mobile App zu einer Gruppe mit dem Namen Stehlampe zusammengefasst
- Home Assistant wurde mit der Hue Bridge gepaart
1. Virtuellen Ausgang mit der Adresse zu Home Assistant (Bsp.: http://<IP-Adresse>:8123) erstellen 2. Unter diesem angelegten Virtuellen Ausgang einen Virtuellen Ausgang Befehl erstellen 2.1 Bezeichnung: hue_lights_toggle 2.2 Befehl bei EIN: /api/services/light/turn_on 2.3 HTTP-Erweiterung bei EIN: x-ha-access: <HASS HTTP API Passwort>\nContent-Type: application/json 2.4 HTTP-Post-Befehl bei EIN: { "entity_id":"light.stehlampe" } 2.5 HTTP Methode bei EIN: POST 2.6 Befehl bei AUS: /api/services/light/turn_off 2.7 HTTP-Erweiterung bei AUS: x-ha-access: <HASS HTTP API Passwort>\nContent-Type: application/json 2.8 HTTP-Post-Befehl bei AUS: { "entity_id":"light.stehlampe" } 2.9 HTTP Methode bei AUS: POST
http: api_password: <HASS HTTP API Passwort> light: - platform: hue host: 192.168.1.1