Seit einige Zeit beschäftige mich mit dem Open-Source-Heimautomatisierungssystem Home-Assistant - kurz Hass - und bin im Vergleich mit iobroker, openHAB und FHEM geradezu begeistert - aber dazu vielleicht an anderer Stelle mehr.
Unter den vielen Integrationen von Fremdsystemen ist auch homematic, von dem ich einige Fensterkontakte und Fernbedienungen nutze.
Die homematic-Integration aktiviert man mit einem Eintrag in der Konfigurationsdatei configuration.yaml im Hass-Hauptverzeichnis. So sieht das aus, wenn homegear lokal läuft und man ausschließlich Geräte im 868 MHz Funkband benutzt:
homematic: interfaces: wireless: host: 127.0.0.1
Während kurz nach dem Restart die homematic-Kontakte automatisch als Entities erkannt werden, bleiben die Fernbedienungen zunächst unsichtbar. Erst nach Rückfrage in der übrigens sehr agilen Home-Assistant-Community habe ich verstanden, warum.
Es macht schlicht wenig Sinn, die Fernbedienungsschalter in die Oberfläche zu integrieren, weil sich ihr Status ja immer nur sehr kurzzeitig beim Drücken einer Taste ändert, was optisch wenig attraktiv ist. Stattdessen kann man die Tasten über die von Ihnen generierten Events nutzen.
Die Tasten der Fernbedienung HM-RC-4-3 numeriere ich wie im Bild unten durch:
Jede Taste wird über einen Subchannel gemeldet, die aber aus unerfindlichen Gründen nicht wie die Tasten durchgezählt werden:
Taste | Kanalnummer |
1 | 3 |
2 | 4 |
3 | 1 |
4 | 2 |
Als Adresse benutzt die homematic-Integration die Seriennummer der Geräte, wie sie in der Geräteliste der HomeMatic BidCoS Protokollfamilie in homegear angezeigt wird.
Automatisierung
Die Nutzung der Tasten definiert man über eine Automatisierung. Als Quelle wählt man „Event” mit dem Typ „homematic.keypress”. Die weiteren Daten muss man als yaml-Definition eintragen. Ich finde es sogar übersichtlicher, den gesamten Event als yaml einzutragen.
Das Folgende definiert den Event bei kurzem Druck auf Taste 4:
platform: event event_type: homematic.keypress event_data: name: PEQ0781971 channel: 2 param: PRESS_SHORT
PEQ0781971 ist die Seriennummer der Fernbedienung aus homegear. Der channel definiert die Taste. Die Verschiedenen Arten der Tastendrücke können unter „param” wie folgt eingetragen werden:
Ereignis | Parameter |
kurzer Tastendruck | PRESS_SHORT |
langer Tastendruck | PRESS_LONG |
anhaltender langer Tastendruck | PRESS_CONT |
Taste nach langem Druck loslassen | PRESS_LONG_RELEASE |
Die restliche Automatisierung ist ohne Besonderheiten. So kann man den Tastendruck für beliebige Aktionen nutzen.
Guten Tag,
ich habe schon viele Kommentare gelesen und auch viele Videos geschaut. Du beschreibst das immer gut, aber mein Hass.os zeigt nicht ein Homematic Gerät an. die vielen Videos zeigen alten Versionen. Ich bin ganz neu im Bereich Hass. habe auch alle Befehle von verdrahtet eingefügt und auf mich umgeschrieben irgendwie läuft es nicht.
system Pi 4 /8GB mit 128er sd karte.
hast du vielleicht nocht ein Link Hinweis für mich?
Gruß Patrick
Wenn die Geräte in CCU bzw. homegear funktionieren und die Integration in configuration.yaml eingetragen ist, sollten sie nach einem Neustart des hass automatisch als Entities auftauchen. Das gilt z.B. für Fensterkontakte. Die Fernbedienungen sind nicht als Entities sichtbar und müssen wie oben beschrieben über Events eingebunden werden.
In der Dokumentation (https://www.home-assistant.io/integrations/homematic/) gibt es noch einen Hinweise zur Liste der unterstützten Geräte und zum Firewall der CCU3, möglicherweise liegt da dein Problem.
Hallo erfahrener User,
irgendwie ist die einfach Konfiguration nich zielführend.
Bei mir klappt die Verbindung mit meiner CC3 einfach nicht - ich will es über die alte XML - Verbindung zu schaffen.
So sieht meine CONFIGURATION.YAML aus:
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
tts:
- platform: google_translate
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
homematic:
interfaces:
wireless:
host: 192.168.178.11
resolvenames: „json”
port: 2001
username: „Helmut”
password: „Hier PWD vom Gast”
hosts:
ccu3:
host: 192.168.178.11
port: 2001
username: „Admin”
password: „(Hier PWD vom Admin”
Es sind wie inn der Doku immer zwei Leerzeichen bei den einträgen verwendet.
Gibt es noch was das zu beachten ist?
Gruß,
Helmut