Installers Guide to the Bose® Serial interface
June 28, 2011
Bose Confidential Information
Page 9/42
Do Not Redistribute
4 Packet Format
All interactions between the Client and the Console are in the form of complete packets.
A Packet always begins with a Header field which contains the Length, Status, and Operation
Code. The Payload field contains any required parameters. Packets from the Client must also
include a Checksum field.
<Header> [ <Payload> ] <Checksum> Client to Console
<Header> [ <Payload> ] Console to Client -- Note: no Checksum
Note: Packets are NOT terminated with a Carriage Return or Line Feed.
4.1 Packet Fields
Table 4-1 General Packet Format
Byte
Number
Name
Number
of Bytes
Description
0
Length
1
Length of packet including this byte and the
Checksum byte (if present)
1
Status
1
Packet Flags. (Table 4-2 Packet Status Flags.)
2-3
Opcode
2
Operation to be performed
4
—
Payload
Variable
Contains OpCode parameters if needed
Last
Checksum
1
Contains a checksum. Only sent by Client.
4.1.1 Length
Count of the total number of bytes in this packet including this Length byte, the Status, OpCode,
and Payload if present, and Checksum if present.
4.1.2 Status
The status byte consists of single bit flags. The bits of this byte are numbered from 7 the most
significant bit, to 0 the least significant bit. This byte must be set to 0 when sent by the Client.
When received by the Client, these flags are interpreted as indicated in Table 4-2 Packet Status
Flags.
Only two bits in the Status byte are relevant to the Client: the Error and Notification bits. The
Direction flag will always be set to 1 for all packets received by the Client and can be ignored. As
noted above, the Direction bit (and all other flags in the Status Byte) should be set to 0 in packets
sent by the Client.
The Error and Notification bits, as well as the OpCode field, must always be examined by the
Client to determine the type of packet it has received.