Drexel & Weiss Device Integration

Show us what you have so far.

Thing Modbus Serial Slave

Serial Port /dev/ttyAMA0

Id 140

Baud 9600

Stop Bits 1

Parity None

Data Bits 8

Encoding RTU

Discovery Enabled - Off

Flow Control In - None

Flow Control Out - None

Time Between Transactions - 35ms

Thing Regular Poll Test

Bridge - Modbus Serial Slave

Poll Intervall - 2000

Start - 203

Length - 2

Holding register

Maximum tries when reading - 30

Cache Duration - 500

Thing Modbus Data Test

Bridge - Regular Poll Test

Read adress - 203

Read Transform - JS(divide 1000.js)

Read Value Type - 16bit signed integer (int16)

Nope.

So 203 in Modpoll is 202 in openHAB.

in Thing Regular Poll Test:
COMMUNICATION_ERROR

Error with read: org.openhab.core.io.transport.modbus.exception.ModbusConnectionException: Error connecting to endpoint ModbusSerialSlaveEndpoint@16d6b53[portName=/dev/ttyAMA0]

in Modbus Data Test:
No bridge online

it does not matter whether register 200, 201 or 203 is read

It kinda does matter,because there is a weakness in the system serial library at the moment that makes recovering from an error become a problem. It can’t reconnect the serial port.
The best avoidance for now is to not have an error.
Once it has locked up, that’s “game over” until you reboot.

You know that you will get an error using odd-numbered register addresses, so don’t do that. Use 200 or 202.
You know that you will get an error using odd-numbered lengths, so don’t do that. Use length 2 or 4 etc.

I’m trying to read register 200 (OH) with “Regular Poll”.
With “Modbus data” I would read out the reception.
Even after a complete restart of the Raspberry, I still get the error message:
Regular Poll:
COMMUNICATION_ERROR
Error with read: org.openhab.core.io.transport.modbus.exception.ModbusConnectionException: Error connecting to endpoint ModbusSerialSlaveEndpoint@3e67ae[portName=/dev/ttyAMA0]
Modbus Data:
BRIDGE_OFFLINE
No online bridge

Then you’re back to openHAB can’t see your serial port.

Modbus Data 1_3.pdf (147.0 KB) Modbus Data 2_3.pdf (135.4 KB) Modbus Data 3_3.pdf (137.1 KB) Regular Poller 1_2.pdf (149.3 KB) Regular Poller 2_2.pdf (148.8 KB) Serielle Schnittstelle 1_2.pdf (155.9 KB) Serielle Schnittstelle 2_2.pdf (152.4 KB)
maybe it will be clearer now

I hope I can somehow retaliate for your help

I don’t have any more help to offer.

It is important to look at the whole error message.

So far as I can tell, openHAB has never been able to see your serial port, that looks like a permissions issue.

hi!
i’m making the step from OH2.5 > OH3.1 and the modbus binding doesn’t work on OH3 anymore

i installed the binding and Javascript Transformation (incl. *.js files).
with these things it works on 2.5:

things:

//// Drexel & Weiss Aerosilent stratos  Modbus Thing
//Use different refresh intervalls to avoid modbus slave exceptions codes appearing.
//Timeout of Drexel&Weiss Devices is 2600ms. With timeBetweenTranactions>2600ms you are absolutly on save side. With default value 60ms it still works but give sometimes 
//exception code 1&2 and has to try again. Different refresh intervals help then. If you poll every 60000ms make sure. timeBetweenTransactionsMillis=2600 

Bridge modbus:tcp:drexelweiss [ host="192.168.178.50", port=8899, id=1, timeBetweenTransactionsMillis=2600 ] //USR-W610
{
  // GerÀtetyp
	Bridge poller dw_input5000 [start=5000, length=2, refresh=60000, type="input"] { Thing data dw_data5000 [ readStart="5000", readValueType="int32"]}
  
  // Raumluft - for readTransform transformation addon "Javascript" needs 2be installed. Also JS file according to Modbus Binding doc cpt "transformation"
  	Bridge poller dw_input200 [start=200, length=2, refresh=60000, type="input"] { Thing data dw_data200 [readStart="200", readValueType="int32", readTransform="JS(divide1000.js)"]}   
}

here’s my logs:

