Hello folks,
I have a troubles with “WAVESHARES Modbus RTU Relay 16CH” (See: https://www.waveshare.com/wiki/Modbus_RTU_Relay_16CH)
I replaced previously functional 2x 8CH and adapted the code, which is currently:
The things file:
Bridge modbus:serial:DCRelayId220 "DC-Relay ID 220" [ id=220, port="/dev/ttyUSB0", baud=115200, stopBits="1.0", parity="none", dataBits=8, receiveTimeoutMillis=750, echo=false, encoding="rtu", timeBetweenTransactionsMillis="35", flowControlIn="none", flowControlOut="none", connectTimeoutMillis=1500, afterConnectionDelayMillis=0, enableDiscovery=false ] {
Bridge poller DCRelayId220 "DC-Relay ID 220 :: poller" [start=0, length=16, refresh=1000, type="coil" ] {
Thing data Relay1 "DC-Relay ID 220 :: 01" [ readStart="0", readValueType="bit", writeType="coil", writeStart="0", writeValueType="bit" ]
Thing data Relay2 "DC-Relay ID 220 :: 02" [ readStart="1", readValueType="bit", writeType="coil", writeStart="1", writeValueType="bit" ]
Thing data Relay3 "DC-Relay ID 220 :: 03" [ readStart="2", readValueType="bit", writeType="coil", writeStart="2", writeValueType="bit" ]
Thing data Relay4 "DC-Relay ID 220 :: 04" [ readStart="3", readValueType="bit", writeType="coil", writeStart="3", writeValueType="bit" ]
Thing data Relay5 "DC-Relay ID 220 :: 05" [ readStart="4", readValueType="bit", writeType="coil", writeStart="4", writeValueType="bit" ]
Thing data Relay6 "DC-Relay ID 220 :: 06" [ readStart="5", readValueType="bit", writeType="coil", writeStart="5", writeValueType="bit" ]
Thing data Relay7 "DC-Relay ID 220 :: 07" [ readStart="6", readValueType="bit", writeType="coil", writeStart="6", writeValueType="bit" ]
Thing data Relay8 "DC-Relay ID 220 :: 08" [ readStart="7", readValueType="bit", writeType="coil", writeStart="7", writeValueType="bit" ]
Thing data Relay9 "DC-Relay ID 220 :: 09" [ readStart="8", readValueType="bit", writeType="coil", writeStart="8", writeValueType="bit" ]
Thing data Relay10 "DC-Relay ID 220 :: 10" [ readStart="9", readValueType="bit", writeType="coil", writeStart="9", writeValueType="bit" ]
Thing data Relay11 "DC-Relay ID 220 :: 11" [ readStart="10", readValueType="bit", writeType="coil", writeStart="10", writeValueType="bit" ]
Thing data Relay12 "DC-Relay ID 220 :: 12" [ readStart="11", readValueType="bit", writeType="coil", writeStart="11", writeValueType="bit" ]
Thing data Relay13 "DC-Relay ID 220 :: 13" [ readStart="12", readValueType="bit", writeType="coil", writeStart="12", writeValueType="bit" ]
Thing data Relay14 "DC-Relay ID 220 :: 14" [ readStart="13", readValueType="bit", writeType="coil", writeStart="13", writeValueType="bit" ]
Thing data Relay15 "DC-Relay ID 220 :: 15" [ readStart="14", readValueType="bit", writeType="coil", writeStart="14", writeValueType="bit" ]
Thing data Relay16 "DC-Relay ID 220 :: 16" [ readStart="15", readValueType="bit", writeType="coil", writeStart="15", writeValueType="bit" ]
}
}
The items file
Switch DC_220_relay_1 "DC-Relay 01" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay1:switch"}
Switch DC_220_relay_2 "DC-Relay 02" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay2:switch"}
Switch DC_220_relay_3 "DC-Relay 03" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay3:switch"}
Switch DC_220_relay_4 "DC-Relay 04" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay4:switch"}
Switch DC_220_relay_5 "DC-Relay 05" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay5:switch"}
Switch DC_220_relay_6 "DC-Relay 06" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay6:switch"}
Switch DC_220_relay_7 "DC-Relay 07" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay7:switch"}
Switch DC_220_relay_8 "DC-Relay 08" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay8:switch"}
Switch DC_220_relay_9 "DC-Relay 09" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay9:switch"}
Switch DC_220_relay_10 "DC-Relay 10" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay10:switch"}
Switch DC_220_relay_11 "DC-Relay 11" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay11:switch"}
Switch DC_220_relay_12 "DC-Relay 12" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay12:switch"}
Switch DC_220_relay_13 "DC-Relay 13" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay13:switch"}
Switch DC_220_relay_14 "DC-Relay 14" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay14:switch"}
Switch DC_220_relay_15 "DC-Relay 15" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay15:switch"}
Switch DC_220_relay_16 "DC-Relay 16" <switch> {channel="modbus:data:DCRelayId220:DCRelayId220:Relay16:switch"}
This 16CH relay behaves strange. I can turn on each relay but only once.
After turning the relay on, the switch shows, the relay is off.
Where is the error?
It is the same trouble as it was on V1 versions of 8CH relays?
See: OH3 Waveshare Relay v1 modbus
- Platform information:
- Hardware: ARM64
- OS: Armbian
- Runtime Environment: Docker
- openHAB version: 3.4