question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[knx] Device status cannot be polled

See original GitHub issue

On some installations, apparently the device status polling does not work as expected:

As a result, the following symptoms can be observed:

  • the device-Things are OFFLINE
  • the log contains warnings like
2018-03-18 08:19:54.209 [WARN ] [Xnet/IP Tunneling 192.168.10.26:3671] - response timeout waiting for confirmation
tuwien.auto.calimero.KNXTimeoutException: no confirmation reply received for 3.1.101->3.1.23 L_Data.req, system priority hop count 6 repeat, tpdu 80
	at tuwien.auto.calimero.knxnetip.ClientConnection.doExtraBlockingModes(ClientConnection.java:244) ~[?:?]
	at tuwien.auto.calimero.knxnetip.ConnectionBase.send(ConnectionBase.java:258) ~[?:?]
	at tuwien.auto.calimero.knxnetip.KNXnetIPTunnel.send(KNXnetIPTunnel.java:178) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.onSend(KNXNetworkLinkIP.java:243) ~[?:?]
	at tuwien.auto.calimero.link.AbstractLink.send(AbstractLink.java:351) ~[?:?]
	at tuwien.auto.calimero.link.KNXNetworkLinkIP.sendRequestWait(KNXNetworkLinkIP.java:222) ~[?:?]
	at tuwien.auto.calimero.mgmt.TransportLayerImpl.connect(TransportLayerImpl.java:327) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementClientImpl.send(ManagementClientImpl.java:796) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementClientImpl.sendWait2(ManagementClientImpl.java:824) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementClientImpl.readDeviceDesc(ManagementClientImpl.java:447) ~[?:?]
	at tuwien.auto.calimero.mgmt.ManagementProceduresImpl.isAddressOccupied(ManagementProceduresImpl.java:310) ~[?:?]
	at org.openhab.binding.knx.internal.client.AbstractKNXClient.isReachable(AbstractKNXClient.java:338) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.pollDeviceStatus(AbstractKNXThingHandler.java:144) ~[?:?]
	at org.openhab.binding.knx.handler.AbstractKNXThingHandler.lambda$1(AbstractKNXThingHandler.java:184) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
	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) [?:?]

The communication though works perfectly fine, i.e. they can be used despite the fact that they are displayed as OFFLINE.

As possible work-around is to remove (or comment-out) the address="1.2.3" configuration parameter from such things.

Any help in understanding the reasons why it doesn’t work on some systems/configurations is appreciated!

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:10 (4 by maintainers)

github_iconTop GitHub Comments

3reactions
kgoderiscommented, Mar 23, 2018

@sjka Simon, on a separate note but related to polling the KNX devices, and based on my own experience with the KNX Basic binding, I would opt to change the behaviour of the Handler slightly, in the sense that the polling or not polling of the device depends solely on the value of the pingInterval, and not the presence of the device address in the configuration of the Thing. For example, if pingInterval = 0 -> no polling. Having the address in the config, with no polling, is interesting to have for further enhancements of the binding. As you mentioned before a long time, either the whole bus is up, or the whole bus is down, so the polling mechanism is somewhat an auxiliary nice to have feature but nothing more…

1reaction
sjsfcommented, Mar 23, 2018

Yes, I vaguely remember that - I guess it was too tempting to leave it in, as it was working pretty nicely on those installations where it actually worked at all.

Nevertheless, with @lewie having no idea anymore and seeing @sikksakk’s results, I share your conclusion! I will drop the ONLINE/OFFLINE polling and only keep the device property polling as an optional “nice-to-have” feature, which won’t really hurt if it is not working.

Read more comments on GitHub >

github_iconTop Results From Across the Web

KNX IP Router Driver polling - iRidium Mobile
Hi,. I've got a server project that is using the KNX IP Router driver for lights, climate, blinds and invixium controls.
Read more >
KNX poling on low traffic - Logic Machine Forum
Hello to all, Into my KNX project I have many macros from other devices that generate many traffic with feedback telegrams.
Read more >
KNX Polling interval - Bindings - openHAB Community
Hello community, i am trying to achieve that a few items, which are bound to my knx bus, do not get updated as...
Read more >
ABB i-bus® EIB / KNX EIB Monitoring Unit EUB/S 1.1
3.2.3.1 Mode of monitoring “Poll physical address cyclically” 11 ... cannot be established to the monitoring device, it will be evaluated as a...
Read more >
Niagara KNXnet IP Driver Guide - Downloads
In the Driver Manager view, the {down} status of the KNX Network ... Niagara KNX Device instances can be added to the station...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found