Homematic Binding stops working after a few hours

Hello guys,
I don’t get the homematic binding working stable since I updated to openhab 3.
With my previous openhab 2 setting everything worked well, but with the new openhab 3 installation the homematic binding works for a few hours, but after a period of time it stops working and I get a lot of messages in the logs. To make the binding work again, I have to reboot the system.

I have an original CCU3. Openhab runs on a raspberry pi 3b. Both are connected via Lan to a Fritzbox 7530. Actually i have the lastest 3.2 Milestone installed, but I also tried it with openhab 3.1. The binding is set up via the UI like its explained in the Documentation.

Here is what my log shows. Maybe someone can help me.

2021-09-15 22:02:46.803 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 1/3


==> /var/log/openhab/openhab.log <==

2021-09-15 22:03:01.807 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 2/3


==> /var/log/openhab/openhab.log <==

2021-09-15 22:03:16.810 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 3/3


==> /var/log/openhab/openhab.log <==

2021-09-15 22:03:31.813 [DEBUG] [ommunicator.AbstractHomematicGateway] - Unable to release the connection to the gateway with id '3014F711A0001F98A9A6E6CE': java.util.concurrent.TimeoutException

java.io.IOException: java.util.concurrent.TimeoutException

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:122) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.sendMessage(XmlRpcClient.java:77) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.RpcClient.release(RpcClient.java:102) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.stopServers(AbstractHomematicGateway.java:267) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.handleInvalidConnection(AbstractHomematicGateway.java:933) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.run(AbstractHomematicGateway.java:912) [bundleFile:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]

	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]

	at java.lang.Thread.run(Thread.java:829) [?:?]

Caused by: java.util.concurrent.TimeoutException

	at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:109) ~[bundleFile:9.4.40.v20210413]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:112) ~[bundleFile:?]

	... 11 more

2021-09-15 22:03:46.819 [DEBUG] [ommunicator.AbstractHomematicGateway] - Unable to release the connection to the gateway with id '3014F711A0001F98A9A6E6CE': java.util.concurrent.TimeoutException

java.io.IOException: java.util.concurrent.TimeoutException

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:122) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.sendMessage(XmlRpcClient.java:77) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.RpcClient.release(RpcClient.java:102) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.stopServers(AbstractHomematicGateway.java:267) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.handleInvalidConnection(AbstractHomematicGateway.java:933) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.run(AbstractHomematicGateway.java:912) [bundleFile:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]

	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]

	at java.lang.Thread.run(Thread.java:829) [?:?]

Caused by: java.util.concurrent.TimeoutException

	at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:109) ~[bundleFile:9.4.40.v20210413]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:112) ~[bundleFile:?]

	... 11 more


==> /var/log/openhab/openhab.log <==

2021-09-15 22:04:01.825 [DEBUG] [ommunicator.AbstractHomematicGateway] - Unable to release the connection to the gateway with id '3014F711A0001F98A9A6E6CE': java.util.concurrent.TimeoutException

java.io.IOException: java.util.concurrent.TimeoutException

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:122) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.sendMessage(XmlRpcClient.java:77) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.client.RpcClient.release(RpcClient.java:102) ~[bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.stopServers(AbstractHomematicGateway.java:267) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.handleInvalidConnection(AbstractHomematicGateway.java:933) [bundleFile:?]

	at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway$ConnectionTrackerThread.run(AbstractHomematicGateway.java:912) [bundleFile:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]

	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]

	at java.lang.Thread.run(Thread.java:829) [?:?]

Caused by: java.util.concurrent.TimeoutException

	at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:109) ~[bundleFile:9.4.40.v20210413]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:112) ~[bundleFile:?]

	... 11 more

2021-09-15 22:04:01.829 [DEBUG] [nal.communicator.server.XmlRpcServer] - Stopping XML-RPC server

2021-09-15 22:04:01.842 [DEBUG] [nal.communicator.server.XmlRpcServer] - Initializing XML-RPC server at port 9125

==> /var/log/openhab/openhab.log <==

2021-09-15 22:04:46.858 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 1/3


==> /var/log/openhab/openhab.log <==

2021-09-15 22:05:01.861 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 2/3

==> /var/log/openhab/openhab.log <==

2021-09-15 22:05:16.864 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 3/3


and if i am waiting for a longer time without rebooting, the log shows the following:

2021-09-19 18:54:27.618 [DEBUG] [ernal.handler.HomematicBridgeHandler] - Disposing bridge '3014F711A0001F98A9A6E6CE'

2021-09-19 18:54:27.618 [DEBUG] [very.HomematicDeviceDiscoveryService] - Stopping Homematic discovery scan

