dbx full_duplex_data_link User Manual
Page 3
Full Duplex Transport Layer Specification
Page 3 of 5
will be performed optically for the RS-485 interface. Ground isolation for the RS-232 interface will
also be performed optically due to the wide range of impedances presented by various transceivers.
3. Frame Wrapper
The Frame is wrapped with a frame start byte, frame count byte and 8 bit CRC checksum. The Frame
Start Byte distinguishes the frame from the handshake flags. The frame count facilitates rejection of
repeat frames that result from race conditions that result from a simultaneous timeout/ACKnowledge.
Checksum ensures veracity of the frame contents.
3.1. Frame Formats
Two frame formats are provided to allow for minimal network overhead when needed while also
providing maximal data integrity when desired.
3.1.1. Unacknowledged Frames – Datagrams
Unacknowledged frames, similar to UDP datagrams, are designed for in situations where reliable
delivery is unnecessary and speed is most important.
The checksum at the end of the frame is the CCITT-8 CRC for the frame. The CRC should be
calculated from all bytes in the frame, including the addresses, length and data bytes.
Datagram/Unreliable frame
Frame Start
UBYTE
0x64
Frame Count
UBYTE
0x00
VERSION UBYTE
0x01
LEN
ULONG
Length of entire packet (not including FS FC, CS)
SRC UWORD/ULONG
DEST UWORD/ULONG
MSG_ID UWORD
FLAGS
UWORD
(there is no guaranteed bit)
(Payload)
Checksum UBYTE
CCITT-8
3.1.2. Acknowledged Frames
Acknowledged frames are designed for situations where reliable delivery of data is paramount.
They require more overhead than unacknowledged frames because of the returned
acknowledgement data. The format of an acknowledged frame is:
Destination is the destination address for the frame. This byte is provided to support the broadcast
address and group addressing. The MSB of the destination address must be 0.
Source is the source address for the frame. The MSB of the source address must be 1 for
acknowledged frames.
The count byte will be incremented by the sending device after each successfully transmitted
frame. The count byte is used to guarantee a single frame transmitted multiple times due to a lost
acknowledgement does not appear as multiple frames. A count byte of zero is not allowed.
The Length byte is used to indicate the number of data bytes to follow. A frame length of 0
indicates that the frame contains 256 bytes of data.
The checksum at the end of the frame is the CCITT-8 CRC for the frame. The CRC should be
calculated from all bytes in the frame, including the addresses, length and data bytes. If the CRC
matches the CRC calculated for the received frame, the receiving station should respond by
sending an ACK flag as soon as is possible. If the CRC does not match the calculated CRC for