2021-08-04 13:28:10.425 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'modbus.things'
2021-08-04 13:28:10.461 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler Modbus tcp
2021-08-04 13:28:10.464 [DEBUG] [very.internal.ModbusDiscoveryService] - bundle org.openhab.binding.modbus:3.1.0 (248)[org.openhab.binding.modbus.discovery.internal.ModbusDiscoveryService(298)] : dm ModbusEndpoint tracking 12 MultipleDynamic added {org.openhab.binding.modbus.discovery.internal.ModbusThingHandlerDiscoveryService}={service.id=542, service.bundleid=248, service.scope=singleton} (enter)
2021-08-04 13:28:10.465 [DEBUG] [very.internal.ModbusDiscoveryService] - bundle org.openhab.binding.modbus:3.1.0 (248)[org.openhab.binding.modbus.discovery.internal.ModbusDiscoveryService(298)] : dm ModbusEndpoint tracking 12 MultipleDynamic already active, binding {org.openhab.binding.modbus.discovery.internal.ModbusThingHandlerDiscoveryService}={service.id=542, service.bundleid=248, service.scope=singleton}
2021-08-04 13:28:10.467 [DEBUG] [very.internal.ModbusDiscoveryService] - bundle org.openhab.binding.modbus:3.1.0 (248)[org.openhab.binding.modbus.discovery.internal.ModbusDiscoveryService(298)] : invoking bind: addModbusEndpoint: parameters [org.openhab.binding.modbus.discovery.internal.ModbusEndpointDiscoveryService]
2021-08-04 13:28:10.468 [DEBUG] [very.internal.ModbusDiscoveryService] - bundle org.openhab.binding.modbus:3.1.0 (248)[org.openhab.binding.modbus.discovery.internal.ModbusDiscoveryService(298)] : invoked bind: addModbusEndpoint
2021-08-04 13:28:10.469 [DEBUG] [very.internal.ModbusDiscoveryService] - bundle org.openhab.binding.modbus:3.1.0 (248)[org.openhab.binding.modbus.discovery.internal.ModbusDiscoveryService(298)] : dm ModbusEndpoint tracking 12 MultipleDynamic added {org.openhab.binding.modbus.discovery.internal.ModbusThingHandlerDiscoveryService}={service.id=542, service.bundleid=248, service.scope=singleton} (exit)
2021-08-04 13:28:10.479 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler Modbus poller
2021-08-04 13:28:10.490 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Registering polling with ModbusManager
2021-08-04 13:28:10.493 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler Modbus poller
2021-08-04 13:28:10.502 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Registering polling with ModbusManager
2021-08-04 13:28:10.505 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler data
2021-08-04 13:28:10.517 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler data
2021-08-04 13:28:10.616 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:28:10.619 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 14 and boolValue=true. Registers ModbusRegisterArray(0000000E) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
==> /var/log/openhab/events.log <==
2021-08-04 13:28:10.472 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:tcp:drexelweiss' changed from UNINITIALIZED to INITIALIZING
2021-08-04 13:28:10.479 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:tcp:drexelweiss' changed from INITIALIZING to ONLINE
2021-08-04 13:28:10.485 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from UNINITIALIZED to INITIALIZING
2021-08-04 13:28:10.493 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from INITIALIZING to ONLINE
2021-08-04 13:28:10.496 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input200' changed from UNINITIALIZED to INITIALIZING
2021-08-04 13:28:10.504 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input200' changed from INITIALIZING to ONLINE
2021-08-04 13:28:10.509 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from UNINITIALIZED to INITIALIZING
2021-08-04 13:28:10.517 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from INITIALIZING to ONLINE
2021-08-04 13:28:10.521 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input200:dw_data200' changed from UNINITIALIZED to INITIALIZING
2021-08-04 13:28:10.528 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input200:dw_data200' changed from INITIALIZING to ONLINE
==> /var/log/openhab/openhab.log <==
2021-08-04 13:28:13.335 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:28:13.339 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 24815 and boolValue=true. Registers ModbusRegisterArray(000060EF) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:29:10.749 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:29:10.752 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 14 and boolValue=true. Registers ModbusRegisterArray(0000000E) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
2021-08-04 13:29:13.458 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:29:13.461 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 24815 and boolValue=true. Registers ModbusRegisterArray(000060EF) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:30:10.883 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:30:10.885 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 14 and boolValue=true. Registers ModbusRegisterArray(0000000E) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
2021-08-04 13:30:13.607 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:30:13.609 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 24815 and boolValue=true. Registers ModbusRegisterArray(000060EF) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:31:11.012 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:31:11.016 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 14 and boolValue=true. Registers ModbusRegisterArray(0000000E) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
2021-08-04 13:31:13.734 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:31:13.737 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 24815 and boolValue=true. Registers ModbusRegisterArray(000060EF) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:32:13.845 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (129) does not equal response (29489). Slave response is invalid. [operation ID 13f2fde2-dfec-450e-9b19-43bd58b6b4ec]
2021-08-04 13:32:16.574 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (130) does not equal response (29490). Slave response is invalid. [operation ID 80250554-73c8-42bf-ad5e-6b66b6d175bc]
2021-08-04 13:32:19.303 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (131) does not equal response (29491). Slave response is invalid. [operation ID 13f2fde2-dfec-450e-9b19-43bd58b6b4ec]
2021-08-04 13:32:22.064 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (132) does not equal response (29492). Slave response is invalid. [operation ID 80250554-73c8-42bf-ad5e-6b66b6d175bc]
2021-08-04 13:32:24.834 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Aborting. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (133) does not equal response (29493). Slave response is invalid. [operation ID 13f2fde2-dfec-450e-9b19-43bd58b6b4ec]
2021-08-04 13:32:24.839 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(failure=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], error = ModbusUnexpectedTransactionIdException(requestTransactionId=133, responseTransactionId=29493)))
2021-08-04 13:32:24.845 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input5000:dw_data5000. Reseting handler
2021-08-04 13:32:24.847 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 'Modbus Data' has no bridge or it is not online
==> /var/log/openhab/events.log <==
2021-08-04 13:32:24.843 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=133, responseTransactionId=29493). Message: Transaction id of request (133) does not equal response (29493). Slave response is invalid.
2021-08-04 13:32:24.846 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (133) does not equal response (29493). Slave response is invalid.
2021-08-04 13:32:24.850 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=133, responseTransactionId=29493). Message: Transaction id of request (133) does not equal response (29493). Slave response is invalid. to OFFLINE (BRIDGE_OFFLINE): No online bridge
==> /var/log/openhab/openhab.log <==
2021-08-04 13:32:27.574 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Aborting. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (134) does not equal response (29494). Slave response is invalid. [operation ID 80250554-73c8-42bf-ad5e-6b66b6d175bc]
2021-08-04 13:32:27.578 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(failure=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], error = ModbusUnexpectedTransactionIdException(requestTransactionId=134, responseTransactionId=29494)))
2021-08-04 13:32:27.583 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input200:dw_data200. Reseting handler
2021-08-04 13:32:27.585 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 'Modbus Data' has no bridge or it is not online
==> /var/log/openhab/events.log <==
2021-08-04 13:32:27.582 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input200:dw_data200' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=134, responseTransactionId=29494). Message: Transaction id of request (134) does not equal response (29494). Slave response is invalid.
2021-08-04 13:32:27.584 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input200' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (134) does not equal response (29494). Slave response is invalid.
2021-08-04 13:32:27.589 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input200:dw_data200' changed from OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=134, responseTransactionId=29494). Message: Transaction id of request (134) does not equal response (29494). Slave response is invalid. to OFFLINE (BRIDGE_OFFLINE): No online bridge
==> /var/log/openhab/openhab.log <==
2021-08-04 13:33:24.977 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (135) does not equal response (29514). Slave response is invalid. [operation ID e5130df9-c138-4e79-a742-4df1690c9acc]
2021-08-04 13:33:27.708 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (136) does not equal response (29515). Slave response is invalid. [operation ID e5130df9-c138-4e79-a742-4df1690c9acc]
2021-08-04 13:33:30.447 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (137) does not equal response (29516). Slave response is invalid. [operation ID 8c4512f6-095b-492f-b39a-1667c8339073]
2021-08-04 13:33:33.197 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Aborting. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (138) does not equal response (29517). Slave response is invalid. [operation ID e5130df9-c138-4e79-a742-4df1690c9acc]
2021-08-04 13:33:33.202 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(failure=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], error = ModbusUnexpectedTransactionIdException(requestTransactionId=138, responseTransactionId=29517)))
2021-08-04 13:33:33.205 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input5000:dw_data5000. Reseting handler
2021-08-04 13:33:33.207 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 'Modbus Data' has no bridge or it is not online
==> /var/log/openhab/events.log <==
2021-08-04 13:33:33.205 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (133) does not equal response (29493). Slave response is invalid. to OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (138) does not equal response (29517). Slave response is invalid.
==> /var/log/openhab/openhab.log <==
2021-08-04 13:33:35.927 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedResponseFunctionCodeException Function code of request (139) does not equal response (139) [operation ID 8c4512f6-095b-492f-b39a-1667c8339073]
2021-08-04 13:33:38.667 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Aborting. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (140) does not equal response (29519). Slave response is invalid. [operation ID 8c4512f6-095b-492f-b39a-1667c8339073]
2021-08-04 13:33:38.671 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(failure=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], error = ModbusUnexpectedTransactionIdException(requestTransactionId=140, responseTransactionId=29519)))
2021-08-04 13:33:38.702 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input200:dw_data200. Reseting handler
2021-08-04 13:33:38.703 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 'Modbus Data' has no bridge or it is not online
==> /var/log/openhab/events.log <==
2021-08-04 13:33:38.702 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input200' changed from OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (134) does not equal response (29494). Slave response is invalid. to OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (140) does not equal response (29519). Slave response is invalid.
==> /var/log/openhab/openhab.log <==
2021-08-04 13:34:33.329 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:34:33.331 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input5000:dw_data5000. Reseting handler
==> /var/log/openhab/events.log <==
2021-08-04 13:34:33.332 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (138) does not equal response (29517). Slave response is invalid. to ONLINE
2021-08-04 13:34:33.336 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from OFFLINE (BRIDGE_OFFLINE): No online bridge to ONLINE
==> /var/log/openhab/openhab.log <==
2021-08-04 13:34:38.829 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:34:38.833 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input200:dw_data200. Reseting handler
==> /var/log/openhab/events.log <==
2021-08-04 13:34:38.834 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input200' changed from OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (140) does not equal response (29519). Slave response is invalid. to ONLINE
2021-08-04 13:34:38.838 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input200:dw_data200' changed from OFFLINE (BRIDGE_OFFLINE): No online bridge to ONLINE
==> /var/log/openhab/openhab.log <==
2021-08-04 13:35:33.452 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:35:33.455 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 14 and boolValue=true. Registers ModbusRegisterArray(0000000E) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
2021-08-04 13:35:38.961 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(000060EF)))
2021-08-04 13:35:38.964 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 24815 and boolValue=true. Registers ModbusRegisterArray(000060EF) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:36:33.593 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(00000001)))
2021-08-04 13:36:33.596 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 channels updated: null. readValueType=int32, readIndex=Optional[5000], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 1 and boolValue=true. Registers ModbusRegisterArray(00000001) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]
2021-08-04 13:36:39.107 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (146) does not equal response (29582). Slave response is invalid. [operation ID 020bb881-3af4-4b5a-bc09-c9433ff45758]
2021-08-04 13:36:41.838 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(00000001)))
2021-08-04 13:36:41.841 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 1 and boolValue=true. Registers ModbusRegisterArray(00000001) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:37:33.735 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (148) does not equal response (29601). Slave response is invalid. [operation ID 46bf33b9-3a02-49ff-9a41-89349f236262]
2021-08-04 13:37:36.475 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (149) does not equal response (29602). Slave response is invalid. [operation ID 46bf33b9-3a02-49ff-9a41-89349f236262]
2021-08-04 13:37:39.227 [ERROR] [rt.modbus.internal.ModbusManagerImpl] - Last try 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]). Aborting. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (150) does not equal response (29603). Slave response is invalid. [operation ID 46bf33b9-3a02-49ff-9a41-89349f236262]
2021-08-04 13:37:39.259 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(failure=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], error = ModbusUnexpectedTransactionIdException(requestTransactionId=150, responseTransactionId=29603)))
2021-08-04 13:37:39.265 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input5000:dw_data5000. Reseting handler
2021-08-04 13:37:39.267 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input5000:dw_data5000 'Modbus Data' has no bridge or it is not online
==> /var/log/openhab/events.log <==
2021-08-04 13:37:39.264 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=150, responseTransactionId=29603). Message: Transaction id of request (150) does not equal response (29603). Slave response is invalid.
2021-08-04 13:37:39.266 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (150) does not equal response (29603). Slave response is invalid.
2021-08-04 13:37:39.270 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from OFFLINE (COMMUNICATION_ERROR): Error (ModbusUnexpectedTransactionIdException) with read. Request: ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3]. Description: ModbusUnexpectedTransactionIdException(requestTransactionId=150, responseTransactionId=29603). Message: Transaction id of request (150) does not equal response (29603). Slave response is invalid. to OFFLINE (BRIDGE_OFFLINE): No online bridge
==> /var/log/openhab/openhab.log <==
2021-08-04 13:37:41.985 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 1 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedResponseFunctionCodeException Function code of request (151) does not equal response (151) [operation ID 1495d771-c1b5-438c-a3eb-20ac60db3e69]
2021-08-04 13:37:44.725 [WARN ] [rt.modbus.internal.ModbusManagerImpl] - Try 2 out of 3 failed when executing request (ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]). Will try again soon. The response did not match the request. Reseting the connection. Error details: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException Transaction id of request (152) does not equal response (29605). Slave response is invalid. [operation ID 1495d771-c1b5-438c-a3eb-20ac60db3e69]
2021-08-04 13:37:44.732 [WARN ] [shd.server.session.ServerSessionImpl] - exceptionCaught(ServerSessionImpl[openhab@/127.0.0.1:52516])[state=Opened] InterruptedByTimeoutException: null
2021-08-04 13:37:47.457 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input200 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3], registers = ModbusRegisterArray(00000000)))
2021-08-04 13:37:47.460 [DEBUG] [ernal.handler.ModbusDataThingHandler] - Thing modbus:data:drexelweiss:dw_input200:dw_data200 channels updated: null. readValueType=int32, readIndex=Optional[200], readSubIndex(or 0)=0, extractIndex=0 -> numeric value 0 and boolValue=false. Registers ModbusRegisterArray(00000000) for request ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=200, length=2, maxTries=3]
2021-08-04 13:38:39.387 [DEBUG] [bus.handler.ModbusPollerThingHandler] - Thing modbus:poller:drexelweiss:dw_input5000 received response PollResult(result=AsyncModbusReadResult(request = ModbusReadRequestBlueprint [slaveId=1, functionCode=READ_INPUT_REGISTERS, start=5000, length=2, maxTries=3], registers = ModbusRegisterArray(0000000E)))
2021-08-04 13:38:39.390 [DEBUG] [ernal.handler.ModbusDataThingHandler] - bridgeStatusChanged for modbus:data:drexelweiss:dw_input5000:dw_data5000. Reseting handler
==> /var/log/openhab/events.log <==
2021-08-04 13:38:39.392 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:poller:drexelweiss:dw_input5000' changed from OFFLINE (COMMUNICATION_ERROR): Error with read: org.openhab.core.io.transport.modbus.exception.ModbusUnexpectedTransactionIdException: Transaction id of request (150) does not equal response (29603). Slave response is invalid. to ONLINE
2021-08-04 13:38:39.395 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'modbus:data:drexelweiss:dw_input5000:dw_data5000' changed from OFFLINE (BRIDGE_OFFLINE): No online bridge to ONLINE

