Modbus RTU over RS-485 connects meters, drives and controllers to a master on one twisted-pair trunk. Commissioning proves the physical bus, the serial settings, each device's identity, the meaning of every register you read, the polling time and what the system does when a device stops answering. This guide follows that order and ends with an acceptance record. For equipment on the network rather than a serial bus, the Modbus TCP vs RTU guide covers the differences.
Download the acceptance record (.txt). Print it, or fill it in on site.
Record the device contract
For every device, record the exact model and firmware, the unit ID (station address), baud rate, parity, data bits and stop bits. All devices on one bus use the same serial settings.
For every point you need, record the object type, the function code, the zero-based protocol offset, the reference number as the manual writes it, the register count, the data type, the byte and word order, the scale, the unit, read or write access and the expected range.
Manuals write register addresses in different conventions. 40001 in a classic reference means holding register offset 0, read with function code 03:
The Modbus address converter keeps the object type and each convention visible, so a one-register shift is caught before it reaches the point map.
Wire the RS-485 bus
The Modbus serial line guide describes one trunk with the devices connected along it, a line termination at each end, polarisation (bias) at one point, and a common conductor. The RS-485 wiring guide explains each rule, and the RS-485 vs Modbus guide separates the electrical layer from the protocol.
Check:
- two-wire or four-wire mode and the terminal names on every device (manufacturers use A/B, D+/D−, 485+/485− and swap the letters);
- one continuous daisy-chained trunk, with short stubs and no star branches;
- a terminator at each end of the trunk, and only there;
- one bias source, where the network needs it; many masters and some devices have switchable bias;
- the common conductor, the shield and the earthing to the project design;
- repeaters and isolators, and their position.
The RS-485 termination and bias checker checks a topology for contradictions, such as three terminators or bias at two points. Device instructions decide whether termination and bias are built in, switchable or external.
Add one device at a time
Start with a short, known-good segment and one device. Confirm the serial settings and read one simple documented value. Then add devices one at a time and keep a station list. Two devices with the same unit ID answer the same request and corrupt each other's replies, which looks like an intermittent fault.
For common meters, the Modbus register maps in the Device Directory give each address in decimal and hex with its function code, data format, scaling and word order, taken from the manufacturer's protocol document.
An exception response is useful evidence: the device heard the request and rejected it. Code 02 (illegal data address) usually means a wrong offset or register count; silence means wiring, serial settings or the unit ID. The Modbus function and exception codes lists every code.
To test a request by hand, calculate its CRC. This request reads three holding registers from unit 17 (0x11), starting at offset 107 (0x6B):
Decode values: a worked example
Two 16-bit registers can hold a 32-bit float, a 32-bit integer or two separate values. The register map defines the type, the word order and the byte order. Capture the raw register words for a stable value and decode them by hand before you map the rest of the device.
For example, the words 436A 0000 decode as a 32-bit float in big-endian word and byte order to 234.0, a plausible phase voltage:
Compare the decoded value with the device's own display. A wrong word order can still give a small, plausible number, so a match with the display is the proof. Keep the raw vector with the configuration, so that a firmware or map change is detected later. The register map guide explains address conventions, data types, word order and scaling in full.
Polling and timeout settings
Frame time depends on the baud rate and the character format. The polling cycle also depends on each device's response time, the delay between requests, the retry policy and the number and size of requests.
At 9600 baud, even parity and one stop bit, with an 8-byte request, a 25-byte response, a 5 ms response delay and ten devices, one complete cycle takes about 470 ms:
Use the calculation as a lower bound, then measure the real devices. Record the slowest response time seen in normal operation, not only on a quiet bench. Polling faster than the bus allows produces timeouts, not more data. The polling and retries guide shows what an offline device costs every cycle, and the troubleshooting guide sorts timeouts, exceptions and wrong values.
Data quality
The receiving application must tell a fresh value from a cached, timed-out, exception, out-of-range or stale one. Define:
- the acquisition timestamp and, where the device has one, the source timestamp;
- the maximum acceptable age of a value;
- the retry and offline thresholds;
- whether the last value stays visible, and how it is marked;
- reset and rollover handling for counters;
- what downstream rules do when a value is not good.
Acceptance record
Keep one record for each bus. The downloadable template covers:
| Field | Example |
|---|---|
| Master, model and firmware | ZMB interface |
| Serial settings | 9600 baud, 8 data bits, even parity, 1 stop bit |
| Topology | Daisy chain, 120 Ω at the master and at unit 3, bias at the master |
| Device list | Unit IDs 1 to 3, models and firmware recorded |
| Raw vector for each data type | 436A 0000 = 234.0 V, matches display |
| Polling cycle, calculated and measured | 470 ms calculated, 520 ms measured |
| Failure tests | One device unplugged: others still polled, value marked stale |
| Name and date |
Repeat the tests after a firmware, register map, topology, serial setting or polling change. For the complete design, continue to the meter integration guide for a BMS or SCADA system, browse Modbus devices with documented register maps, or build a system from the device list.