2021-09-19 18:54:27.619 [DEBUG] [very.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan

2021-09-19 18:54:27.619 [DEBUG] [very.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '3014F711A0001F98A9A6E6CE'

2021-09-19 18:54:37.621 [DEBUG] [ernal.handler.HomematicBridgeHandler] - HomematicConfig[gatewayAddress=192.168.178.31,callbackHost=192.168.178.43,xmlCallbackPort=9125,binCallbackPort=9126,gatewayType=auto,rfPort=2001,wiredPort=2000,hmIpPort=2010,cuxdPort=8701,groupPort=9292,timeout=15,discoveryTimeToLive=-1,installModeDuration=60,socketMaxAlive=900]

2021-09-19 18:54:37.624 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 1/3

2021-09-19 18:54:37.626 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 2/3

2021-09-19 18:54:37.629 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 3/3

2021-09-19 18:54:37.632 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 1/3

2021-09-19 18:54:37.635 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 2/3

2021-09-19 18:54:37.637 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 3/3

2021-09-19 18:54:37.638 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 1/3

2021-09-19 18:54:37.640 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 2/3

2021-09-19 18:54:37.642 [DEBUG] [nal.communicator.client.XmlRpcClient] - XmlRpcMessage failed, sending message again 3/3

2021-09-19 18:54:37.643 [DEBUG] [ernal.handler.HomematicBridgeHandler] - Homematic bridge was set to OFFLINE-COMMUNICATION_ERROR due to the following exception: java.util.concurrent.ExecutionException: java.util.concurrent.RejectedExecutionException: Max requests queued per destination 1024 exceeded for HttpDestination[http://192.168.178.31:2010]@170e09e,queue=1024,pool=DuplexConnectionPool@655529[c=2/2/2,a=0,i=0,q=1024]

java.io.IOException: java.util.concurrent.ExecutionException: java.util.concurrent.RejectedExecutionException: Max requests queued per destination 1024 exceeded for HttpDestination[http://192.168.178.31:2010]@170e09e,queue=1024,pool=DuplexConnectionPool@655529[c=2/2/2,a=0,i=0,q=1024]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:122) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.sendMessage(XmlRpcClient.java:77) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.client.RpcClient.listBidcosInterfaces(RpcClient.java:119) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.client.RpcClient.getGatewayInfo(RpcClient.java:245) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.HomematicGatewayFactory.loadGatewayInfo(HomematicGatewayFactory.java:50) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.HomematicGatewayFactory.createGateway(HomematicGatewayFactory.java:34) ~[?:?]

	at org.openhab.binding.homematic.internal.handler.HomematicBridgeHandler.initializeInternal(HomematicBridgeHandler.java:109) ~[?:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]

	at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]

	at java.lang.Thread.run(Thread.java:829) [?:?]

Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.RejectedExecutionException: Max requests queued per destination 1024 exceeded for HttpDestination[http://192.168.178.31:2010]@170e09e,queue=1024,pool=DuplexConnectionPool@655529[c=2/2/2,a=0,i=0,q=1024]

	at org.eclipse.jetty.client.util.FutureResponseListener.getResult(FutureResponseListener.java:118) ~[?:?]

	at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:110) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:112) ~[?:?]

	... 12 more

Caused by: java.util.concurrent.RejectedExecutionException: Max requests queued per destination 1024 exceeded for HttpDestination[http://192.168.178.31:2010]@170e09e,queue=1024,pool=DuplexConnectionPool@655529[c=2/2/2,a=0,i=0,q=1024]

	at org.eclipse.jetty.client.HttpDestination.send(HttpDestination.java:293) ~[?:?]

	at org.eclipse.jetty.client.HttpDestination.send(HttpDestination.java:263) ~[?:?]

	at org.eclipse.jetty.client.HttpClient.send(HttpClient.java:600) ~[?:?]

	at org.eclipse.jetty.client.HttpRequest.sendAsync(HttpRequest.java:778) ~[?:?]

	at org.eclipse.jetty.client.HttpRequest.send(HttpRequest.java:765) ~[?:?]

	at org.openhab.binding.homematic.internal.communicator.client.XmlRpcClient.send(XmlRpcClient.java:111) ~[?:?]

	... 12 more

First of all, please post more details from the log files. Only with the DEBUG messages it is very hard to get the context. Especially for the very first message it would be interesting to see what kind of request should be sent. I also need the first messages issued by the binding that shows information about the connection types.

Please also check the firewall settings on your Raspi and CCU and make sure that all ports are accessible that are mentioned in the binding’s documentation. I would also recommend to use a fixed IP address on the OH Raspi.

Generally I haven’t heard about stability problems like these (only in context with firewall problems). But there are some known problems with HmIP devices. I have created a fix for some connection problems, and you can install a test version from here (please use it with 3.2): https://github.com/MHerbst/openhab-addons-test

Thank you for the quick reply. I will check the things you mentioned and install the test version. If nothing helps I will post more detailed logs as you mentioned.

I have installed your test version but that doesn’t help. It still losts connection. But then I have found what caused the problems. My ccu was connect via dlan. I have now connected it directly to my router and since then the binding is running without any problems.
Anyway thanks for your help!