pub enum ClientRequest {
Show 20 variants
ReadMultipleCoils {
unit: UnitIdOrSlaveAddr,
address: u16,
quantity: u16,
},
WriteSingleCoil {
unit: UnitIdOrSlaveAddr,
address: u16,
value: bool,
},
WriteMultipleCoils {
unit: UnitIdOrSlaveAddr,
address: u16,
coils: Coils,
},
ReadHoldingRegisters {
unit: UnitIdOrSlaveAddr,
address: u16,
quantity: u16,
},
ReadInputRegisters {
unit: UnitIdOrSlaveAddr,
address: u16,
quantity: u16,
},
WriteSingleRegister {
unit: UnitIdOrSlaveAddr,
address: u16,
value: u16,
},
WriteMultipleRegisters {
unit: UnitIdOrSlaveAddr,
address: u16,
values: Vec<u16, { mbus_core::data_unit::common::MAX_PDU_DATA_LEN }>,
},
ReadWriteMultipleRegisters {
unit: UnitIdOrSlaveAddr,
read_address: u16,
read_quantity: u16,
write_address: u16,
write_values: Vec<u16, { mbus_core::data_unit::common::MAX_PDU_DATA_LEN }>,
},
MaskWriteRegister {
unit: UnitIdOrSlaveAddr,
address: u16,
and_mask: u16,
or_mask: u16,
},
ReadDiscreteInputs {
unit: UnitIdOrSlaveAddr,
address: u16,
quantity: u16,
},
ReadFifoQueue {
unit: UnitIdOrSlaveAddr,
address: u16,
},
ReadFileRecord {
unit: UnitIdOrSlaveAddr,
sub_request: SubRequest,
},
WriteFileRecord {
unit: UnitIdOrSlaveAddr,
sub_request: SubRequest,
},
ReadDeviceIdentification {
unit: UnitIdOrSlaveAddr,
read_device_id_code: ReadDeviceIdCode,
object_id: ObjectId,
},
EncapsulatedInterfaceTransport {
unit: UnitIdOrSlaveAddr,
mei_type: EncapsulatedInterfaceType,
data: Vec<u8, { mbus_core::data_unit::common::MAX_PDU_DATA_LEN }>,
},
ReadExceptionStatus {
unit: UnitIdOrSlaveAddr,
},
Diagnostics {
unit: UnitIdOrSlaveAddr,
sub_function: DiagnosticSubFunction,
data: Vec<u16, { mbus_core::data_unit::common::MAX_PDU_DATA_LEN }>,
},
GetCommEventCounter {
unit: UnitIdOrSlaveAddr,
},
GetCommEventLog {
unit: UnitIdOrSlaveAddr,
},
ReportServerId {
unit: UnitIdOrSlaveAddr,
},
}Expand description
User-supplied parameters for a single Modbus request.
Each variant corresponds to one function code (or a closely related group). The task assigns the transaction id; callers never supply it here.
Variants§
ReadMultipleCoils
Read multiple coils (FC 01).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
WriteSingleCoil
Write a single coil (FC 05).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
WriteMultipleCoils
Write multiple coils (FC 15 / 0F).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadHoldingRegisters
Read holding registers (FC 03).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadInputRegisters
Read input registers (FC 04).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
WriteSingleRegister
Write a single register (FC 06).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
WriteMultipleRegisters
Write multiple registers (FC 16 / 10).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadWriteMultipleRegisters
Read and write multiple registers (FC 23 / 17).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
MaskWriteRegister
Mask write register (FC 22 / 16).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadDiscreteInputs
Read discrete inputs (FC 02).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadFifoQueue
Read FIFO queue (FC 18).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReadFileRecord
Read file record (FC 14).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
sub_request: SubRequestSub request details.
WriteFileRecord
Write file record (FC 15).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
sub_request: SubRequestSub request details.
ReadDeviceIdentification
Read device identification (FC 43/14).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
read_device_id_code: ReadDeviceIdCodeRead Device ID Code.
EncapsulatedInterfaceTransport
Encapsulated interface transport (FC 43).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
mei_type: EncapsulatedInterfaceTypeMEI Type.
ReadExceptionStatus
Read exception status (FC 07).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
Diagnostics
Diagnostics sub-function execution (FC 08).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
sub_function: DiagnosticSubFunctionDiagnostic sub-function code.
GetCommEventCounter
Get communication event counter (FC 11 / 0B).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
GetCommEventLog
Get communication event log (FC 12 / 0C).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.
ReportServerId
Report server ID (FC 17 / 11).
Fields
unit: UnitIdOrSlaveAddrUnit or slave address of the Modbus device.