Skip to content

Industry — Modbus RTU ​

This module analyzes Modbus RTU through a serial port. Select Industry → Modbus RTU and install the Modbus package.

Preparation ​

In Settings → Connections → Transport, select Serial, the port, baud rate, data bits, parity and stop bits. These must match the observed line. RS-485 requires a suitable serial adapter. See connection settings.

Prepare a line carrying traffic for passive observation, or load a .ptrbs file in Tracer for analysis without a connected device.

Two views of communication ​

ToolContents
TracerMessages in time order, device address, function, data, description and response time when an exchange is matched
MonitorSummary by address, function and range: last observed value, period, status and age

Tracer filter expressions use modbus.* fields. Select the device address and function from messages in your trace. Register addresses are zero-based; map addresses from the device documentation accordingly. Request/response matching and value representation are described under Monitor.

How Tracer reconstructs messages ​

A serial port delivers a byte stream: read boundaries do not necessarily coincide with RTU message boundaries. Tracer reconstructs messages using their structure, length and CRC, waiting for missing bytes. The modbus.unitId field therefore represents a parsed device address, not an arbitrary byte with the same value.

Gaps between chunks of bytes in Windows depend on adapter and driver buffers. They do not precisely measure intervals on RS-485; that requires hardware timestamps or capture with measurement equipment.

What the traffic can reveal ​

QuestionWhat to inspect
Which devices and functions appear on the line?Addresses and functions in unfiltered Tracer, then narrow the selection using values from the trace
Which range did the master request?Starting address and item count in the request; a read response alone does not contain the starting address
How did the device respond?The matching response, exception code and message sequence; Response time is available when the exchange is matched
Why was a message not decoded correctly?Source bytes, structure and CRC validation results, and connection settings
How do observed values change?Register(s), Value(s), Period, Age, Count and the row tooltip in Monitor

A filter on the request range does not automatically include the corresponding response. To view both, filter by device address and function, then use timing and message order to match the exchange. Normal responses, exception responses and invalid messages are distinguished in the field reference.

If no response appears, inspect the request, subsequent traffic and capture boundaries. A broadcast request to address 0 has no response. A missing row alone does not establish why a response is absent.

Next steps ​

Protohaund is independent software and is not affiliated with, endorsed by, sponsored by, or certified by any third-party organization referenced in the application.Third-party names, trademarks, product names, device names, protocol names, and standards are referenced solely to identify vehicle applicability, supported products, technologies, protocols, formats, or compatibility.All third-party trademarks and other marks are the property of their respective owners. Their use does not imply any affiliation with, endorsement of, certification of, or approval of Protohaund by their respective owners.Compatibility is limited to the features, devices, protocols, standards, and versions explicitly documented by Protohaund.