HM-LGW-O-TW-W-EU Funk-LAN Gateway: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Info zu hmId präzisiert)
(→‎Hinweise zum Betrieb mit FHEM: Informationen zum Firmwareupdate hinzugefügt)
Zeile 25: Zeile 25:


Juli 2016: [[HMUARTLGW]] wird über FHEM [[update]] verteilt, damit ist dieses Funkmodul offiziell unterstützt.
Juli 2016: [[HMUARTLGW]] wird über FHEM [[update]] verteilt, damit ist dieses Funkmodul offiziell unterstützt.
=== Firmware ===
Es sollte darauf geachtet werden, dass die beiden Firmware-Versionen des Funk-LAN Gateway aktuell sind (aktuell: Applikation: 1.4.1, LAN: 1.1.5). LAN-Firmwareversionen < 1.1.5 haben Stabilitätsprobleme. Beide Firmware-Versionen können mit den eQ3-Tools unter Linux aktualisiert werden:
(Im folgenden "NEQ0218723" durch die eigene Seriennummer des Funk-LAN Gateway ersetzen und "geheimesLGWPasswort" durch das LGW-Passwort. Falls die Verschlüsselung deaktiviert wurde, dann das -k komplett weglassen.
=== Vorbereitung des Firmwareupdates ===
$ git clone https://github.com/eq-3/occu
...
$ cd occu
$ sudo ln -s $(pwd)/firmware /firmware
$ cd arm-gnueabihf/packages-eQ-3/LinuxBasis/bin (auf ARM) bzw. cd X86_32_Debian_Wheezy/packages-eQ-3/LinuxBasis/bin (auf X86/X86_64)
$ chmod 755 eq3configcmd
=== Update der LAN-Firmware ===
$ LD_LIBRARY_PATH=../lib:../../RFD/lib ./eq3configcmd update-lgw-firmware -u ../../../../firmware/hm-lgw-o-tw-w-eu_update.eq3  -console -l 1 -s NEQ0218723 -k 'geheimesLGWPasswort'
2016/07/28 09:25:24.264 <Info> LAN Gateway Firmware Update...
2016/07/28 09:25:24.265 <Info> Gateway NEQ0218723
2016/07/28 09:25:26.273 <Info> Gateway type is eQ3-HM-LGW-App
cryptEnabled true2016/07/28 09:25:33.313 <Info> Updating firmware....
2016/07/28 09:25:38.467 <Info> Update performed. Waiting for gateway to get ready.
=== Update der Applikationsfirmware ===
$ LD_LIBRARY_PATH=../lib:../../RFD/lib ./eq3configcmd update-coprocessor -u -f -c -l 0 -d ../../../../firmware -s NEQ0218723 -k 'geheimesLGWPasswort'
2016/07/28 09:33:03.791 <Debug> firmware filename is: coprocessor_update_hm_only.eq3
cryptEnabled true2016/07/28 09:33:05.801  LanConnection::connect
2016/07/28 09:33:05.802  LanConnection::connect done
2016/07/28 09:33:05.805 <Info> Lan Device Information:
Protocol-Version: 1
Product-ID: eQ3-HM-LGW
Firmware-Version: 1.1.5
Serial Number: NEQ0218723
2016/07/28 09:33:06.007  LanConnection::connect
2016/07/28 09:33:06.008  LanConnection::connect done
2016/07/28 09:33:06.010 <Info> Lan Device Information:
Protocol-Version: 1
Product-ID: eQ3-HM-LGW
Firmware-Version: 1.1.5
Serial Number: NEQ0218723
2016/07/28 09:33:07.516 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in application.
2016/07/28 09:33:07.516 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:07.517 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:07.517 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
2016/07/28 09:33:07.517 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in application.
2016/07/28 09:33:07.535 <Debug>  deliver firmware...
2016/07/28 09:33:11.036 <Info> CCU2CommControllerMod::sendSystemCommand(): failed
2016/07/28 09:33:11.037  CoprocessorUpdate::startBootloader()
2016/07/28 09:33:11.039 <Debug> (NEQ0218723) CCU2CommControllerMod::startCoprocessorBootloader(): Trying to start coprocessor bootloader
2016/07/28 09:33:11.040 <Debug> CCU2CommControllerMod::sendSystemCommand(): Start Application / Bootloader
2016/07/28 09:33:11.044 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:11.044 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:11.044 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
2016/07/28 09:33:13.149 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:13.149 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in bootloader.
2016/07/28 09:33:13.540 <Debug> CoprocessorUpdate::startBootloader():Coprocessor entered bootloader.
2016/07/28 09:33:14.090 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:14.090 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:14.090 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
...
2016/07/28 09:33:21.138 <Info> Firmwareupdate successfull
2016/07/28 09:33:21.139  LanConnection::disconnect
2016/07/28 09:33:21.141  Closing socket 3
2016/07/28 09:33:32.144 <Debug> Wait for disconnect timed out
...
Das "Wait for disconnect" kann man mit CTRL-C abbrechen.


=== Definition ===
=== Definition ===

Version vom 25. August 2016, 22:35 Uhr

HM-LGW-O-TW-W-EU Funk-LAN Gateway
HomeMatic Funk-LAN Gateway
Allgemein
Protokoll HomeMatic
Typ Gateway
Kategorie HomeMatic
Technische Details
Kommunikation 868,3/869,525 MHz
Kanäle n/a
Betriebsspannung 5V DC
Leistungsaufnahme 0,8W
Versorgung DC-Buchse
Abmessungen 116x150x34mm
Sonstiges
Modulname HMUARTLGW
Hersteller ELV / eQ-3


Das HM-LGW-O-TW-W-EU Funk-LAN Gateway ist ein Interface zu HomeMatic Geräten, ähnlich dem LAN Konfigurations-Adapter.

Features

(Noch zu ergänzen)

  • ...

Hinweise zum Betrieb mit FHEM

Juni 2016: Beginn der Entwicklung eines FHEM-Moduls (HMUARTLGW) für dieses Interface, beschrieben im Forum unter dem Titel Modul für HomeMatic UART-Modul (RPi) und HomeMatic LAN Gateway. Dieses Modul unterstützt gleichzeitig auch das Funkmodul für Raspberry Pi.

Juli 2016: HMUARTLGW wird über FHEM update verteilt, damit ist dieses Funkmodul offiziell unterstützt.

Firmware

Es sollte darauf geachtet werden, dass die beiden Firmware-Versionen des Funk-LAN Gateway aktuell sind (aktuell: Applikation: 1.4.1, LAN: 1.1.5). LAN-Firmwareversionen < 1.1.5 haben Stabilitätsprobleme. Beide Firmware-Versionen können mit den eQ3-Tools unter Linux aktualisiert werden:

(Im folgenden "NEQ0218723" durch die eigene Seriennummer des Funk-LAN Gateway ersetzen und "geheimesLGWPasswort" durch das LGW-Passwort. Falls die Verschlüsselung deaktiviert wurde, dann das -k komplett weglassen.

Vorbereitung des Firmwareupdates

$ git clone https://github.com/eq-3/occu
...
$ cd occu
$ sudo ln -s $(pwd)/firmware /firmware
$ cd arm-gnueabihf/packages-eQ-3/LinuxBasis/bin (auf ARM) bzw. cd X86_32_Debian_Wheezy/packages-eQ-3/LinuxBasis/bin (auf X86/X86_64)
$ chmod 755 eq3configcmd

Update der LAN-Firmware

$ LD_LIBRARY_PATH=../lib:../../RFD/lib ./eq3configcmd update-lgw-firmware -u ../../../../firmware/hm-lgw-o-tw-w-eu_update.eq3  -console -l 1 -s NEQ0218723 -k 'geheimesLGWPasswort'
2016/07/28 09:25:24.264 <Info> LAN Gateway Firmware Update...

2016/07/28 09:25:24.265 <Info> Gateway NEQ0218723
2016/07/28 09:25:26.273 <Info> Gateway type is eQ3-HM-LGW-App
cryptEnabled true2016/07/28 09:25:33.313 <Info> Updating firmware....

2016/07/28 09:25:38.467 <Info> Update performed. Waiting for gateway to get ready.

Update der Applikationsfirmware

$ LD_LIBRARY_PATH=../lib:../../RFD/lib ./eq3configcmd update-coprocessor -u -f -c -l 0 -d ../../../../firmware -s NEQ0218723 -k 'geheimesLGWPasswort'
2016/07/28 09:33:03.791 <Debug> firmware filename is: coprocessor_update_hm_only.eq3

cryptEnabled true2016/07/28 09:33:05.801  LanConnection::connect
2016/07/28 09:33:05.802  LanConnection::connect done
2016/07/28 09:33:05.805 <Info> Lan Device Information:
Protocol-Version: 1
Product-ID: eQ3-HM-LGW
Firmware-Version: 1.1.5
Serial Number: NEQ0218723

2016/07/28 09:33:06.007  LanConnection::connect
2016/07/28 09:33:06.008  LanConnection::connect done
2016/07/28 09:33:06.010 <Info> Lan Device Information:
Protocol-Version: 1
Product-ID: eQ3-HM-LGW
Firmware-Version: 1.1.5
Serial Number: NEQ0218723

2016/07/28 09:33:07.516 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in application.
2016/07/28 09:33:07.516 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:07.517 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:07.517 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
2016/07/28 09:33:07.517 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in application.
2016/07/28 09:33:07.535 <Debug>  deliver firmware...
2016/07/28 09:33:11.036 <Info> CCU2CommControllerMod::sendSystemCommand(): failed
2016/07/28 09:33:11.037  CoprocessorUpdate::startBootloader()
2016/07/28 09:33:11.039 <Debug> (NEQ0218723) CCU2CommControllerMod::startCoprocessorBootloader(): Trying to start coprocessor bootloader
2016/07/28 09:33:11.040 <Debug> CCU2CommControllerMod::sendSystemCommand(): Start Application / Bootloader
2016/07/28 09:33:11.044 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:11.044 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:11.044 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
2016/07/28 09:33:13.149 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:13.149 <Debug> (NEQ0218723) CCU2CommControllerMod::handleIdentifyEvent(): Coprocessor is in bootloader.
2016/07/28 09:33:13.540 <Debug> CoprocessorUpdate::startBootloader():Coprocessor entered bootloader.
2016/07/28 09:33:14.090 <Debug> CCU2CoprocessorCommandMod::CCU2CoprocessorCommandMod(): System frame
2016/07/28 09:33:14.090 <Debug> CCU2CoprocessorCommandMod::isResponseStatusOk(): System status OK
2016/07/28 09:33:14.090 <Debug> CCU2CommControllerMod::handleIncomingResponse() System response OK
...
2016/07/28 09:33:21.138 <Info> Firmwareupdate successfull

2016/07/28 09:33:21.139  LanConnection::disconnect
2016/07/28 09:33:21.141  Closing socket 3
2016/07/28 09:33:32.144 <Debug> Wait for disconnect timed out
...

Das "Wait for disconnect" kann man mit CTRL-C abbrechen.

Definition

Logbeispiel

Bekannte Probleme

Das LGW hat (anders als das UART-Modul) keine eigene hmId (das Reading D-HMIdOriginal ist auf FFFFFF gesetzt). Es muss also mit

attr meinLGW hmId xxxxxx

eine nach den in der commandref definierten Regeln gewählte Id gesetzt werden.

Links