Overview
Most Modbus RTU commissioning failures trace back to physical-layer or serial-parameter issues that could have been caught before deploying a gateway configuration. This checklist covers what to verify at the site before loading any QuickServer configuration.
Complete each section in order. If any step fails, resolve it before moving to the next.
Before You Go to Site
Collect this information from the customer before traveling — especially for remote locations:
| # | Item | Why It Matters |
|---|---|---|
| 1 | Modbus RTU serial settings (baud rate, parity, stop bits, data bits) | Mismatched settings = zero communication |
| 2 | Slave/Node ID(s) for each device | Default 247 is rarely correct |
| 3 | Register map (manufacturer documentation) | Configuration is blocked without it |
| 4 | Register type — holding (4xxxx) or input (3xxxx) registers? | Wrong type = timeouts on valid addresses |
| 5 | Addressing convention — standard (1-based), PDU (0-based), or page-based? | #1 cause of wrong data reads |
| 6 | Number of devices on the RS-485 bus | Affects polling and addressing |
| 7 | Site contact — single person with on-site access and authority | Avoids fragmented communication |
[!WARNING] For remote sites (>2 hours from technician): Provide the customer with this checklist and ask them to verify basic connectivity with a Modbus scanner tool before scheduling a site visit.
Step 1: Verify RS-485 Wiring
RS-485 wiring errors are the #1 physical-layer cause of Modbus RTU failure. Check these first — before touching any configuration.
- A/B lines are correct — RS-485 is a differential pair. Reversed A/B lines produce zero communication with no error indication. Swap and re-test if in doubt.
- Ground reference — connect the signal ground (GND) between devices if available. Missing ground reference causes intermittent errors on longer cable runs.
- Cable length — RS-485 supports up to ~1200m (4000ft) at 9600 baud. Higher baud rates reduce maximum cable length.
- Termination resistors — for cable runs over 30m (100ft) or high baud rates, verify 120Ω termination resistors are installed at both ends of the RS-485 bus.
- No star/spur topology — RS-485 requires a daisy-chain (bus) topology. Star wiring causes signal reflections and intermittent timeouts.
[!TIP] Swap A and B wires and re-test. This resolves roughly half of “no communication” cases.
Step 2: Verify Serial Parameters
All devices on the same RS-485 bus must use identical serial settings. Verify these match between the gateway and every slave device:
| Parameter | Check Against | Common Default |
|---|---|---|
| Baud Rate | Manufacturer documentation | 9600 or 19200 |
| Data Bits | Manufacturer documentation | 8 |
| Parity | Manufacturer documentation | None or Even |
| Stop Bits | Manufacturer documentation | 1 |
- All four parameters match between the gateway and the target device
- Parameters match the manufacturer’s documented settings (not assumed defaults)
- If using non-standard baud rates (e.g., 192000), confirm the gateway supports them
[!WARNING] Some controllers use baud rates like 192000 with 2 stop bits. Always verify against the manufacturer documentation rather than assuming standard values.
Step 3: Confirm Device Connectivity with a Scanner
Before deploying any gateway configuration, verify that the Modbus device is reachable using a standalone scanner tool. This isolates device/wiring issues from configuration issues.
Using CAS Modbus Scanner or ModScan:
- Connect your laptop directly to the RS-485 bus (using a USB-to-RS-485 adapter)
- Set the scanner to the serial parameters from Step 2
- Enter the device’s Slave ID
- Read a known register (pick one from the manufacturer register map)
- Verify the returned value is plausible
Interpreting results:
| Scanner Result | Meaning | Next Step |
|---|---|---|
| Valid data returned | Device is reachable, wiring is good | Proceed to Step 4 |
| Timeout / no response | Wiring, serial settings, or Slave ID issue | Go back to Steps 1–2 |
| Exception response | Device is reachable but rejecting the request | Check function code and register address |
| Garbled / CRC errors | Baud rate or parity mismatch | Re-verify serial settings (Step 2) |
[!NOTE] If the scanner can’t reach the device, the gateway won’t either. Don’t load the configuration until this step passes.
Step 4: Validate Register Addresses
With scanner connectivity confirmed, verify that the register addresses in your point list are correct:
- Read 3–5 known registers and compare values to the device display or known state
- Check for off-by-one — if values don’t match, try decrementing the address by 1 (see Modbus Addressing & Register Reference)
- Verify register type — if holding registers (FC03) timeout, try input registers (FC04) for the same address
- Test 32-bit values — if floats read as zeros or garbage, check byte order
Step 5: Capture a Baseline Diagnostic
Once the system is working:
- Generate a full diagnostic file from the gateway (minimum 300-second capture)
- Save it with the date — this is your “known good” baseline
- If issues appear later, capture another diagnostic and compare the two to identify what changed
This is especially important for remote sites where return visits are costly.
Step 6: Deploy the Gateway Configuration
Only after Steps 1–5 pass:
- Upload the QuickServer configuration file
- Verify that mapped points show correct values
- Confirm read/write operations work for any writable points
- Check BACnet (or other output protocol) objects reflect the expected Modbus values
Common Commissioning Failures
For a full symptom-based diagnostic guide, see the Modbus Troubleshooting Guide.
| Symptom | Most Likely Cause | Fix |
|---|---|---|
| Zero communication | RS-485 A/B wiring reversed | Swap A and B wires |
| Zero communication | Baud rate mismatch | Verify serial settings against manufacturer docs |
| Zero communication | Wrong Slave ID | Verify device ID (don’t assume default 247) |
| Timeouts after initial success | Intermittent wiring issue | Re-check connections, capture comparative diagnostics |
| Wrong data values | Register address off-by-one | Decrement address by 1 |
| Wrong data values | Byte order mismatch (32-bit) | Try word-swap (CDAB) |
| Exception response from device | Wrong function code or register type | Try FC03 vs FC04, or check if register is read-only |
| CRC errors | Parity or stop bits mismatch | Match all serial parameters exactly |
| Works on some devices but not others | Mixed Slave IDs or serial settings | Verify each device independently |
Chipkin Tools
- QuickServer — Protocol gateway for Modbus RTU, BACnet, and 100+ protocols
- QuickServer — Next-generation protocol conversion gateway
- CAS Modbus Scanner — Standalone scanner for pre-commissioning device verification
- USB-to-RS-485 Adapter Driver Setup — Driver installation for the Chipkin USB-to-RS-485 converter
- Chipkin support — Expert help with Modbus RTU commissioning
Related Articles
- Modbus Addressing & Register Reference — register ranges, function codes, addressing conventions
- Modbus Data Types & Byte Order Reference — endianness, scaling factors, multi-register values
- Modbus Troubleshooting Guide — symptom-based diagnostic guide
- Modbus Knowledge Base — general protocol overview