Installers Guide to the Bose® Serial interface
June 28, 2011
Bose Confidential Information
Page 13/42
Do Not Redistribute
received within MAX_PACKET_TIME (see section 5.4 Protocol Timings) there has been a
communication error. The console may also have lost power. See section 5.6 Autonomous
Console State Changes.
The Client should interpret a packet using the following algorithm:
1) If the Error bit is set in the Status byte this is an Error packet. See section 5.3.3 Error
Packets for the format of an Error packet.
2) If the Notification bit is set in the Status byte (the Error and Notification bits will never both
be set) this is a notification packet. See section 5.3.4 Notification Packets.
3) The Ready Packet indicates the Console has accepted the previous command and the
Client may send the next command subject to protocol timings (see section 5.4 Protocol
Timings). See section 5.3.1 The Ready Packet.
4) Otherwise it is a response packet. The OpCode bytes of the packet will match the
OpCode of the Command packet sent by the Client. The results of the command are in
the Payload portion of the packet. The Client
must not
issue another command until it
has received the Ready Packet.
5.3.1 Ready Packet
The Ready Packet is sent by the Console to indicate it has accepted the command and is ready
to receive another command from the Client subject to protocol timings (see section 5.4 Protocol
Timings).
The Client
must always
wait for this packet after issuing a command. It is always the same 4-
byte packet:
Console sends: 04 <Status> 01 00
Table 5-1 Ready Packet Format
Byte
Number
Value
(Hex)
Name
Explanation
0
04
Length
The total number of bytes in this packet is 4.
1
<Status> Status
Error bit = 0,Notification bit = 0
2-3
01 00
OpCode
The Operation Code for the Ready Packet
5.3.2 Response Packets
Commands that query the Console for information receive the requested information in a
response packet. The format varies by command. For some control commands, a response will
be returned to acknowledge the command has been accepted. The specific response for each
command is listed in Section 6 Client Commands and Console Responses. All response packets
have a header which includes the length, status, and opcode as well as a payload containing the
requested information. The opcode of the response packet will match the opcode of the
command. Note there is no checksum in a response packet or any packet from the Console.
5.3.3 Error Packets
An Error packet is sent by the Console in response to an invalid Command or in rare instances
when a hardware error condition exists in the Console. The Error packet will be followed by a
Ready packet. An Error packet has the Error bit set in the packet Status byte. The Payload
contains the error code.