HomeMatic Devices pairen: Unterschied zwischen den Versionen
Jab (Diskussion | Beiträge) |
|||
(71 dazwischenliegende Versionen von 16 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
HomeMatic Geräte müssen mit dem für das HomeMatic-Protokoll eingesetzten IO-Device ([[HomeMatic|HomeMatic IOs]]) ''[[Pairing (HomeMatic)|gepairt]]'' (deutsch: "gepaart") werden, damit sie von FHEM gesteuert oder ausgelesen werden können. | |||
Die Adresse eines HomeMatic Gerätes ist nicht frei einstellbar, sondern für jedes Gerät fest vorgegeben. Da die HM-Geräte über eine sehr komplexe Kanalstruktur verfügen, empfiehlt es sich, die Geräte in FHEM per ''autocreate'' Funktion anlegen zu lassen, eine nachträgliche Umbenennung oder manuelle Bearbeitung der erzeugten Konfigurationsdaten ist problemlos möglich. | |||
Zunächst muss man einen [[HomeMatic Installieren|HomeMatic IO installieren]]. | |||
Einige Geräte werden mit aktivierter [[AES Encryption]] ausgeliefert (meistens, aber nicht immer mit SEC im Namen). Das Anlernen an originalen HomeMatic IOs funktioniert ohne Probleme, für alle CUL Derivate muss unbedingt der Hinweis im Artikel AES Encryption im Abschnitt [[AES_Encryption#I.2FO-Device_←→_Gerät|I/O-Device ←→ Gerät]] beachtet werden. '''Die dort beschriebene Installation sollte generell vorgenommen werden!''' | |||
Danach geht es hier weiter: | |||
== Grundlagen == | |||
Durch das Pairing wird ein HM-Gerät genau einem IO-Device zugeordnet. Wenn ein Gerät mit dem IO-Device gepairt ist, kann es darüber gesteuert werden. | |||
Beim Pairing wird die HMID des IO-Device in das Gerät geschrieben. Das Pairing findet also im Wesentlichen im Gerät statt, nicht in FHEM selbst. | |||
Gepairt wird nur das Device. Die Channels sind dem Device untergeordnet und somit implizit auch gepairt. | |||
'''Achtung:''' Ist ein Device gepairt, werden Konfigurationsänderungen über die Zentrale (FHEM) vorgenommen. Man kann u.a. keine Kanäle mehr ''direkt'' peeren (verknüpfen). Stattdessen verwendet man Kommandos in FHEM. Siehe [[HomeMatic Peering Beispiele|peeren]]. | |||
== hmId == | |||
'''Achtung wichtig - Sicherheit!!''' | |||
Zu bemerken ist, dass ein IO-Device eventuell standardmäßig eine ID wie F10000, F11234 oder F11034 von FHEM erhält. Da viele HM-Geräte das IO-Device nur anhand der HMIDs erkennen, können alle in Reichweite der HM-Geräte befindlichen IO-Devices mit der in das HM-Gerät geschriebenen HMID das HM-Gerät steuern. Hinzu kommt, dass die ''autocreate'' Funktion die in Reichweite befindlichen HM-Geräte findet und automatisch einbindet. Nachbarn, die IO-Devices mit der gleichen HMID betreiben, können also HM-Geräte untereinander sehen und steuern! | |||
Es ist daher dringend zu empfehlen, die HMID vor dem Pairing der HM-Geräte mit: | |||
attr <CUL|HMLAN1|AndererIODeviceTyp> hmId <6-stellige Hexadresse> | |||
zu individualisieren. | |||
Diese ist ein 3-Byte hexadezimal-Wert, somit eine 6-stellige Zeichenfolge in '''Großbuchstaben'''. 000000 und FFFFFF sind ungültig. | |||
Wenn HM-Geräte mit der Zentrale [[Pairing (HomeMatic)|gepairt]] werden, wird ihnen diese hmId eingetragen. Wechselt man die hmId müssen '''alle''' damit gepairten Geräte neu gepairt werden. | |||
Die Adresse wird in Grossbuchstaben eingegeben. | |||
== IO-Device in den Pairing-Modus versetzen == | |||
* IO-Device in den "Akzeptiere-Pairing-Requests-Modus" bringen: | |||
set <Name des IO-Device> hmPairForSec 600 | |||
600 bedeutet hier, dass das IO-Device 600 Sekunden, also 10 Minuten lang im Pairing-Modus ist. | |||
Bei aktivem Pairing-Modus gibt das IO-Device folgende ''Internals'' Variable zurück: | |||
hmPair 1 | |||
hmPairSerial <10-stellige Seriennummer> | Alternativ kann | ||
set <Name des IO-Device> hmPairSerial <serial> | |||
genutzt werden. | |||
== Devices pairen == | |||
Das Gerät wird in den Anlern- oder auch Konfigurationsmode versetzt. Es sendet hierzu eine entsprechende Nachricht an alle. | |||
Falls das Gerät einen separaten Anlernknopf hat, ist der normalerweise nur ganz kurz zu drücken. Danach beginnt die LED regelmäßig zu blinken. Eine Ausnahme sind Geräte, bei denen eine Taste im regulären Betrieb für andere Zwecke verwendet wird. Bei einem [[HM-CC-RT-DN Funk-Heizkörperthermostat|Heizkörperthermostat]] z.B. muss die Boost-Taste (Mitte) für mindestens 3 Sekunden gedrückt gehalten werden. | |||
{{Randnotiz|RNText=Hinweis: Das genaue Vorgehen ist vom Gerätetyp abhängig -> unbedingt das Handbuch genau lesen: Stichwort "Anlernen".}} | |||
Hat das Gerät keinen separaten Anlernknopf, muss in der Regel eine Taste solange gedrückt werden, bis die LED anfängt regelmäßig zu blinken. | |||
Kommt der Anlernvorgang in Gang, wird dies durch ein wechselndes, schnelles Blinken signalisiert. Kommt kein Anlernvorgang zustande, blinkt die LED regelmäßig für einen bestimmten Zeitraum (ca. 20 sec). | |||
Ist das Gerät schon angelernt, werden bei batteriebetriebenen Geräten eventuell auch noch nicht übertragene Daten gesendet. Dabei blinkt die LED auch unregelmäßig. | |||
In FHEM werden nun: | |||
* alle fehlenden Devices und Channels angelegt | |||
* das Register <code>pairCentral</code> im Device gesetzt. | |||
Ein <code>save</code> danach sichert die neu angelernten Geräte in der Konfiguration. | |||
Hinweis: Auch mit <code>hmPairForSec</code> kann jeweils nur '''ein''' Gerät angelernt werden. Für mehrere Geräte den Vorgang bitte wiederholen. | |||
== Pairing verifizieren == | |||
Nur weil ein Gerät angelegt wurde, heißt das '''nicht''', dass es auch gepaired ist. In den Readings eines Devices muss stehen (list <name> oder im Webinterface): | |||
R_pairCentral 0xABCDEF | |||
ABCDEF steht dabei für die HMID des IO-Device (zB CUL). Wurde für das IO-Device kein attribute mit einer individuellen HMID gesetzt, sollte hier die Standard-ID F11034 stehen. Die führende 0x steht für den Hinweis auf eine HEX-Adresse. | |||
Ist das Pairing noch nicht abgeschlossen, kann man nach kurzer Pause den Befehl: | |||
set <HM-Gerät> getConfig | |||
absetzen, um zu prüfen, ob sich der Status zwischenzeitlich geändert hat. Wenn das Reading R_pairCentral nicht auftaucht oder der Wert mit set_ beginnt, hat das Pairing '''nicht''' geklappt. Man kann entweder: | |||
* noch einmal probieren, ein getConfig auszulösen - vielleicht hat das Lesen nicht funktioniert | |||
* noch einmal pairen - das schadet nichts | |||
* die Anlerntaste / Configtaste / irgendeine Taste am Gerät (hängt vom konkreten Device ab) wiederholt drücken um die Datenübertragung anzustoßen. | |||
Alternativ kann man auch mit HMInfo einen Config check durchführen: | |||
define hm HMInfo | |||
get hm configCheck | |||
== Vorgehen bei Problemen == | |||
Wenn das Pairing nicht erfolgreich ist, das Gerät sich also nicht steuern lässt, ist es möglich, dass es schon bzw. noch mit einem anderen IO-Device gepairt ist. Dann das Gerät in den Auslieferungszustand bringen (siehe Handbuch, oft Knopf mindestens 5 Sekunden drücken, bis es blinkt, dann loslassen und nochmals 5 Sekunden drücken, bis es schneller blinkt) und danach erneut pairen. Dieses Vorgehen ist u. U. auch nach einem Wechsel des HomeMatic [[Interface|Interfaces]] notwendig. | |||
Alternativ kann Auflösung/Reset des Pairings per Befehl in FHEM erfolgen. Siehe dazu unten. | |||
Wenn das zu pairende Geräte ein Empfänger ist, kann mit FHEM per Telnet oder in der Kommandozeile des Webinterfaces folgendes Kommando abgesetzt werden: | |||
set <Name des IO-Device> hmPairSerial <10-stellige Seriennummer> | |||
Die 10-stellige Seriennummer ist beim Empfängern idR. auf der Rückseite des Geräte aufgedruckt. Die Seriennummer fängt normalerweise mit Buchstaben an und endet mit Zahlen. | Die 10-stellige Seriennummer ist beim Empfängern idR. auf der Rückseite des Geräte aufgedruckt. Die Seriennummer fängt normalerweise mit Buchstaben an und endet mit Zahlen. | ||
Es gilt auch sicherzustellen, dass das zu pairende Gerät nicht bereits zuvor mit der | Es gilt auch sicherzustellen, dass das zu pairende Gerät nicht bereits zuvor mit der HomeMatic Config Software gepairt wurde. Ist dies der Fall, so sollte das Pairing in der HomeMatic Config Software gelöscht und das Pairing in FHEM erneut durchgeführt werden. | ||
Beim Pairen ist, wie im normalen Betrieb auch, ein Mindestabstand (etwa 1-2 Meter) zwischen dem Sender der Zentrale (CUL, HMLAN etc.) einzuhalten, da die Funkempfänger sonst mit Übersteuerung reagieren und keine Kommunikation zustande kommt. | |||
Außerdem kann die Funklast beim Auslesen einer umfangreichen Konfiguration eines Gerätes bereits nach wenigen Versuchen das Limit der [[1%25_Regel]] erreichen. Sollte also scheinbar keine Kommunikation stattfinden können, ist auch zu prüfen, ob der Zentralensender sich deswegen temporär deaktiviert hat. | |||
Wer einen CUL für HomeMatic verwendet, sollte eine speziell für den Betrieb mit HomeMatic optimierte CUL-firmware ([https://forum.fhem.de/index.php/topic,24436.0.html TimeStamp Firmware]) verwenden. | |||
Die Webseite [https://www.christian-luetgens.de/homematic/hintergrund/ablernen/Ablernen.htm#chapter_3 Anlernen, ablernen, entfernen und zurücksetzen von Geräten] scheint allerdings nötige Maßnahmen/Probleme beim Pairen deutlich präziser/detaillierter zu beschreiben. | |||
== Gezieltes Pairing == | |||
Bei bereits bekanntem HM-Gerät kann man mit: | |||
set <Name HM-Gerät> pair | |||
das Pairing überschreiben. Es funktioniert aber nur, wenn schon ein IO-Device eingetragen ist. | |||
= | == Pairing lösen == | ||
Das Pairing kann mit: | |||
set < | set <Name HM-Gerät> unpair | ||
gelöst werden. | |||
[[Kategorie:HomeMatic Components]] | |||
[[Kategorie:HOWTOS]] | [[Kategorie:HOWTOS]] |
Aktuelle Version vom 15. Januar 2022, 11:39 Uhr
HomeMatic Geräte müssen mit dem für das HomeMatic-Protokoll eingesetzten IO-Device (HomeMatic IOs) gepairt (deutsch: "gepaart") werden, damit sie von FHEM gesteuert oder ausgelesen werden können.
Die Adresse eines HomeMatic Gerätes ist nicht frei einstellbar, sondern für jedes Gerät fest vorgegeben. Da die HM-Geräte über eine sehr komplexe Kanalstruktur verfügen, empfiehlt es sich, die Geräte in FHEM per autocreate Funktion anlegen zu lassen, eine nachträgliche Umbenennung oder manuelle Bearbeitung der erzeugten Konfigurationsdaten ist problemlos möglich.
Zunächst muss man einen HomeMatic IO installieren.
Einige Geräte werden mit aktivierter AES Encryption ausgeliefert (meistens, aber nicht immer mit SEC im Namen). Das Anlernen an originalen HomeMatic IOs funktioniert ohne Probleme, für alle CUL Derivate muss unbedingt der Hinweis im Artikel AES Encryption im Abschnitt I/O-Device ←→ Gerät beachtet werden. Die dort beschriebene Installation sollte generell vorgenommen werden!
Danach geht es hier weiter:
Grundlagen
Durch das Pairing wird ein HM-Gerät genau einem IO-Device zugeordnet. Wenn ein Gerät mit dem IO-Device gepairt ist, kann es darüber gesteuert werden.
Beim Pairing wird die HMID des IO-Device in das Gerät geschrieben. Das Pairing findet also im Wesentlichen im Gerät statt, nicht in FHEM selbst.
Gepairt wird nur das Device. Die Channels sind dem Device untergeordnet und somit implizit auch gepairt.
Achtung: Ist ein Device gepairt, werden Konfigurationsänderungen über die Zentrale (FHEM) vorgenommen. Man kann u.a. keine Kanäle mehr direkt peeren (verknüpfen). Stattdessen verwendet man Kommandos in FHEM. Siehe peeren.
hmId
Achtung wichtig - Sicherheit!!
Zu bemerken ist, dass ein IO-Device eventuell standardmäßig eine ID wie F10000, F11234 oder F11034 von FHEM erhält. Da viele HM-Geräte das IO-Device nur anhand der HMIDs erkennen, können alle in Reichweite der HM-Geräte befindlichen IO-Devices mit der in das HM-Gerät geschriebenen HMID das HM-Gerät steuern. Hinzu kommt, dass die autocreate Funktion die in Reichweite befindlichen HM-Geräte findet und automatisch einbindet. Nachbarn, die IO-Devices mit der gleichen HMID betreiben, können also HM-Geräte untereinander sehen und steuern!
Es ist daher dringend zu empfehlen, die HMID vor dem Pairing der HM-Geräte mit:
attr <CUL|HMLAN1|AndererIODeviceTyp> hmId <6-stellige Hexadresse>
zu individualisieren.
Diese ist ein 3-Byte hexadezimal-Wert, somit eine 6-stellige Zeichenfolge in Großbuchstaben. 000000 und FFFFFF sind ungültig. Wenn HM-Geräte mit der Zentrale gepairt werden, wird ihnen diese hmId eingetragen. Wechselt man die hmId müssen alle damit gepairten Geräte neu gepairt werden.
Die Adresse wird in Grossbuchstaben eingegeben.
IO-Device in den Pairing-Modus versetzen
- IO-Device in den "Akzeptiere-Pairing-Requests-Modus" bringen:
set <Name des IO-Device> hmPairForSec 600
600 bedeutet hier, dass das IO-Device 600 Sekunden, also 10 Minuten lang im Pairing-Modus ist.
Bei aktivem Pairing-Modus gibt das IO-Device folgende Internals Variable zurück:
hmPair 1
Alternativ kann
set <Name des IO-Device> hmPairSerial <serial>
genutzt werden.
Devices pairen
Das Gerät wird in den Anlern- oder auch Konfigurationsmode versetzt. Es sendet hierzu eine entsprechende Nachricht an alle.
Falls das Gerät einen separaten Anlernknopf hat, ist der normalerweise nur ganz kurz zu drücken. Danach beginnt die LED regelmäßig zu blinken. Eine Ausnahme sind Geräte, bei denen eine Taste im regulären Betrieb für andere Zwecke verwendet wird. Bei einem Heizkörperthermostat z.B. muss die Boost-Taste (Mitte) für mindestens 3 Sekunden gedrückt gehalten werden.
Hat das Gerät keinen separaten Anlernknopf, muss in der Regel eine Taste solange gedrückt werden, bis die LED anfängt regelmäßig zu blinken.
Kommt der Anlernvorgang in Gang, wird dies durch ein wechselndes, schnelles Blinken signalisiert. Kommt kein Anlernvorgang zustande, blinkt die LED regelmäßig für einen bestimmten Zeitraum (ca. 20 sec). Ist das Gerät schon angelernt, werden bei batteriebetriebenen Geräten eventuell auch noch nicht übertragene Daten gesendet. Dabei blinkt die LED auch unregelmäßig. In FHEM werden nun:
- alle fehlenden Devices und Channels angelegt
- das Register
pairCentral
im Device gesetzt.
Ein save
danach sichert die neu angelernten Geräte in der Konfiguration.
Hinweis: Auch mit hmPairForSec
kann jeweils nur ein Gerät angelernt werden. Für mehrere Geräte den Vorgang bitte wiederholen.
Pairing verifizieren
Nur weil ein Gerät angelegt wurde, heißt das nicht, dass es auch gepaired ist. In den Readings eines Devices muss stehen (list <name> oder im Webinterface):
R_pairCentral 0xABCDEF
ABCDEF steht dabei für die HMID des IO-Device (zB CUL). Wurde für das IO-Device kein attribute mit einer individuellen HMID gesetzt, sollte hier die Standard-ID F11034 stehen. Die führende 0x steht für den Hinweis auf eine HEX-Adresse.
Ist das Pairing noch nicht abgeschlossen, kann man nach kurzer Pause den Befehl:
set <HM-Gerät> getConfig
absetzen, um zu prüfen, ob sich der Status zwischenzeitlich geändert hat. Wenn das Reading R_pairCentral nicht auftaucht oder der Wert mit set_ beginnt, hat das Pairing nicht geklappt. Man kann entweder:
- noch einmal probieren, ein getConfig auszulösen - vielleicht hat das Lesen nicht funktioniert
- noch einmal pairen - das schadet nichts
- die Anlerntaste / Configtaste / irgendeine Taste am Gerät (hängt vom konkreten Device ab) wiederholt drücken um die Datenübertragung anzustoßen.
Alternativ kann man auch mit HMInfo einen Config check durchführen:
define hm HMInfo get hm configCheck
Vorgehen bei Problemen
Wenn das Pairing nicht erfolgreich ist, das Gerät sich also nicht steuern lässt, ist es möglich, dass es schon bzw. noch mit einem anderen IO-Device gepairt ist. Dann das Gerät in den Auslieferungszustand bringen (siehe Handbuch, oft Knopf mindestens 5 Sekunden drücken, bis es blinkt, dann loslassen und nochmals 5 Sekunden drücken, bis es schneller blinkt) und danach erneut pairen. Dieses Vorgehen ist u. U. auch nach einem Wechsel des HomeMatic Interfaces notwendig.
Alternativ kann Auflösung/Reset des Pairings per Befehl in FHEM erfolgen. Siehe dazu unten.
Wenn das zu pairende Geräte ein Empfänger ist, kann mit FHEM per Telnet oder in der Kommandozeile des Webinterfaces folgendes Kommando abgesetzt werden:
set <Name des IO-Device> hmPairSerial <10-stellige Seriennummer>
Die 10-stellige Seriennummer ist beim Empfängern idR. auf der Rückseite des Geräte aufgedruckt. Die Seriennummer fängt normalerweise mit Buchstaben an und endet mit Zahlen.
Es gilt auch sicherzustellen, dass das zu pairende Gerät nicht bereits zuvor mit der HomeMatic Config Software gepairt wurde. Ist dies der Fall, so sollte das Pairing in der HomeMatic Config Software gelöscht und das Pairing in FHEM erneut durchgeführt werden.
Beim Pairen ist, wie im normalen Betrieb auch, ein Mindestabstand (etwa 1-2 Meter) zwischen dem Sender der Zentrale (CUL, HMLAN etc.) einzuhalten, da die Funkempfänger sonst mit Übersteuerung reagieren und keine Kommunikation zustande kommt. Außerdem kann die Funklast beim Auslesen einer umfangreichen Konfiguration eines Gerätes bereits nach wenigen Versuchen das Limit der 1%_Regel erreichen. Sollte also scheinbar keine Kommunikation stattfinden können, ist auch zu prüfen, ob der Zentralensender sich deswegen temporär deaktiviert hat.
Wer einen CUL für HomeMatic verwendet, sollte eine speziell für den Betrieb mit HomeMatic optimierte CUL-firmware (TimeStamp Firmware) verwenden.
Die Webseite Anlernen, ablernen, entfernen und zurücksetzen von Geräten scheint allerdings nötige Maßnahmen/Probleme beim Pairen deutlich präziser/detaillierter zu beschreiben.
Gezieltes Pairing
Bei bereits bekanntem HM-Gerät kann man mit:
set <Name HM-Gerät> pair
das Pairing überschreiben. Es funktioniert aber nur, wenn schon ein IO-Device eingetragen ist.
Pairing lösen
Das Pairing kann mit:
set <Name HM-Gerät> unpair
gelöst werden.