The configuration model for the Modbus plugin
List of Modbus devices Each device is identified by its transport protocol and may have multiple datapoints. Two devices are considered equal if the properties values of their transport protocols are equal.
json { "devices": [ { // Unique "transport": { "type": "tcp", "host": "127.0.0.1", "port": 502 }, "datapoints": [] }, { // Unique "transport": { "type": "tcp", "host": "127.0.0.1", "port": 600 }, "datapoints": [] }, { // Unique "transport": { "type": "serial", "baud_rate": "1", "serial_interface": "some_interface", "slave_id": 1 }, "datapoints": [] }, { // Duplicate, the entire serial interface is the same. "transport": { "type": "serial", "baud_rate": "1", "serial_interface": "some_interface", "slave_id": 1 }, "datapoints": [...] } ] }All items must be unique
No Additional ItemsConfiguration for a Modbus device
No Additional PropertiesThe mapping between a datapoint and a Modbus memory block Currently a single datapoint that writes to a Modbus device can only be mapped to a single Modbus memory block. Specifying a datapoint to write to multiple modbus memory blocks is considered an invalid configuration.
No Additional ItemsThe mapping between a datapoint and a Modbus memory block as described in the specification
The mapping between a datapoint and a Modbus holding register
The name of the datapoint
The access mode of the holding register
Read-only access, a datapoint/modbus memory block with this access mode will be read from the modbus device and requires that the same datapoint exists as a publisher in the modbus device
Read-write access, a datapoint/modbus memory block with this access mode will be written to the modbus device and requires that the same datapoint exists as a subscriber in the modbus device
The address of the holding register in the Modbus device
Value must be greater or equal to 0.0
The data type of the holding register
The polling frequency This only takes effect if the access mode is READ. It overrides the pollfrequencyms of the device for this particular datapoint.
The mapping between a datapoint and a Modbus input register
The name of the datapoint
The address of the input register in the Modbus device
Value must be greater or equal to 0.0
The data type of the input register
The polling frequency It overrides the pollfrequencyms of the device for this particular datapoint.
The mapping between a datapoint and a Modbus discrete input
The name of the datapoint
The address of the discrete input in the Modbus device
Value must be greater or equal to 0.0
The polling frequency It overrides the pollfrequencyms of the device for this particular datapoint.
The mapping between a datapoint and a Modbus coil
The name of the datapoint
The address of the coil in the Modbus device
Value must be greater or equal to 0.0
The polling frequency This only takes effect if the access mode is READ. It overrides the pollfrequencyms of the device for this particular datapoint.
The frequency at which the plugin should pull data from the Modbus devices
Value must be greater or equal to 0.0
The transport protocol used by the Modbus device
Value must be greater or equal to 0.0
Baud rate (e.g., 9600)
Value must be greater or equal to 0.0
Serial interface (e.g., "/dev/ttyUSB0")
Slave ID from the modbus specification (e.g., 1)
Value must be greater or equal to 0.0