·
Module 11Physical Network & Transport7 min.md

RTU & ASCII Frames

Overview

What you'll learn

Frame structure, CRC vs LRC, silent intervals, and reading captures by hand.

Sections
12
Labs
2
Quiz
7 Qs
What you'll be able to do
  • Read an RTU capture byte by byte: address, FC, data, CRC.
  • Compute a Modbus CRC by hand or with the workbench tool.
  • Convert between RTU and ASCII framings for the same PDU.
Why you'll need this
  • "You're handed a hex dump 01 03 00 00 00 02 C4 0B — label every byte and explain what the device is asking for."
Three things people get wrong
  1. 1.
    Writing the CRC high byte first
    Fix Modbus appends CRC low byte then high. CRC = 0x0BC4 goes on the wire as C4 0B.
  2. 2.
    Including the colon or CRLF in the LRC
    Fix ASCII LRC covers the binary message bytes only — exclude ':' and the trailing CR/LF.
  3. 3.
    Treating bad CRC as an exception
    Fix A device that sees a bad CRC discards the frame silently. The client sees a timeout, not 83 xx.
From the field

The CRC that was off by one byte

A homebrew script computed the CRC on the address plus PDU but forgot to include the byte count for FC 17. Every response looked right except the last two bytes. The fix was three lines of code, but the team spent a day blaming the cable.

Cited sources

Primary sources come from protocol and standards publishers. Secondary sources provide supporting tool, vendor, or reference context.

This module is paginated — step through the sections, run the labs, then take the quiz. Progress is saved locally.

Print one-pager →