I have the problem that the rollershutter states will not updated when there are changes in the KNX bus.
With an KNX App on my smartphone I can see the events with the BUS-monitor.
With a tracedump I have checked that the raspy get the igmp messages, too.
I have an KNX IP Gateway in Router Mode for communication between ETS and the Smartphone. Router mode with openhab works fine, too. Lights switch on/off and shutters go up and down by openhab. But I get no feedback from the bus.
Log Entrys for KNX in Debug Mode:
[DEBUG] [.o.b.knx.internal.KNXActivator:31 ] - KNX binding has been started.
[DEBUG] [i.internal.GenericItemProvider:341 ] - Start processing binding configuration of Item âgH_EG_KR_R1 (Type=RollershutterItem, State=Uninitialized)â with âKNXGenericBindingProviderâ reader.
[DEBUG] [.b.knx.internal.bus.KNXBinding:71 ] - Calimero library version 2.2.0-alpha
[DEBUG] [.k.i.bus.KNXBusReaderScheduler:52 ] - Starting reader task.
[DEBUG] [.k.i.bus.KNXBusReaderScheduler:56 ] - Starting schedule executor.
[DEBUG] [.KNXBindingDatapointReaderTask:58 ] - Autorefresh: Waiting for new item in reader queue
[DEBUG] [b.k.i.connection.KNXConnection:296 ] - KNXBinding configuration present. Setting up KNX bus connection.
[DEBUG] [b.k.i.connection.KNXConnection:408 ] - Not connected yet. Trying to connect.
[INFO ] [b.k.i.connection.KNXConnection:212 ] - Established connection to KNX bus on 224.0.23.12:3671 in mode ROUTER.
[DEBUG] [.k.i.bus.KNXBusReaderScheduler:147 ] - Datapoint âgH_EG_KR_R1â: one time reading scheduled.
[DEBUG] [.KNXBindingDatapointReaderTask:60 ] - Autorefresh: got new item gH_EG_KR_R1 in reader queue
[DEBUG] [.KNXBindingDatapointReaderTask:64 ] - Autorefresh: Trying to read form KNX bus: state DP 11/2/122 gH_EG_KR_R1, DPT main 0 id 5.001, low priority
[DEBUG] [.KNXBindingDatapointReaderTask:92 ] - Autorefresh: Sending read request to KNX for item âgH_EG_KR_R1â DPT â5.001â
[DEBUG] [b.k.i.connection.KNXConnection:419 ] - Success: connected.
[DEBUG] [.b.knx.internal.bus.KNXBinding:169 ] - Received groupWrite Event.
[WARN ] [.KNXBindingDatapointReaderTask:103 ] - Autorefresh: Cannot read value for item âgH_EG_KR_R1â from KNX bus: timeout waiting for group read response: timeout
[WARN ] [.KNXBindingDatapointReaderTask:127 ] - Autorefresh: Remaining retries for address â11/2/122â = â0â
[DEBUG] [.KNXBindingDatapointReaderTask:70 ] - Autorefresh: DatapointReaderTask Waiting 50 msecs to prevent KNX bus overload
[DEBUG] [.KNXBindingDatapointReaderTask:58 ] - Autorefresh: Waiting for new item in reader queue
If I switched off knx:ignorelocalevents in openhab.cfg I found this entry in the log files:
[DEBUG] [.b.knx.internal.bus.KNXBinding:169 ] - Received groupWrite Event.
[WARN ] [.b.knx.internal.bus.KNXBinding:172 ] - Ignoring local Event, received from my local Source address 15.15.250 for Group address 11/2/122.
[WARN ] [.KNXBindingDatapointReaderTask:103 ] - Autorefresh: Cannot read value for item âgH_EG_KR_R1â from KNX bus: timeout waiting for group read response: timeout
Maybe,I think, this will be the messages with the state updates. The GA is one of outsending states if states changed. But why have they been ignored? What is wrong on my configuration or what have I forgotten to config?
Please help me. I have searched for two days in the web and cannot find any hint what I have to change.
Show us your items (and OH1 knx:) config to see if there is something wrong there.
The issue appears only for the Rollershutters or for the Light statuses also?
One thing that maybe wrong would be the Group Address settings in your items for the Status GAsâŠ
Since the telegrams reach OH1 but OH1 ignores them and times out waiting for a response⊠I can only think of thatâŠ
Also, try to set the knx:busaddr= to something different (change it from 15.15.250 to some other number like 2.2.2) and see if this helps.
OH Config:
[INFO ] [.o.core.internal.CoreActivator] - openHAB runtime has been started (v1.8.3).
All Bindings are only get by apt-get.
General: security:netmask=192.168.78.0/24#servicediscovery:bind_address=127.0.0.1
KNX: knx:ip=224.0.23.12knx:busaddr=15.15.250 #knx:ignorelocalevents=trueknx:type=ROUTER knx:port=3671knx:localIp=192.168.78.26 #Local IP of Raspi in the network #knx:serialPort=#knx:pause= knx:timeout=5000knx:readRetries=1 #knx:autoReconnectPeriod=30#knx:maxRefreshQueueEntries= #knx:numberOfThreads=#knx:scheduledExecutorServiceShutdownTimeoutString=
The issue is for all incoming messages from KNX Window Contacts, Lights, Rollershutters âŠ
It looks like all incoming messages are ignored. Need I a daemon like eibd? I donât think so.
My network configuration for eth0: [Match]Name=eth*
On other devices I get the state messages like the app âKNX Controllerâ for android. If I switch the Router mode to tunnel the same behavior appears.
I think there is a problem in config between the network config for eth and oh, that they matching not correct.
Iâm sorry, but the change of the knx:busaddr donât helpedâŠ
Thanks for helping.
I insered this into logback.xml: <logger name="tuwien.auto.calimero" level="TRACE" /> <logger name="org.openhab.binding.knx" level="TRACE" />
You are right, there is no change if I use the item without the Data Types.
[DEBUG] [.o.b.knx.internal.KNXActivator] - KNX binding has been started.
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 1.001
2
âŠ
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 5.001
[TRACE] [.b.knx.internal.bus.KNXBinding] - allBindingsChanged() msg received.
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Calimero library version 2.2.0-alpha
[TRACE] [.b.knx.internal.bus.KNXBinding] - KNXBinding: activating
[TRACE] [.k.i.bus.KNXBusReaderScheduler] - Starting auto refresh scheduler
[DEBUG] [.k.i.bus.KNXBusReaderScheduler] - Starting reader task.
[DEBUG] [.k.i.bus.KNXBusReaderScheduler] - Starting schedule executor.
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Waiting for new item in reader queue
[DEBUG] [b.k.i.connection.KNXConnection] - KNXBinding configuration present. Setting up KNX bus connection.
[DEBUG] [b.k.i.connection.KNXConnection] - Not connected yet. Trying to connect.
[INFO ] [tuwien.auto.calimero ] - [ManagedService Update Queue] KNXnet/IP Routing 224.0.23.12:3671: multicast loopback mode enabled
[INFO ] [b.k.i.connection.KNXConnection] - Established connection to KNX bus on 224.0.23.12:3671 in mode ROUTER.
[TRACE] [.b.knx.internal.bus.KNXBinding] - connectionEstablished() msg received. Initializing readable DPs.
[DEBUG] [.k.i.bus.KNXBusReaderScheduler] - Datapoint âgH_EG_ED_R1â: one time reading scheduled.
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: got new item gH_EG_ED_R1 in reader queue
[DEBUG] [.k.i.bus.KNXBusReaderScheduler] - Datapoint âgH_EG_KR_R1â: one time reading scheduled.
[DEBUG] [.k.i.bus.KNXBusReaderScheduler] - Datapoint âgH_EG_BW_R1â: one time reading scheduled.
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Trying to read form KNX bus: state DP 11/2/122 gH_EG_ED_R1, DPT main 0 id 5.001, low priority
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Sending read request to KNX for item âgH_EG_ED_R1â DPT â5.001â
[DEBUG] [b.k.i.connection.KNXConnection] - Success: connected.
[INFO ] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] link 224.0.23.12:3671: send message to 11/2/122, wait for confirmation
[DEBUG] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] link 224.0.23.12:3671: cEMI L-Data.ind from 2.2.2 to 11/2/122, low priority hop count 6 repeat tpdu 00 00
[DEBUG] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] KNXnet/IP Routing 224.0.23.12:3671: sending cEMI frame, non-blocking, attempt 1
[DEBUG] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] link 224.0.23.12:3671: send to 11/2/122 succeeded
[DEBUG] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] process link 224.0.23.12:3671: sent group read request to 11/2/122
[INFO ] [tuwien.auto.calimero ] - [KNXnet/IP receiver] link 224.0.23.12:3671: indication from 2.2.2
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received groupWrite Event.
[WARN ] [.KNXBindingDatapointReaderTask] - Autorefresh: Cannot read value for item âgH_EG_ED_R1â from KNX bus: timeout waiting for group read response: timeout
[INFO ] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] process link 224.0.23.12:3671: timeout waiting for group read response
[WARN ] [.KNXBindingDatapointReaderTask] - Autorefresh: Remaining retries for address â11/2/122â = â0â
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: DatapointReaderTask Waiting 50 msecs to prevent KNX bus overload
**Next Item same behavior:
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Waiting for new item in reader queue
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: got new item gH_EG_KR_R1 in reader queue
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Trying to read form KNX bus: state DP 11/2/132 gH_EG_KR_R1, DPT main 0 id 5.001, low priority
[DEBUG] [.KNXBindingDatapointReaderTask] - Autorefresh: Sending read request to KNX for item âgH_EG_KR_R1â DPT â5.001â
[INFO ] [tuwien.auto.calimero ] - [KNXBinding/DatapointReaderTask] link 224.0.23.12:3671: send message to 11/2/132, wait for confirmation
âŠ
**For example I switched a light on:
[TRACE] [.b.knx.internal.bus.KNXBinding] - Received command (item=âgH_OG_K1_LDâ, command=âONâ)
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 1.001
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Boolean (main type 1) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Boolean controlled (main type 2 loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 3 Bit controlled (main type 3) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 8 Bit unsigned value (main type 5) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 2 octet unsigned value (main type 7) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 2 octet float value (main type 9) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Time (main type 10) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Date (main type 11) loaded
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received groupWrite Event.
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 4 octet unsigned value (main type 12) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 4 octet signed value (main type 13) loaded
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Wrote value âONâ to datapoint âcommand DP 2/3/30 gH_OG_K1_LD, DPT main 0 id 1.001, low priorityâ
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: 4 octet float value (main type 14) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: String (main type 16) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Scene number (main type 17) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Scene control (main type 18) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: Date with time (main type 19) loaded
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] DPTXlator: RGB color value (main type 232) loaded
[INFO ] [tuwien.auto.calimero ] - [qtp9005330-97] link 224.0.23.12:3671: send message to 2/3/30, wait for confirmation
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] link 224.0.23.12:3671: cEMI L-Data.ind from 2.2.2 to 2/3/30, low priority hop count 6 repeat tpdu 00 81
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] KNXnet/IP Routing 224.0.23.12:3671: sending cEMI frame, non-blocking, attempt 1
[INFO ] [tuwien.auto.calimero ] - [KNXnet/IP receiver] link 224.0.23.12:3671: indication from 2.2.2
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] link 224.0.23.12:3671: send to 2/3/30 succeeded
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toType datapoint DPT = 1.001
[DEBUG] [tuwien.auto.calimero ] - [qtp9005330-97] process link 224.0.23.12:3671: group write to 2/3/30 succeeded
[TRACE] [.b.knx.internal.bus.KNXBinding] - Added event (item=âgH_OG_K1_LDâ, type=âONâ) to the ignore event list
[TRACE] [.b.knx.internal.bus.KNXBinding] - Received command (item=âgH_OG_K1_LDâ, command=âONâ)
[TRACE] [.b.knx.internal.bus.KNXBinding] - We received this event (item=âgH_OG_K1_LDâ, state=âONâ) from KNX, so we donât send it back again -> ignore!
[TRACE] [.b.knx.internal.bus.KNXBinding] - Processed event (item=âgH_OG_K1_LDâ, type=âONâ, destination=â2/3/30â)
How can I check my network config if there is all correct and nothing is missing for a correct working?
I will do new tracedumps to isolate IGMP messages and look int them.
I found out something interesting point during tcpdump running.
So long tcpdump is running openhab works fine with the reponses:
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received groupWrite Event.
[INFO ] [tuwien.auto.calimero ] - [KNXnet/IP receiver] link 224.0.23.12:3671: indication from 1.1.12
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toType datapoint DPT = 5.001
[INFO ] [tuwien.auto.calimero ] - [KNXnet/IP receiver] link 224.0.23.12:3671: indication from 1.1.12
[TRACE] [.o.b.k.i.dpt.KNXCoreTypeMapper] - toTypeClass looking for dptId = 5.001
[TRACE] [.b.knx.internal.bus.KNXBinding] - Added event (item=âgH_EG_SZ_R1â, type=â0â) to the ignore event list
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received update (item=âgH_EG_SZ_R1â, state=â0â)
[TRACE] [.b.knx.internal.bus.KNXBinding] - We received this event (item=âgH_EG_SZ_R1â, state=â0â) from KNX, so we donât send it back again -> ignore!
[TRACE] [.b.knx.internal.bus.KNXBinding] - Processed event (item=âgH_EG_SZ_R1â, type=â0â, destination=â11/2/152â)
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received groupWrite Event.
[DEBUG] [.b.knx.internal.bus.KNXBinding] - Received telegram for unknown group address 11/2/150
If tcpdump is finished or stopped on raspi I never get the responses.
So the binding works fine, i think. Great.
But what is wrong or missing in networkconfig for this behavior?
One quick thought that I have (I may be wrong) is that tcpdump is putting your ethernet interface in promiscuous mode and as a result, your raspy / OpenHab can read the packets originating from the KNXnet/IP Router (multicast)
Without tcpdump running, check the output of netstat -i
see if the flags include âMâ
if not, enable multicast: ip link set eth0 multicast on
or set the ethernet interface to always on promiscuous mode: ip link set eth0 promisc on (check for the âPâ flag in netstat)
Not sure if this is related to your networking issueâŠ
I switched this mode Off. But now I know were I can look for.
I donât do any changes on the MAC Address.
First Time after installing the OS I had a problem with the eth0 and the wlan0.
There was the eth0 reachable by the address of the wlan0.
I donât know why and after a rebot all was normal and as expectet.
I found out, that my cheap China Adapter was the root cause.
I tested the sd card in a raspi B with ether on board. No problem during running. KNX worked as aspected.
I get an other otg LAN Addapter from a colleague and this works without problems on my zero, too.
I searched about my otg LAN adapter and his components and found a lot of errors.
Now Iâm looking for a new otg LAN Adapter. Thank you very much. Without this help, I searched much time longer for the root cause. Iâm searched on the wrong place.
Topic can be closed.