That’s very unusual, down in the bowels of TCP.
It’s possible this wasn’t checked in OH2 and your problem was always there.
I note that it’s working sometimes.
There’s a gateway involved here, right?

yes, i use a USR-W610: https://www.pusr.com/products/rs232/rs485-to-wifi-converters-usr-w610.html

should be the same as the thread openers


@Thomas_Gfeller are you already OH3?

Is the WiFi reliable to the gateway? I’m wondering about messages arriving out of order due to retries etc.
There is no other Modbus Master involved, the D&W PLC doesn’t do that on the serial bus, giving unsolicited messages at OH?
Another possible source of unsolicited messages is the gateway, which can be set up to do autonomous peer-peer stuff.

yes, never had / have problems with oh2 (it still working/active).

only this gateway is connected to the D&W device (plc?).

ok? i didn’t configure more than it’s described in the first post of this thread


As said, it may be that this was not checked before.
You wouldn’t notice poll responses arriving out of order otherwise.

Not at the same time?

yes! (too many problems with 3.1 so parallel systems
 2.5 = “stable”).
could this be the problem?

Okay, so there is another Master. It shouldn’t be a problem, unless something is messed up like both your OH instances on the same IP address.

stopped the binding on 2.5 and started it on 3.1 and 
 tadaaa looks like it works now o_O

Hmm. Did you use duplicate IP address?