Redundancy Controller
Page
43
Document Number: 90-005-0030_E
State
Name
Description
State
response message to a master/controller within 100 milliseconds after receiving the last
character of the message.
A device will always exit State 5 and enter State 1 - Device Idle State.
Packet Structure
Data and information from the controller to the unit is transmitted in packets.
Response to errors:
If the address does not match, the M&C will not respond.
If the checksum is invalid, the M&C will not respond.
DEC
HEX
ABR
Char Name
02
0x02
STX
Start of Text
03
0x03
ETX
End of Text
06
0x06
ACK
Acknowledge
21
0x15
NAK
Negative acknowledge
0x30 to 0x39
address
One byte, typically in the range 0x30 to 0x39, but can
be any value other than STX, ETX, ACK or NAK.
Must match the value configured into the M&C unit or
message is ignored.
0x30 to 0xF0
Command
One byte, typically in the range 0x30 to 0xF0, but can
be any value other than STX, ETX, ACK or NAK.
Data Checksum
Up to 570 bytes of ASCII characters.
One byte containing the XOR of all previous bytes
including STX and ETX.
Echo Address
Echo Command
ASCII Encoding of Binary Data
All binary data sent and received by the M&C is encoded into ASCII characters. If a communication
protocol allows unrestricted binary data, designate a unique start, stop, ACK or NAK byte. However,
since the data payload of a packet can contain bytes of any value, you are never sure if a byte is a
control code, or part of the payload. If a communication is corrupted and the receiver loses track of
where it is in a message, then there is no reliable way to guarantee resynchronization. In the worst
case scenario, depending on the data payload, the communication might never recover
synchronization.
When data is encoded into ASCII format the start, stop, ACK, and NAK codes are guaranteed to
never be present in the data payload.
All binary data is encoded in hex ASCII in Intel byte order. Intel byte order, also called little-endian,
because the least significant byte is first in memory. For example, if a 16-bit word contains the
binary value 0x12AB, it will be stored in memory as AB12, and converted to the ASCII string AB12.