Analyzing Device Communications with CrcGenerator
November 9, 2015 /
0 comments / in
General
/ by Ryan Ackerman
This is a utility that has outgrown its name. It was originally developed to help us to verify the Cyclic Redundancy Checks (CRCs) added to messages to guard against transmission errors. Once this basic framework was in place, however, it became an easy place for developers to add communications related features
Choose the “Hex Text Box”(1) mode and copy message data from the Comm. Bytes Viewer into the large text box (2). Highlight bytes (3) to view values interpreted as various data types using standard byte orientations. Big Endian, Little Endian(4), and Word-swapped Big Endian are some of the ways to arrange the transmitted data bytes to represent a number or text. This is useful when verifying that CygNet is correctly parsing data, or when building a Modbus template file where byte orientation or data type is unknown.
Use the navigation buttons to change the byte selection: the “<” and “>” buttons move one byte to the left or right; the “<<” and “>>” buttons move by the number of bytes selected. Highlight a 4-byte value then click “>>”to move to the next 4-byte value (5).
The “Parse for All Data Types” button will display the data at every byte offset for every data type and for each byte orientation (6).
The “Parse Device Specific” button will parse selected data based on the CRC calculation selected. This is implemented for some, but not all EIE’s. If you select the “Emerson” CRC calculation, the highlighted bytes will be parsed as an Emerson message (7).
The “Rosetta Stone” button will look through the data for valid CRCs using every CRC calculation supported. This can be helpful when trying to determine the source of unexpected bytes on a communications channel (8).
CrcGenerator.exe can be found on the CD Image under the Utilities directory.
Share this entry