Industrial Automation

Modbus RTU Troubleshooting: Termination, Biasing and the Errors That Look Random

EDWartens Engineering Team
5 min read
Modbus RTU Troubleshooting: Termination, Biasing and the Errors That Look Random

The short answer

Most Modbus RTU faults are not Modbus faults. They are RS-485 physical layer faults: missing or doubled termination, no bias on an idle line, a star topology instead of a daisy chain, or an earth loop through the shield. If your errors are intermittent, get worse with more devices, or change when someone touches a cable, stop looking at register addresses and look at the wire.

RS-485 in one paragraph

Modbus RTU rides on a two-wire differential pair, usually with a common reference. Differential signalling is why it survives 1,200 metres in a noisy plant: noise couples into both conductors equally and the receiver sees only the difference. That immunity depends on the two conductors staying together in a twisted pair, on the line being terminated at its two ends, and on every device sharing a reference within its common-mode range.

Termination, and the double-termination mistake

Terminate the two physical ends of the line with 120 ohms, matching the cable's characteristic impedance. Two resistors total. Not one per device.

Many devices have a built-in terminator enabled by a DIP switch or a jumper, and the classic failure is a panel where six devices all have it switched on. Six 120 ohm resistors in parallel is 20 ohms, the drivers cannot pull the line, and the symptom is a bus that works at 9600 baud and fails at 19200, or works with the last device disconnected.

Measure it: with everything powered off, resistance across A and B should be about 60 ohms, which is the two terminators in parallel. Anything much lower means too many terminators. Around 120 means only one end is terminated.

Biasing

When no device is transmitting, the line is idle and floating, and a floating differential pair picks up noise that receivers interpret as start bits. Bias resistors pull A high and B low so the idle state is a defined mark.

Bias belongs at exactly one point on the segment, usually at the master or at a device with configurable bias. Multiple biasing devices fight each other and reduce the differential the drivers can achieve.

Symptom of missing bias: framing and parity errors when the bus is quiet, often disappearing under heavy polling because the line is rarely idle.

Topology

Daisy chain, in and out at each device, with short spurs. A star topology, where several branches leave one point, produces reflections that no single termination can absorb. It sometimes works at low speed and short distance, which is why people keep doing it.

Repeaters exist to split a long or branched network into properly terminated segments. Use them rather than hoping.

The reference conductor and the shield

RS-485 receivers have a common-mode range, typically around minus 7 to plus 12 volts. Two devices on different earths at opposite ends of a plant can sit outside it, and the link fails in a way that follows the plant's electrical load rather than anything you are doing. Run the third conductor as a signal reference; do not rely on the plant steel.

Bond the shield at one end only. Bonding both ends creates a loop that carries current from earth potential differences, and that current is right next to your signal pair.

Reading the errors

CRC error. The frame arrived but its checksum failed, so bits were corrupted in transit. This is a physical layer problem, essentially always: termination, noise, an over-long cable at too high a baud rate, or a bad connection.

Timeout, no response. The slave never answered. Address wrong, baud or parity mismatch, slave offline, wiring reversed, or the master's turnaround delay too short for the slave.

Exception code 02, illegal data address. The wire is fine and your register map is wrong, usually by one: many documents number registers from 1 while the protocol addresses from 0. Exception 03, illegal data value, usually means a wrong quantity or a write outside range.

If you are getting exception codes, the physical layer is working. That is useful information: it moves the problem to the map.

The order to check

  1. Baud, parity, stop bits and address on both ends.
  2. A and B not swapped. Reversing them is the single most common wiring error and gives a total silence, not corruption.
  3. Termination: 60 ohms across the pair, powered down.
  4. Bias present at one point only.
  5. Topology: daisy chain, spurs under a metre.
  6. Reference conductor present, shield bonded once.
  7. Cable route away from VFD output cables and contactor coils.
  8. Only then look at the register map.

Both industrial communication and PROFINET and industrial Ethernet cover the physical layer properly. Related reading: PROFINET vs PROFIBUS vs Modbus TCP.

Frequently asked questions

Can I use ordinary twisted pair instead of RS-485 cable? For short low-speed runs it often works. Proper cable has a specified 120 ohm impedance so your terminators match; ordinary cable does not, and the reflections come back at higher speed or longer length.

How many devices on one segment? Standard RS-485 drivers allow 32 unit loads. Many modern transceivers are fractional unit loads and allow more, but the practical limit on a noisy plant is lower than the electrical limit.

Does Modbus TCP have these problems? No, it runs over Ethernet and gets Ethernet's physical layer. It has different problems: switching, duplex mismatch and the fact that it has no authentication at all.

Start Your Engineering Career at EDWartens

Join as a Junior Engineer at Wartens Automation Pvt Ltd. Get hands-on PLC SCADA training, industry certifications, and a 100% Job Guarantee backed by a 100% refund policy.