Hello Community
I’m having an issue with my current OH2 setup. After searching on multiple internet platforms and forums for hours, I finally decided to request assistance here.
I have a small environment with OH2 KNX and DMX bindings, some KNX actors and wall switches, some DMX lights and a sitemap with +/- 10 items displayed. I made it to set up everything in order to turn on my DMX downlights in the corridor by the use of a KNX motion sensor. The same for KNX buttons to switch DMX-connected LED strips in bathroom, living room, etc.
A great thing, basically.
My issue from functional view:
However after well-running for maybe 1 day, 1 week, or sometimes just a few hours … KNX won’t be able anymore to switch DMX lights. Or in other words, OH2 does not recognize KNX telegrams anymore. From OH2 (UI) to KNX works but with an up-to 10 seconds delay.
Whenever this occurs, it mostly recovers after a few hours. It definitely recovers after a restart of OH2 services. (not confirmed yet: it seems that even a restart of the KNX binding via Karaf console recovers).
Technical details:
During the period of non-working KNX communication, I see the following log-entry approximately 5 times per minute in the log:
17:25:29.144 [WARN ] [tuwien.auto.calimero ] - KNXnet/IP Tunneling 192.168.0.46:3671: tunneling request with invalid rcv-seq 185, expected 243
17:25:29.144 [INFO ] [tuwien.auto.calimero ] - KNXnet/IP Tunneling 192.168.0.46:3671: skip tunneling request with rcv-seq 185 (already received)
If I want to switch KNX hardware from UI in that period, I get the following in the log and the telegram is received on the KNX bus with a considerable delay:
17:25:31.128 [ERROR] [.binding.knx.internal.bus.KNXBinding] - Value ‘ON’ could not be sent to the KNX bus using datapoint ‘command DP 1/1/11 SW_VH_DSchiene, DPT main 0 id 1.001, low priority’ - giving up after second try: no confirmation reply received for L-Data.req from 0.0.167 to 1/1/11, low priority hop count 6 repeat tpdu 00 81
17:25:31.128 [WARN ] [tuwien.auto.calimero ] - KNXnet/IP Tunneling 192.168.0.46:3671: response timeout waiting for confirmation
tuwien.auto.calimero.exception.KNXTimeoutException: no confirmation reply received for L-Data.req from 0.0.167 to 1/1/11, low priority hop count 6 repeat tpdu 00 81
at tuwien.auto.calimero.knxnetip.ClientConnection.doExtraBlockingModes(ClientConnection.java:236)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.knxnetip.ConnectionBase.send(ConnectionBase.java:269)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.knxnetip.KNXnetIPTunnel.send(KNXnetIPTunnel.java:149)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.link.KNXNetworkLinkIP.onSend(KNXNetworkLinkIP.java:263)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.link.AbstractLink.send(AbstractLink.java:304)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.link.KNXNetworkLinkIP.sendRequestWait(KNXNetworkLinkIP.java:240)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.process.ProcessCommunicatorImpl.write(ProcessCommunicatorImpl.java:466)[180:org.openhab.binding.knx:1.10.0]
at tuwien.auto.calimero.process.ProcessCommunicatorImpl.write(ProcessCommunicatorImpl.java:438)[180:org.openhab.binding.knx:1.10.0]
at org.openhab.binding.knx.internal.bus.KNXBinding.writeToKNX(KNXBinding.java:158)[180:org.openhab.binding.knx:1.10.0]
at org.openhab.binding.knx.internal.bus.KNXBinding.internalReceiveUpdate(KNXBinding.java:126)[180:org.openhab.binding.knx:1.10.0]
at org.openhab.core.binding.AbstractBinding.receiveUpdate(AbstractBinding.java:119)[181:org.openhab.core.compat1x:2.1.0]
at org.openhab.core.events.AbstractEventSubscriber.handleEvent(AbstractEventSubscriber.java:39)[181:org.openhab.core.compat1x:2.1.0]
at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415)[6:org.apache.karaf.services.eventadmin:4.0.8]
at org.apache.felix.eventadmin.impl.tasks.HandlerTask.run(HandlerTask.java:90)[6:org.apache.karaf.services.eventadmin:4.0.8]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_144]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_144]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)[:1.8.0_144]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)[:1.8.0_144]
at java.lang.Thread.run(Thread.java:748)[:1.8.0_144]
Remarks:
The following was set in knx.config else than default (I’ll keep this short for the moment):
Type=TUNNELING, busaddr=1.1.65, ignorelocalevents=true, IP=192.168.0.46 and localIP=192.168.0.50
KNX IP interface is a Siemens n148/22
Something off-topic:
I feel sorry that I have to finally express some displeasure about OH2 in conjunction with KNX, but in fact I’m a little bit disappointed that everything looks that great on the official OH2 homepage but isn’t really working in real environments.
This does not necessarily refer to the above mentioned issue (it might be a fault at my end), but what I have anyway learned in the meantime is, that the KNX binding is still not working as supposed. I’m referring to basic things like non-working, additional listening addresses for items, or this annoying “KNX read (or even just a post-update) results in KNX telegram”.
I’m not so much disappointed about things not working, but I’m indeed disappointed that one have to learn about after setting up everything and during troubleshooting. At least some warnings on the official webpage – that would have saved me a lot of time and anger, or would have possibly influenced my decision which solution to go for. KNX is a must for (my) home automation without any doubt!
I noticed that some OH2-KNX2 bindings are in process, but this is long overdue in my point of view.
If someone could help me to resolve the above mentioned issue of sporadic dysfunction – I would be grateful.
On the one hand, I want to integrate much more things in my OH setup (Denon AVR, Astro, Siemens Logo, …) but as long as KNX is not working stable and reliable, I’m not willing to spend additional efforts.
(I’m volunteer at the local fire brigade; One fire alert at night where I would have to find shoes and key without light in the corridor- and I will immediately throw out OH2 and change back my hardware to KNX power supplies… )
Thanks in advance!
Stefan