Messages on the Entertainment and Comfort serial bus

Stuart Schmitt, 29 April 2016
E&C bus table of contents

Introduction

In the table below, all observed E&C messages are documented, along with best guesses about their meanings. A format for writing E&C messages is defined to indicate variable quantities and the number of bits used for constant numbers. Sequences of individual bits are bracketed and named with letters (for example, [ABCD] or [XXXXYYYY], where repeated letters indicate a value that spans multiple bits. The notation /n indicates the bit count. If it is absent, a “default” value is implied (2 bits for the priority, 6 bits for the address, and 8 bits for the data bytes). For example, the message

1-40-63-[XYZ]

indicates that there are three 1-bit variables X, Y, and Z. In this particular example, X = 1 means the audio system is on, Y = 1 means an OnStar session is active, and Z = 1 means the vehicle’s accessory power is on. Eight bits are used to communicate the value 63. With X = 1, Y = 0, and Z = 1, this example becomes equivalent to the 1-40-63-5 example shown in bus description page. For another example, the message

3-57-46/7-[XX]

contains a 2-bit variable XX. This particular message is an instruction to load one of two sets of personalized radio settings, numbered either 1 or 2. The first 7 bits of the data are the constant 46 that defines this command. Thus, this message can take two forms depending on which memory setting is being recalled:

1 11 100111 0111010 1 1    simplified to 3-57-174 for memory #1
1 11 100111 0111010 010 1  simplified to 3-57-46-1 for memory #2.

Note that in the first case the 0 in the second position of XX is omitted because it is unnecessary, and that in the second case there is an extra 0 appended to arrive at an even number of bits.

In many cases, variables are encoded in binary-coded decimal (BCD), usually sent least-significant-digit first.

Table of observed E&C messages

ModuleMessage Meaning
Information
from OnStar
1-19-6 No session active
1-19-6-2 Status; radio mutes audio and enables controls
1-19-6-16 Status; radio mutes audio and disables controls
1-19-6-18 Status; radio unmutes audio and disables radio controls
1-19-20 Status; radio disables SOURCE button during OnStar session
1-19-20-8 Status; radio enables SOURCE button during
OnStar session (see 3-51-127)
Information from
cassette player
1-24-... Future work: decoding from Terry Kolody's observations.
Information from
CD changer
1-26-1/7-[ABCDEFGHI] Disc read status:
Alaser on
Bplaying
Cready to seek
Ddone seeking
Ealways 0?
Falways 0?
Galways 0?
Hdisc data does not need updating
Ibattery was disconnected
1-26-9/7-[ABCDEFGHIJK] Mechanism status:
Aready
Bforward seeking
Creverse seeking
Ddisc changer busy
Emagazine ejector busy
Fdisc data does not need updating
Galways 0?
Hmagazine is present
Iplayback not possible
Jalways 0?
Kdoor is open
1-26-29/7-0/3-[ABCDEFGHIJKL] Discs present:
Adisc 1
Bdisc 2
Cdisc 3
Ddisc 4
Edisc 5
Fdisc 6
Gdisc 7
Hdisc 8
Idisc 9
Jdisc 10
Kdisc 11
Ldisc 12
1-26-29/7-1/3-[XXXXXXXXXX]Random mode (response to 3-30-93-...)
XXXXXXXXXXRNG seed (0 if random mode off)
1-26-29/7-3/3-[XXXXXXXXXX]Random mode (response to 3-30-221-...)
XXXXXXXXXXRNG seed (0 if random mode off)
Information
from radio
1-40-63-[XYZ] Power status
Xaudio system on
YOnStar session active
Zvehicle accessory power on
Information
from radio
1-41-2 OnStar audio mode active
1-41-6 OnStar audio mode inactive
Information from radio
in response to OnStar
1-48-6 OnStar audio enabled
1-48-46-1 Acknowledge OnStar call in progress
Information from
radio for IPM
1-57-102 No personalization loaded
1-57-38/7-[XX]Loaded personalization
XXmemory number 1 or 2
Information from
CD changer
2-26-25/7-[XXXXYYY]Total disc time, frames part
XXXXBCD ones digit
YYY BCD tens digit (0-7)
2-26-41/7-[XXXXYYYY]Disc number
XXXXBCD ones digit
YYYYBCD tens digit
2-26-49/7-[XXXXYYYY]Playback track
XXXXBCD ones digit
YYYYBCD tens digit
2-26-61 During playback, start of a new minute
2-26-65-[XXXXYYYY] Playback time, minutes part
XXXXBCD ones digit
YYYYBCD tens digit
2-26-73-[XXXXYYYY] Playback time, seconds part
XXXXBCD ones digit
YYY BCD tens digit (0-5)
2-26-209 Begin disc data (note that this is 2-26-81/7-1)
2-26-89/7-[XXXXYYYY]Disc track count
XXXXBCD ones digit
YYYYBCD tens digit
2-26-97/7-[XXXXYYYY]Total disc time, minutes part
XXXXBCD ones digit
YYYYBCD tens digit
2-26-105/7-[XXXXYYYY]Total disc time, seconds part
XXXXBCD ones digit
YYYYBCD tens digit
Information
from radio
2-40-1/2-[XXXXXXYYYYYZZZZZZ]Clock time
XXXXXXminutes (0-59)
YYYYY hours (0-23)
ZZZZZZdays (0-63)
Commands
to cassette
3-28-... Future work: decoding from Terry Kolody's observations.
Commands
to CD changer
3-30-1 Forward or reverse scan button released
3-30-9 Request status, track, and minute
3-30-17 Stop (no magazine present)
3-30-33-1 Fast forward scan
3-30-41-1 Fast reverse scan
3-30-49-[XXXXYYYY] Load track
XXXXBCD ones digit
YYYYBCD tens digit
3-30-61 Data received OK
3-30-65-0/1-[XXXXYYYY]Seek to time, minutes part
XXXXBCD ones digit
YYYYBCD tens digit
3-30-93-[XXXXXXXXXX] Random mode
XXXXXXXXXXRNG seed (0 if random mode off)
3-30-145 Stop playback
3-30-153 Is module present?
3-30-153-63 Upload disc data
3-30-161-1 2× fast forward scan
3-30-169-1 2× fast reverse scan
3-30-177-[XXXXYYYY] Load track and seek to 0:00
XXXXBCD ones digit
YYYYBCD tens digit
3-30-201-2/2-[XXXXYYYY]Seek to time, seconds part
XXXXBCD ones digit
YYYYBCD tens digit
3-30-217-0/1-[XXXXYYYY]Load disc
XXXXBCD ones digit
YYYYBCD tens digit
3-30-221-[XXXXXXXXXX] Random mode
XXXXXXXXXXRNG seed (0 if random mode off)
Command to
radio from OnStar
3-40-127 Acknowledge power status
Commands
from radio
3-41-3 Temperature button released
3-41-3-2 Temperature down button pressed
3-41-9-2 Eject CD changer magazine
3-41-19-2 Temperature up button pressed
Commands
from or to radio
3-44-3 From radio: No auxiliary audio selected
3-44-99 From radio: CD changer selected
3-44-120 OnStar to radio: Disable recurring power
status messages (keepalive pings)
3-44-124 OnStar to radio: Enable recurring power
status messages (keepalive pings)
3-44-127 To radio: Send one power status message
3-44-163 From radio: OnStar selected
3-44-193 From radio: Cassette selected
Commands from
radio to OnStar
3-51-100 Is module present?
3-51-127 SOURCE button was pressed during OnStar session
Commands from
OnStar to radio
3-52-6 Unmute OnStar audio
3-52-46-1 Call established and underway
Command from
IPM to radio
3-57-46/7-[XX]Load personalization
XXmemory number 1 or 2