{ "kind": "busloom-device-definition", "schemaVersion": 1, "id": "waveshare.modbus-rtu-relay-8ch", "name": "Waveshare Modbus RTU Relay 8CH", "description": "Core register map transcribed from the official Modbus RTU Relay 8CH protocol documentation.", "tagGroups": [ { "id": "waveshare.modbus.rtu.relay.8ch.group.outputs", "name": "Relay outputs", "color": "orange" }, { "id": "waveshare.modbus.rtu.relay.8ch.group.device", "name": "Device information", "color": "neutral" } ], "tags": [ { "id": "waveshare.modbus.rtu.relay.8ch.coil.000.relay-1", "name": "Relay 1", "addressSpace": "coils", "address": 0, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.001.relay-2", "name": "Relay 2", "addressSpace": "coils", "address": 1, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.002.relay-3", "name": "Relay 3", "addressSpace": "coils", "address": 2, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.003.relay-4", "name": "Relay 4", "addressSpace": "coils", "address": 3, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.004.relay-5", "name": "Relay 5", "addressSpace": "coils", "address": 4, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.005.relay-6", "name": "Relay 6", "addressSpace": "coils", "address": 5, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.006.relay-7", "name": "Relay 7", "addressSpace": "coils", "address": 6, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.coil.007.relay-8", "name": "Relay 8", "addressSpace": "coils", "address": 7, "dataType": "boolean", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": null, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Relay state; read with FC01 and control with FC05 or FC15.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.outputs" }, { "id": "waveshare.modbus.rtu.relay.8ch.holding.8192.uart-parameters", "name": "UART parameters", "addressSpace": "holdingRegisters", "address": 8192, "dataType": "uint16", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": 0, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Parity mode in the high byte and baud-rate mode in the low byte.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.device" }, { "id": "waveshare.modbus.rtu.relay.8ch.holding.16384.device-address", "name": "Device address", "addressSpace": "holdingRegisters", "address": 16384, "dataType": "uint16", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 1, "offset": 0, "displayDecimals": 0, "minimum": 1, "maximum": 255, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Configured Modbus device address.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.device" }, { "id": "waveshare.modbus.rtu.relay.8ch.holding.32768.software-version", "name": "Software version", "addressSpace": "holdingRegisters", "address": 32768, "dataType": "uint16", "notation": "decimal", "registerCount": 1, "byteOrder": "bigEndian", "wordOrder": "mostSignificantFirst", "scale": 0.01, "offset": 0, "displayDecimals": 2, "minimum": null, "maximum": null, "valueLabels": [], "trueLabel": "ON", "falseLabel": "OFF", "alarms": [], "unit": "", "description": "Raw integer scaled by 0.01; 100 represents version 1.00.", "groupId": "waveshare.modbus.rtu.relay.8ch.group.device" } ], "views": [ { "id": "waveshare.modbus.rtu.relay.8ch.view.outputs", "name": "Relay outputs", "type": "coils", "addressMode": "range", "startAddress": 0, "quantity": 8, "addresses": [], "pollIntervalMs": 500 }, { "id": "waveshare.modbus.rtu.relay.8ch.view.device", "name": "Device information", "type": "holdingRegisters", "addressMode": "custom", "startAddress": 16384, "quantity": 1, "addresses": [ 16384, 32768 ], "pollIntervalMs": 5000 } ] }