openhab / openhab1-addons

Add-ons for openHAB 1.x
Eclipse Public License 2.0
3.43k stars 1.71k forks source link

[Homematic] Request support for password authentication #5733

Open fbrnc opened 5 years ago

fbrnc commented 5 years ago

After updating Homematic (via RaspberryMatic) to version 3.41.11.20181126, the homematic binding stopped working.

Expected Behavior

All my Homematic things continue to work with the latest Homematic firmware

Current Behavior

This is what /var/log/openhab2/openhab.log shows:

2018-12-12 21:36:39.439 [DEBUG] [org.openhab.binding.homematic.handler.HomematicBridgeHandler            ] - HomematicConfig[gatewayAddress=192.168.188.76,callbackHost=192.168.188.39,xmlCallbackPort=9125,binCallbackPort=9126,gatewayType=ccu2,rfPort=2001,wiredPort=2000,hmIpPort=2010,cuxdPort=8701,groupPort=9292,timeout=15,discoveryTimeToLive=-1,installModeDuration=60,socketMaxAlive=900]
2018-12-12 21:36:39.444 [TRACE] [org.openhab.binding.homematic.handler.HomematicBridgeHandler            ] - Registering HomematicDeviceDiscoveryService for bridge 'ccu2'
2018-12-12 21:36:39.515 [INFO ] [org.openhab.binding.homematic.internal.communicator.client.RpcClient    ] - Interface 'WIRED' on gateway 'ccu2' not available, disabling support
2018-12-12 21:36:39.580 [INFO ] [openhab.binding.homematic.internal.communicator.AbstractHomematicGateway] - HmGatewayInfo[id=CCU,type=CCU2,firmware=3.41.11.20181126,address=OEQ2300334,wired=false,hmip=true,cuxd=true,group=true]
2018-12-12 21:36:54.622 [ERROR] [org.openhab.binding.homematic.handler.HomematicBridgeHandler            ] - Homematic bridge was set to OFFLINE-COMMUNICATION_ERROR due to the following exception: Read timed out
java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method) ~[?:?]
    at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[?:?]
    at java.net.SocketInputStream.read(SocketInputStream.java:171) ~[?:?]
    at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.message.BinRpcMessage.<init>(BinRpcMessage.java:74) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:77) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:66) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.client.RpcClient.init(RpcClient.java:87) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.init(BinRpcClient.java:54) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.startServers(AbstractHomematicGateway.java:249) ~[?:?]
    at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.initialize(AbstractHomematicGateway.java:183) ~[?:?]
    at org.openhab.binding.homematic.handler.HomematicBridgeHandler.lambda$0(HomematicBridgeHandler.java:87) ~[?:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
2018-12-12 21:36:54.693 [DEBUG] [org.openhab.binding.homematic.handler.HomematicBridgeHandler            ] - Disposing bridge 'ccu2'

Possible Solution

The latest Homematic Firmware forces you to set a username and password. Since the binding configuration doesn't know anything about the username and password I expect this to be the underlying problem.

Steps to Reproduce (for bugs)

  1. Update Homematic to 3.41.11.20181126
  2. Try to configure things
  3. Check openhab.log

Your Environment

fbrnc commented 5 years ago

Hi everybody, I'm not sure why this was labelled "invalid" and has been closed? Did I do something wrong in the process of filing this issue? Or is this invalid from a technical point of view? Maybe I'm missing the point, but since Homematic now forces you to authenticate but the homematic binding doesn't come with a way to even configure credentials I think the current version of the homematic binding does not support the latest homematic firmware. That felt worth filing in issue :)

9037568 commented 5 years ago

Since the Homematic binding does not support authentication, it is not a defect that it doesn't work with firmware that requires authentication.

Did you intend this to be a feature request asking for such support to be added?

fbrnc commented 5 years ago

Ok, that's a valid point. Yes, adding authentication this feature would be extremely useful since without the binding cannot be used for all people updating their Homematic firmware.