
Intelix DIGI-HD-8X8 Installation Manual
www.intelix.com 15
Appendix A: Communication Protocol
Serial Message Protocol Overview—Simple escaped—Version
The Intelix Simple escaped version serial message protocol can be related to the data link layer
(layer 2) of the ISO layered communications model. It is a connectionless datagram messaging
protocol.
Serial Message Fields
All serial messages, whether they are transmitted to or from an Intelix device, use the same
message format. Each message contains several distinct fields. All values are transmitted in
hexadecimal format e.g. 0Ah.
Serial Message Fields; Version 3
Send Message Frame (Simple escaped Protocol)
Protocol Start Length Data
1 byte 1 byte 0<n<255 bytes
F1h ##h
The first field of a message is always the START byte. The second field is a 1-byte length. The
value of the length field is the number of bytes in the third field, the data field. The third field,
the data field, holds the parameters of the message e.g. Message Class, Message ID, Parameters,
etc.
Hexadecimal Transmission
The Intelix Matrix Mixer must receive all messages in hexadecimal number code. If messages
are transmitted in decimal or ASCII codes, they will fail to work. Hexadecimal is a base 16
number code that uses numerals 0-10 and letters A, B, C, D, E, F. In this document hex numbers
are represented in the form “xxh”, where xx are the two hex characters.
ASCII values
When you send commands to an Intelix Device, there is one and only one case when you use
ASCII codes. That case is when you send names. Whenever a name field appears in an example
in this manual, the example is enclosed in quotation marks. Any other use of ASCII values will
cause the command to fail. For example the command Set Matrix Mixer Name uses as an
example name field “Emmanuel Lutheran Church”. The quotes indicate that this data should be
sent as ASCII values. To do this use an ASCII table to obtain the hex value for each character,
and transmit these values. Do NOT transmit the quotation marks unless you want the quotation
marks included in the Name data written to the device. The Quotation marks in the examples are
ASCII text delimiters for the user of this manual.
Byte Escape Sequence
The Simple escaped version message protocol used an “escape byte” sequence to insure
unambiguous recognition of protocol control bytes (F0 – FFh). If a byte in the length, data, or
checksum fields falls within the range F0h through FFh inclusive, an escape sequence is used to
transmit the value. The value is translated by sending two bytes: the ESCAPE byte (F0h) itself,
followed by the difference between the value and the ESCAPE byte. Example; If value =>
ESCAPE, then value = (value - ESCAPE). These two bytes are transmitted instead of the single,
large-value byte. The receiving device converts the two bytes back into the original single byte
value through simple addition. These operations do not affect the values of the length or
checksum fields. i.e., The Escape byte algorithm is applied to the message string last on
transmission and first upon receipt (skipping the start byte).
In the following example, the data field of a message is (02h, 03h, 03h, 06h, FFh). The byte FFh
must be “escaped” into the ESCAPE byte (F0h) followed by the difference between FFh and
ESCAPE (FFh – F0h = 0Fh). The bytes actually transmitted are: (02h, 03h, 03h, 06h, F0h, 0Fh).
Since the second byte of an escape sequence must fall within the range 00h through 0Fh