Modbus RTU Client
The Modbus RTU Client is exposed as an MbRtuClient component when a Serial instance is configured in mb_client mode.
All methods on this page require id, which identifies the MbRtuClient component instance.
Available methods:
MbRtuClient.GetConfigMbRtuClient.SetConfigMbRtuClient.GetStatusMbRtuClient.ReadHoldingRegistersMbRtuClient.ReadInputRegistersMbRtuClient.ReadDiscreteInputsMbRtuClient.ReadCoilsMbRtuClient.WriteHoldingRegistersMbRtuClient.WriteSingleRegisterMbRtuClient.WriteCoils
Methods
MbRtuClient.GetConfig
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
Find the MbRtuClient.GetConfig response properties in Configuration
MbRtuClient.SetConfig
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| object | Configuration to apply |
MbRtuClient.GetStatus
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
Find the MbRtuClient.GetStatus response properties in Status
MbRtuClient.ReadHoldingRegisters
Read Holding Registers (function code 0x03).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start register address ( |
| number | Number of registers to read, |
Response:
| Property | Type | Description |
|---|---|---|
| array of numbers | Array of 16-bit unsigned register values |
MbRtuClient.ReadInputRegisters
Read Input Registers (function code 0x04).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start register address ( |
| number | Number of registers to read, |
Response:
| Property | Type | Description |
|---|---|---|
| array of numbers | Array of 16-bit unsigned register values |
MbRtuClient.ReadDiscreteInputs
Read Discrete Inputs (function code 0x02).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start bit address ( |
| number | Number of bits to read, |
Response:
| Property | Type | Description |
|---|---|---|
| array of booleans | Array of input values |
MbRtuClient.ReadCoils
Read Coils (function code 0x01).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start bit address ( |
| number | Number of bits to read, |
Response:
| Property | Type | Description |
|---|---|---|
| array of booleans | Array of coil values |
MbRtuClient.WriteHoldingRegisters
Write Multiple Holding Registers (function code 0x10).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start register address ( |
| array of numbers | Array of 16-bit unsigned values, |
Return:
This method returns status only.
MbRtuClient.WriteSingleRegister
Write a single Holding Register (function code 0x06).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Register address ( |
| number | 16-bit unsigned value ( |
Return:
This method returns status only.
MbRtuClient.WriteCoils
Write Multiple Coils (function code 0x0F).
Properties:
| Property | Type | Description |
|---|---|---|
| number | MbRtuClient component instance id |
| number | Modbus server id, |
| number | Start bit address ( |
| array of booleans | Array of coil values, |
Return:
This method returns status only.
Configuration
At the moment, MbRtuClient has no configurable properties.
Status
At the moment, MbRtuClient has no status properties.
Examples
MbRtuClient.ReadHoldingRegisters example
- MbRtuClient.ReadHoldingRegisters HTTP GET Request
- MbRtuClient.ReadHoldingRegisters Curl Request
- MbRtuClient.ReadHoldingRegisters Mos Request
http://192.168.33.1/rpc/MbRtuClient.ReadHoldingRegisters?id=0&sid=1&addr=100&qty=2
curl -X POST -d '{"id":1,"method":"MbRtuClient.ReadHoldingRegisters","params":{"id":0,"sid":1,"addr":100,"qty":2}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.ReadHoldingRegisters '{"id":0,"sid":1,"addr":100,"qty":2}'
Response
- MbRtuClient.ReadHoldingRegisters HTTP GET Response
- MbRtuClient.ReadHoldingRegisters Curl Response
- MbRtuClient.ReadHoldingRegisters Mos Response
{
"values": [
230,
231
]
}
{
"id": 1,
"params": {
"values": [
230,
231
]
}
}
{
"values": [
230,
231
]
}
MbRtuClient.ReadInputRegisters example
- MbRtuClient.ReadInputRegisters HTTP GET Request
- MbRtuClient.ReadInputRegisters Curl Request
- MbRtuClient.ReadInputRegisters Mos Request
http://192.168.33.1/rpc/MbRtuClient.ReadInputRegisters?id=0&sid=1&addr=300&qty=3
curl -X POST -d '{"id":1,"method":"MbRtuClient.ReadInputRegisters","params":{"id":0,"sid":1,"addr":300,"qty":3}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.ReadInputRegisters '{"id":0,"sid":1,"addr":300,"qty":3}'
Response
- MbRtuClient.ReadInputRegisters HTTP GET Response
- MbRtuClient.ReadInputRegisters Curl Response
- MbRtuClient.ReadInputRegisters Mos Response
{
"values": [
1123,
1127,
1131
]
}
{
"id": 1,
"params": {
"values": [
1123,
1127,
1131
]
}
}
{
"values": [
1123,
1127,
1131
]
}
MbRtuClient.ReadDiscreteInputs example
- MbRtuClient.ReadDiscreteInputs HTTP GET Request
- MbRtuClient.ReadDiscreteInputs Curl Request
- MbRtuClient.ReadDiscreteInputs Mos Request
http://192.168.33.1/rpc/MbRtuClient.ReadDiscreteInputs?id=0&sid=2&addr=0&qty=4
curl -X POST -d '{"id":1,"method":"MbRtuClient.ReadDiscreteInputs","params":{"id":0,"sid":2,"addr":0,"qty":4}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.ReadDiscreteInputs '{"id":0,"sid":2,"addr":0,"qty":4}'
Response
- MbRtuClient.ReadDiscreteInputs HTTP GET Response
- MbRtuClient.ReadDiscreteInputs Curl Response
- MbRtuClient.ReadDiscreteInputs Mos Response
{
"values": [
true,
false,
false,
true
]
}
{
"id": 1,
"params": {
"values": [
true,
false,
false,
true
]
}
}
{
"values": [
true,
false,
false,
true
]
}
MbRtuClient.ReadCoils example
- MbRtuClient.ReadCoils HTTP GET Request
- MbRtuClient.ReadCoils Curl Request
- MbRtuClient.ReadCoils Mos Request
http://192.168.33.1/rpc/MbRtuClient.ReadCoils?id=0&sid=2&addr=10&qty=5
curl -X POST -d '{"id":1,"method":"MbRtuClient.ReadCoils","params":{"id":0,"sid":2,"addr":10,"qty":5}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.ReadCoils '{"id":0,"sid":2,"addr":10,"qty":5}'
Response
- MbRtuClient.ReadCoils HTTP GET Response
- MbRtuClient.ReadCoils Curl Response
- MbRtuClient.ReadCoils Mos Response
{
"values": [
false,
true,
true,
false,
false
]
}
{
"id": 1,
"params": {
"values": [
false,
true,
true,
false,
false
]
}
}
{
"values": [
false,
true,
true,
false,
false
]
}
MbRtuClient.WriteHoldingRegisters example
- MbRtuClient.WriteHoldingRegisters HTTP GET Request
- MbRtuClient.WriteHoldingRegisters Curl Request
- MbRtuClient.WriteHoldingRegisters Mos Request
http://192.168.33.1/rpc/MbRtuClient.WriteHoldingRegisters?id=0&sid=3&addr=400&values=[1000,2000]
curl -X POST -d '{"id":1,"method":"MbRtuClient.WriteHoldingRegisters","params":{"id":0,"sid":3,"addr":400,"values":[1000,2000]}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.WriteHoldingRegisters '{"id":0,"sid":3,"addr":400,"values":[1000,2000]}'
Response
- MbRtuClient.WriteHoldingRegisters HTTP GET Response
- MbRtuClient.WriteHoldingRegisters Curl Response
- MbRtuClient.WriteHoldingRegisters Mos Response
{}
{
"id": 1,
"params": {}
}
{}
MbRtuClient.WriteSingleRegister example
- MbRtuClient.WriteSingleRegister HTTP GET Request
- MbRtuClient.WriteSingleRegister Curl Request
- MbRtuClient.WriteSingleRegister Mos Request
http://192.168.33.1/rpc/MbRtuClient.WriteSingleRegister?id=0&sid=3&addr=402&value=1234
curl -X POST -d '{"id":1,"method":"MbRtuClient.WriteSingleRegister","params":{"id":0,"sid":3,"addr":402,"value":1234}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.WriteSingleRegister '{"id":0,"sid":3,"addr":402,"value":1234}'
Response
- MbRtuClient.WriteSingleRegister HTTP GET Response
- MbRtuClient.WriteSingleRegister Curl Response
- MbRtuClient.WriteSingleRegister Mos Response
{}
{
"id": 1,
"params": {}
}
{}
MbRtuClient.WriteCoils example
- MbRtuClient.WriteCoils HTTP GET Request
- MbRtuClient.WriteCoils Curl Request
- MbRtuClient.WriteCoils Mos Request
http://192.168.33.1/rpc/MbRtuClient.WriteCoils?id=0&sid=4&addr=0&values=[true,true,false,true]
curl -X POST -d '{"id":1,"method":"MbRtuClient.WriteCoils","params":{"id":0,"sid":4,"addr":0,"values":[true,true,false,true]}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.WriteCoils '{"id":0,"sid":4,"addr":0,"values":[true,true,false,true]}'
Response
- MbRtuClient.WriteCoils HTTP GET Response
- MbRtuClient.WriteCoils Curl Response
- MbRtuClient.WriteCoils Mos Response
{}
{
"id": 1,
"params": {}
}
{}
MbRtuClient.GetConfig example
- MbRtuClient.GetConfig HTTP GET Request
- MbRtuClient.GetConfig Curl Request
- MbRtuClient.GetConfig Mos Request
http://192.168.33.1/rpc/MbRtuClient.GetConfig?id=0
curl -X POST -d '{"id":1,"method":"MbRtuClient.GetConfig","params":{"id":0}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.GetConfig '{"id":0}'
Response
- MbRtuClient.GetConfig HTTP GET Response
- MbRtuClient.GetConfig Curl Response
- MbRtuClient.GetConfig Mos Response
{}
{
"id": 1,
"params": {}
}
{}
MbRtuClient.SetConfig example
- MbRtuClient.SetConfig HTTP GET Request
- MbRtuClient.SetConfig Curl Request
- MbRtuClient.SetConfig Mos Request
http://192.168.33.1/rpc/MbRtuClient.SetConfig?id=0&config={}
curl -X POST -d '{"id":1,"method":"MbRtuClient.SetConfig","params":{"id":0,"config":{}}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.SetConfig '{"id":0,"config":{}}'
Response
- MbRtuClient.SetConfig HTTP GET Response
- MbRtuClient.SetConfig Curl Response
- MbRtuClient.SetConfig Mos Response
{
"restart_required": false
}
{
"id": 1,
"params": {
"restart_required": false
}
}
{
"restart_required": false
}
MbRtuClient.GetStatus example
- MbRtuClient.GetStatus HTTP GET Request
- MbRtuClient.GetStatus Curl Request
- MbRtuClient.GetStatus Mos Request
http://192.168.33.1/rpc/MbRtuClient.GetStatus?id=0
curl -X POST -d '{"id":1,"method":"MbRtuClient.GetStatus","params":{"id":0}}' http://${SHELLY}/rpc
mos --port ${PORT} call MbRtuClient.GetStatus '{"id":0}'
Response
- MbRtuClient.GetStatus HTTP GET Response
- MbRtuClient.GetStatus Curl Response
- MbRtuClient.GetStatus Mos Response
{}
{
"id": 1,
"params": {}
}
{}