Found some Railduino documentation
http://www.sedtronic.cz/soubory/stranky/Manual-Railduino-v1.3-update-14112016-EN.pdf
Key parts -
1 IO address of the Railduino register ....
a. the digital inputs are in the form of full bytes at the addresses 1.2.3
That is open to interpretation, but I think it means the inputs bits are packed into the low byte of the 16-bit Modbus registers 1, 2 and 3
Note that sometimes “Modbus register 1” can mean address 0, so perhaps try that if “start=1” doesn’t seem to owrk.
2. Command - for the sensors always 3 - read holding registers
Not clear if “sensors” here is meant to include digital inputs, but lets guess it does. (it could also be that digital inputs are to be found in input registers instead)
So guessing at a binding config for the first few inputs -
modbus.cfg
modbus:poll=500
modbus:writemultipleregisters=true
modbus:tcp.railin.connection=192.168.0.184
modbus:tcp.railin.type=holding
modbus.tcp.railin.start=1
modbus.tcp.railin.length=1
modbus.tcp.railin.valuetype=bit
items file (for OH1, no idea about OH2)
Contact Railduino_DI1 “bit 0 [%s]” {modbus=“railin:0”}
Contact Railduino_DI2 “bit 1 [%s]” {modbus=“railin:1”}