HomeMatic Wired RS485 LAN Gateway: Unterschied zwischen den Versionen

Aus FHEMWiki
(Attribut hmwId berichtigt)
 
(4 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== Vorbemerkungen ==
== Vorbemerkungen ==
Das [http://www.eq-3.de/produkt-detail-wired/items/homematic-wired-rs485-lan-gateway.html HomeMatic Wired RS485 LAN Gateway], kurz HMW-LAN-GW, stellt eine Alternative zum [[Serial/Netzwerk-RS485-Adapter]] dar. Laut Hersteller arbeitet das HMW-LAN-GW zwar nur mit der CCU2 als HomeMatic Wired Interface zusammen. Das stimmt so aber nicht. Daher kann das Modul ohne Probleme zusammen mit FHEM zur Kommunikation mit HomeMatic Wired Geräten benutzt werden.
Das [http://www.eq-3.de/produkt-detail-wired/items/homematic-wired-rs485-lan-gateway.html HomeMatic Wired RS485 LAN Gateway], kurz HMW-LAN-GW, stellt eine Alternative zum [[Serial/Netzwerk-RS485-Adapter]] dar. Laut Hersteller arbeitet das HMW-LAN-GW nur mit der CCU2 als HomeMatic Wired Interface zusammen. Tatsächlich kann das Modul aber zusammen mit FHEM zur Kommunikation mit HomeMatic Wired Geräten benutzt werden. Allerdings gab es mit dem HMW-LAN-GW in der Vergangenheit viele Probleme, so dass der '''Einsatz nicht empfohlen''' wird. 
 


=== HMW-LAN-GW versus Serial/Netzwerk-RS485-Adapter ===
=== HMW-LAN-GW versus Serial/Netzwerk-RS485-Adapter ===
Zeile 13: Zeile 12:


== Einbindung in FHEM ==
== Einbindung in FHEM ==
Zum Einbinden des HMW-LAN-GW müssen folgende Zeilen in die ''fhem.cfg'' eintragen werde:
Das Einbinden des HMW-LAN-GW geht mit folgendem Kommando:
 
define HM485_LAN HM485_LAN <IP Adresse>:1000
attr HM485_LAN hmwId 00000001
attr HM485_LAN room HM485
 
Der Name HM485_LAN kann frei vergeben werden.


HM485_LAN kennt mehrere Attribute, wichtig ist vor allem, für das HMW-LAN-GW eine Adresse festzulegen. Die HMW-ID muss eine 8-stellige Hexadezimalzahl sein.
define hm485 HM485_LAN <IP Adresse>:1000
Theoretisch könnten bis zu 256 HMW-LAN-GW angelegt werden. Diese Annahme ist aktuell aber nur Theorie und noch nicht getestet und ggf. mit einigen Problemen verbunden. Die HMW-ID's für die HMW-Interfaces könnten dafür im Bereich von 00000001 - 000000FF gewählt werden.
Der Name (hm485) kann frei vergeben werden.
Da in den HMW-Geräten die HMW-ID der Zentrale aber mit 00000001 vordefiniert, sollte hier aktuell nur diese ID verwendet werden.


Beim Anlegen des HM485_LAN Device wird automatisch eine HMW-ID festgelegt. Diese kann nachträglich über das Attribut hmwId geändert werden. Theoretisch könnten bis zu 255 HMW-LAN-GW angelegt werden.
Diese Annahme ist aktuell aber nur Theorie und noch nicht getestet und ggf. mit einigen Problemen verbunden.
Zu beachten ist auch, dass das HMW-LAN-GW '''gleichzeitig''' nur <ins>eine Netzwerkverbindung</ins> erlaubt. Somit ist ein Gateway auch nur mit einer Zentrale / FHEM-Instanz zur gleichen Zeit nutzbar.
Zu beachten ist auch, dass das HMW-LAN-GW '''gleichzeitig''' nur <ins>eine Netzwerkverbindung</ins> erlaubt. Somit ist ein Gateway auch nur mit einer Zentrale / FHEM-Instanz zur gleichen Zeit nutzbar.


=== HM485_LAN Attribute ===
=== HM485_LAN Attribute ===
* hmwId: Hier muss die HMW-ID angegeben werden. Standardmäßig wird die 00000001 benutzt.
* hmwId: Beim Anlegen des HM485_LAN-Device wird automatisch eine HMW-ID vergeben und in das Attribut hmwId geschrieben. Man kann dieses Attribut manuell ändern, wenn man eine andere HMW-ID haben will. Die HMW-ID muss eine 8-stellige Hexadezimalzahl im Bereich von 00000001 bis 000000FF sein.  
* do_not_notify: FileLog/notify/inform Benachrichtigung für das Gerät ist abgeschaltet.
* do_not_notify: FileLog/notify/inform Benachrichtigung für das Gerät ist abgeschaltet.


Zeile 42: Zeile 36:
* HM485d_gpioTxenCmd0
* HM485d_gpioTxenCmd0
* HM485d_gpioTxenCmd1
* HM485d_gpioTxenCmd1


== Pairen von Geräten ==
== Pairen von Geräten ==
Zeile 49: Zeile 42:


=== Discovery ===
=== Discovery ===
Mit dem Discovery-Befehl wird der gesamte RS485-Bus nach unbekannten HMW Geräten durchsucht.
Mit dem Discovery-Befehl wird der gesamte RS485-Bus nach unbekannten HMW Geräten durchsucht. (Achtung: funktioniert aktuell nicht mit dem HMW-LAN-GW)
   
   
;<code>set HM485_LAN discovery start</code>
;<code>set HM485_LAN discovery start</code>
:Nachdem neue Geräte gefunden worden, werden diese automatisch mit Fhem gepairt.
:Nachdem neue Geräte gefunden worden, werden diese automatisch mit FHEM gepairt.


;<code>get <name> info</code>
;<code>get <name> info</code>
:fragt die Grundsätzlichen Geräteeigenschaften ab. Also Typ, Seriennummer, Firmware-Version und legt die Schalter funktionsfähig in Fhem an.
:fragt die Grundsätzlichen Geräteeigenschaften ab. Also Typ, Seriennummer, Firmware-Version und legt die Schalter funktionsfähig in FHEM an.


;<code>get config all</code>
;<code>get config all</code>
Zeile 61: Zeile 54:


== RAW-Befehle ==
== RAW-Befehle ==
Über das HMW-LAN-GW können so genannte RAW-Befehle an die am Bus angeschlossenen Geräte gesendet werden. Mit diesen RAW-Befehlen können z.B. Funktionen ausgelöst werden, die aktuell für ein Gerät noch nicht in Fhem implementiert sind.
Über das HMW-LAN-GW können so genannte RAW-Befehle an die am Bus angeschlossenen Geräte gesendet werden. Mit diesen RAW-Befehlen können z.B. Funktionen ausgelöst werden, die aktuell für ein Gerät noch nicht in FHEM implementiert sind.


'''Beispiel:'''
'''Beispiel:'''
Zeile 68: Zeile 61:
* 01234567 - entspricht hier der Adresse des Gerätes an das der Befehl gesendet werden soll
* 01234567 - entspricht hier der Adresse des Gerätes an das der Befehl gesendet werden soll
* 98 - das so genannte Steuerzeichen (Siehe HMW-Protokoll-Dokumentation)
* 98 - das so genannte Steuerzeichen (Siehe HMW-Protokoll-Dokumentation)
* 00000001 - die HMW-ID der Zentrale (Fhem)
* 00000001 - die HMW-ID der Zentrale (FHEM)
* DDDDDD - das sind die zu sendenden Daten.
* DDDDDD - das sind die zu sendenden Daten.



Aktuelle Version vom 16. Januar 2018, 18:27 Uhr

Vorbemerkungen

Das HomeMatic Wired RS485 LAN Gateway, kurz HMW-LAN-GW, stellt eine Alternative zum Serial/Netzwerk-RS485-Adapter dar. Laut Hersteller arbeitet das HMW-LAN-GW nur mit der CCU2 als HomeMatic Wired Interface zusammen. Tatsächlich kann das Modul aber zusammen mit FHEM zur Kommunikation mit HomeMatic Wired Geräten benutzt werden. Allerdings gab es mit dem HMW-LAN-GW in der Vergangenheit viele Probleme, so dass der Einsatz nicht empfohlen wird.

HMW-LAN-GW versus Serial/Netzwerk-RS485-Adapter

Auf dem freien Markt gibt es jede Menge Serial / USB / Netzwerk zu RS485 Adapter. Diese Adapter gibt es teilweise bereits für wenige Euro und können zumeist als HMW Interface eingesetzt werden. Eine Liste dieser Adapter gibt es hier: Serial/Netzwerk-RS485-Adapter Da diese Adapter keine eigene "Intelligenz" besitzen, ist hier zum Betrieb zusätzlich ein Daemon (hm485d.pl) erforderlich. Dieser wird aber, wenn entsprechend konfiguriert, automatisch gestartet und läuft in der Regel unbemerkt im Hintergrund.

Vorbereitung

Bevor man das HMW-LAN-GW mit FHEM nutzen kann, müssen noch Einstellungen vorgenommen werden. Dazu braucht man die Software NetFinder. Diese Java-Anwendung sollte plattformübergreifend funktionieren. Mit diesem Programm muss die netzwerkseitige AES-Verschlüsselung am HMW-LAN-GW abgeschaltet werden. Ansonsten kann FHEM derzeit nicht mit dem Gateway kommunizieren. Mit dieser Software lässt sich auch die IP-Adresse des Gateways ändern, falls kein DHCP benutzt werden soll.

Einbindung in FHEM

Das Einbinden des HMW-LAN-GW geht mit folgendem Kommando:

define hm485 HM485_LAN <IP Adresse>:1000

Der Name (hm485) kann frei vergeben werden.

Beim Anlegen des HM485_LAN Device wird automatisch eine HMW-ID festgelegt. Diese kann nachträglich über das Attribut hmwId geändert werden. Theoretisch könnten bis zu 255 HMW-LAN-GW angelegt werden. Diese Annahme ist aktuell aber nur Theorie und noch nicht getestet und ggf. mit einigen Problemen verbunden. Zu beachten ist auch, dass das HMW-LAN-GW gleichzeitig nur eine Netzwerkverbindung erlaubt. Somit ist ein Gateway auch nur mit einer Zentrale / FHEM-Instanz zur gleichen Zeit nutzbar.

HM485_LAN Attribute

  • hmwId: Beim Anlegen des HM485_LAN-Device wird automatisch eine HMW-ID vergeben und in das Attribut hmwId geschrieben. Man kann dieses Attribut manuell ändern, wenn man eine andere HMW-ID haben will. Die HMW-ID muss eine 8-stellige Hexadezimalzahl im Bereich von 00000001 bis 000000FF sein.
  • do_not_notify: FileLog/notify/inform Benachrichtigung für das Gerät ist abgeschaltet.

Die folgenden Attribute sind für das HMW-LAN-GW irrelevant:

  • HM485d_bind
  • HM485d_startTimeout
  • HM485d_device
  • HM485d_serialNumber
  • HM485d_logfile
  • HM485d_detatch
  • HM485d_logVerbose
  • HM485d_gpioTxenInit
  • HM485d_gpioTxenCmd0
  • HM485d_gpioTxenCmd1

Pairen von Geräten

Jedes HM Geräte muss vor Verwendung mit der Zentrale, hier also FHEM, gepairt werden. Anders als bei den HomeMatic-Funk-Geräten erfolgt das Pairing bei HMW automatisch, sobald ein Gerät das erste Mal eine Nachricht über den Bus versendet. Alternativ kann das Pairing auch durch das Absetzen eines Discovery-Befehls ausgelöst werden. Beim Pairen werden die Geräteadressen FHEM bekannt gemacht. Die Adresse der HMW Geräte ist nicht frei wählbar, sondern fest in den Geräten eingestellt. Alle HMW-Geräte haben standardtmäßig die Adresse 00000001 als Zentralen-Adresse gespeichert.

Discovery

Mit dem Discovery-Befehl wird der gesamte RS485-Bus nach unbekannten HMW Geräten durchsucht. (Achtung: funktioniert aktuell nicht mit dem HMW-LAN-GW)

set HM485_LAN discovery start
Nachdem neue Geräte gefunden worden, werden diese automatisch mit FHEM gepairt.
get <name> info
fragt die Grundsätzlichen Geräteeigenschaften ab. Also Typ, Seriennummer, Firmware-Version und legt die Schalter funktionsfähig in FHEM an.
get config all
liest den gesamten benutzten EEprom aus. Zu je 16 Byte Blöcken. TODO: wozu braucht man das?

RAW-Befehle

Über das HMW-LAN-GW können so genannte RAW-Befehle an die am Bus angeschlossenen Geräte gesendet werden. Mit diesen RAW-Befehlen können z.B. Funktionen ausgelöst werden, die aktuell für ein Gerät noch nicht in FHEM implementiert sind.

Beispiel:

set HM485_LAN RAW 01234567 98 00000001 DDDDDD
  • 01234567 - entspricht hier der Adresse des Gerätes an das der Befehl gesendet werden soll
  • 98 - das so genannte Steuerzeichen (Siehe HMW-Protokoll-Dokumentation)
  • 00000001 - die HMW-ID der Zentrale (FHEM)
  • DDDDDD - das sind die zu sendenden Daten.

Da zum Senden von RAW-Befehlen Kenntnisse über das HMW-Protokoll vorhanden sein sollten, lohnt sich ein Blick in die HMW-Protokoll-Doku


Funktionale Beispiele:

# Rollladenaktor öffnen
set HM485_LAN RAW 01234567 98 00000001 7802C8

# Rollladenaktor stoppen
set HM485_LAN RAW 01234567 98 00000001 7802C9

# Rollladenaktor schließen
set HM485_LAN RAW 01234567 98 00000001 780200

# erster Ausgang (Relais) eines HMW-IO-12-Sw14-DR ein
set HM485_LAN RAW 01234567 98 00000001 730003FF

# erster Ausgang (Relais) eines HMW-IO-12-Sw14-DR aus
set HM485_LAN RAW 01234567 98 00000001 73000000


Wechsel von HMW-LAN-GW zu Serial/Netzwerk-RS485-Adaptern

Der Wechsel zwischen den verschiedenen Interface-Typen geht einfach und bedarf kein neues Pairing. Ggf. müssen einige interfacespezifische Attribute in der fhem.cfg hinzugefügt bzw. gelöscht werden.

Allerdings ist bei "nicht original"-Adaptern der Einsatz der hm485d.pl notwendig!

Links