README: update link for HM-CFG-USB, add discontinued-note
[hmcfgusb] / README.md
index f0ccc78eebcf69a3279c926e01b204d755ced932..687428ea8f7fdc9bcedb1261acf57dd15f10ea2d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,5 +1,6 @@
 This repository contains utilities to use the [HM-CFG-USB(2)][] (HomeMatic USB
-Konfigurations-Adapter) from [ELV][] on Linux/Unix by using [libusb 1.0][].
+Konfigurations-Adapter, seems to be discontinued) from [ELV][] on Linux/Unix
+by using [libusb 1.0][].
 
 The HM-CFG-USB can be used to send and receive [BidCoS-Packets][] to control
 [HomeMatic][] home automation devices (like remote controllable sockets,
@@ -11,7 +12,7 @@ HM-CFG-USB in [Fhem][] or as a lan configuration tool for the [CCU][] or the
 HomeMatic windows configuration software, also supporting devices using
 AES-signing like [KeyMatic][].
 
-[HM-CFG-USB(2)]: http://www.elv.de/homematic-usb-konfigurations-adapter-1.html
+[HM-CFG-USB(2)]: http://www.eq-3.de/produkte/homematic/zentralen-und-gateways/homematic-funk-konfigurationsadapter-usb.html
 [ELV]: http://www.elv.de/
 [libusb 1.0]: http://www.libusb.org/
 [BidCoS-Packets]: http://homegear.eu/index.php/BidCoS%C2%AE_Packets
@@ -48,7 +49,7 @@ AES-signing like [KeyMatic][].
     ``define hmusb HMLAN 127.0.0.1:1234``  
     ``attr hmusb hmId <hmId>``
 
-**Important compatibility information:**
+**Important compatibility information:**  
 If older Fhem-versions (before 2015-06-19) or [Homegear][] before 2015-07-01
 is used to connect to hmland, the `-I` switch might be needed to
 impersonate a LAN-interface (this replaces the identity string HM-USB-IF with
@@ -60,6 +61,14 @@ hmland without this switch. It was the hardcoded default in versions
 This incompatibility is needed so connecting software is able to
 differentiate between HM-CFG-LAN and HM-CFG-USB.
 
+**Important security information:**  
+Versions before 0.101 do not correctly transmit the AES channel-mask
+to the HM-CFG-USB, which results in signature-requests not being generated
+by the device in most cases. This can lead to processing of unsigned messages
+by the host-software. If you are relying on authenticated messages
+(with e.g. aesCommReq in Fhem) from devices like door-sensors and remotes,
+you should upgrade to at least version 0.101.
+
 [releases-directory]: https://git.zerfleddert.de/hmcfgusb/releases/
 [hmcfgusb-HEAD-xxxxxxx.tar.gz]: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/hmcfgusb/snapshot/HEAD.tar.gz
 [Homegear]: https://www.homegear.eu/
@@ -68,13 +77,15 @@ differentiate between HM-CFG-LAN and HM-CFG-USB.
 
 1.  Compile the hmcfgusb utilities like in the hmland HowTo above
     (steps 1 to 5) and stay in the directory
-2.  Download the new firmware: [hmusbif.03c7.enc][]:
+2.  Download the new firmware: [hmusbif.03c7.enc][] (extracted from the
+    [Firmware update tool][]):
     `wget https://git.zerfleddert.de/hmcfgusb/firmware/hmusbif.03c7.enc`
 3.  Make sure that hmland is not running
 4.  Flash the update to the USB-stick:
     `./flash-hmcfgusb hmusbif.03c7.enc` (You might need to use `sudo` for this)
 
 [hmusbif.03c7.enc]: https://git.zerfleddert.de/hmcfgusb/firmware/hmusbif.03c7.enc
+[Firmware update tool]: http://www.eq-3.de/Downloads/Software/Firmware%20Update%20Tool/HM-CFG-USB-2_FW-UpdateTool-Usersoftware_V1_1_eQ-3_140619.zip
 
 ### Updating HomemMatic devices over the air (OTA) (also for CUL devices): ###
 
@@ -91,7 +102,21 @@ differentiate between HM-CFG-LAN and HM-CFG-USB.
     the new firmware to the device with serial *KEQ0123456*:  
      `./flash-ota -f hm_cc_rt_dn_update_V1_4_001_141020.eq3 -s KEQ0123456 -c /dev/ttyACM0`
 
+**Automatic firmware-updates:**  
+The options `-C` (HMID of central), `-D` (HMID of device) and `-K` (AES key w/
+index) can be used to send a device to the bootloader automatically without
+manually rebooting the device while pressing buttons:
+
+`./flash-ota -f hm_cc_rt_dn_update_V1_4_001_141020.eq3 -C ABCDEF -D 012345 -K 01:00112233445566778899AABBCCDDEEFF`
+
+`-K` is only needed, when AES signing is active on the device.
+
+**Acknowledgments:**  
+flash-ota uses the public domain [AES implementation by Brad Conte][] to answer
+signing-requests with culfw-devices.
+
 [eQ-3]: http://www.eq-3.de/downloads.html
 [culfw]: http://culfw.de/culfw.html
 [CUL]: http://busware.de/tiki-index.php?page=CUL
 [COC]: http://busware.de/tiki-index.php?page=COC
+[AES implementation by Brad Conte]: https://github.com/B-Con/crypto-algorithms
Impressum, Datenschutz