ROOTCASTLE / ENGINEERING LAB
Protocol inspector
Decode Modbus RTU, UART and CAN frames.
LOCAL CALCULATION · NO DEVICE CONNECTION
Modbus RTU decoder
✓ Valid frame · Request
| Field | Bytes | Value |
|---|---|---|
| slave | 01 | 1 |
| function | 03 | 3 Read Holding Registers |
| start | 00 00 | 0 (0x0000) |
| quantity | 00 0A | 10 |
| crc | C5 CD | 0xCDC5 = 0xCDC5 |
Model and assumptions
RTU frame: address, function, data, CRC-16 (reflected polynomial 0xA001, initial 0xFFFF, low byte first). The same function code has different lengths in request and response; automatic direction can be wrong for ambiguous frames. Addresses are zero-based; the 40001 notation is a device convention. Word order of 32-bit values depends on the device.
CRC: c=0xFFFF; c^=byte; 8×{ c = c&1 ? (c>>1)^0xA001 : c>>1 }
What it is for
The most common field communication faults are a wrong CRC, a wrong address, mixed-up word order and timeouts. Paste a frame copied from an analyser or a serial log to see which field is wrong, the device exception code and the likely interpretations of register values.
Limitations
The tool does not connect to devices or send data; every calculation runs in your browser. Modbus ASCII, Modbus TCP, CAN FD and J1939/CANopen payload interpretation are out of scope. Automatic direction can be wrong for ambiguous frames; choose it manually.
References
Modbus over Serial Line V1.02 · Modbus Application Protocol V1.1b3 · ISO 11898-1:2015 (CAN data link layer) · CRC catalogue
Educational model. Results are not sufficient to diagnose a machine or establish safe operating limits.