Communication - Operation
OPERATION
The primary communication network between electronic control modules on this vehicle is the Controller Area Network (CAN) data bus system. The Controller Area Network (CAN) data bus allows all electronic modules connected to the bus to share information with each other. Regardless of whether a message originates from a module on the higher speed CAN C (500K) Bus or on the lower speed CAN Interior High Speed (IHS) (125K) Bus the message structure and layout is similar, which allows the Body Control Module (BCM) to be a Central GateWay to process and transfer messages between the CAN C and CAN IHS buses. The BCM also stores Diagnostic Trouble Codes (DTCs) for certain bus network faults. A third CAN bus on this vehicle is the CAN-AT (Audio and Telematics) Bus. The CTP Radio also known as the Telematics Gateway (TGW) transfers messages between the CAN-AT and CAN IHS buses. Examples of modules on the CAN-AT bus include the Amplifier, Integrated Center Stack (ICS) and the Hands Free Module (HFM). The TGW also stores DTCs for certain bus network faults.
All modules transmit and receive messages over one of these buses. Data exchange between the modules is achieved by serial transmission of encoded data messages (a form of transmission in which data bits are sent sequentially, one at a time, over a single line). Each module can both send and receive serial data simultaneously. Each data bit of a CAN Bus message is carried over the bus as a voltage differential between the two bus circuits which, when strung together, form a message. Each module uses arbitration to sort the message priority if two competing messages are attempting to be broadcast at the same time. Corruption of a single bit within a message will corrupt the entire message. Each message contains a Cyclic Redundancy Check (CRC) which specifies the message size exactly. If the message detected conflicts with the CRC the ECU receiving it will determine the message to be an error and consider that communication has not been possible. Diagnosis of this condition using a lab scope may reveal activity that appears to be Bus data messages even if no actual communication is possible. Communication problems that affect the whole bus, as a result of opens and terminal push outs are more likely to occur on data busses that operate at a high speed than a data bus that operates at a lower speed.
When an open circuit or terminal push out occurs one or more modules can become isolated from the remainder of the bus. The isolated module will attempt to communicate, but will not be able to receive messages or determine arbitration from other modules. Each time the isolated module attempts to communicate it alters the bus voltage on the intact bus circuit. Without functioning arbitration the isolated module alters the bus voltage while other bus messages are being sent thereby corrupting the messages on the remainder of the bus.
NOTE: All measurement of termination resistance is done with the vehicle battery disconnected.
The communication protocol being used for the CAN data bus is a non-proprietary, open standard adopted from the Bosch CAN Specification 2.0b. The CAN-C is the faster of the two primary buses in the CAN bus system, providing near real-time communication (500 Kbps). CAN-IHS and CAN-AT communicate at (125 Kbps).
The CAN bus nodes are connected in parallel to the two-wire bus using a twisted pair, where the wires are wrapped around each other to provide shielding from unwanted electromagnetic induction, thus preventing interference with the relatively low voltage signals being carried through them. The twisted pairs have between 33 and 50 twists per meter (yard). While the CAN bus is operating (active), one of the bus wires will carry a higher voltage and is referred to as the CAN High or CAN bus (+) wire, while the other bus wire will carry a lower voltage and is referred to as the CAN Low or CAN bus (-) wire. Refer to the CAN Bus Voltages table.
The CAN-IHS bus network remains active until all nodes on that network are ready for sleep. This is determined by the network using tokens in a manner similar to polling. When the last node that is active on the network is ready for sleep, and it has already received a token indicating that all other nodes on the bus are ready for sleep, it broadcasts a bus sleep acknowledgment message that causes the network to sleep. Once the CAN-IHS bus network is asleep, any node on the bus can awaken it by transmitting a message on the network. The BCM will keep either the CAN-IHS or the CAN-C bus awake for a timed interval after it receives a diagnostic message for that bus over the Diagnostic CAN-C bus.
In the CAN system, available options are configured into the BCM at the assembly plant, but additional options can be added in the field using the diagnostic scan tool. The configuration settings are stored in non-volatile memory. The BCM also has two 64-bit registers, which track each of the as-built and currently responding nodes on the CAN-B and CAN-C buses. The BCM stores a Diagnostic Trouble Code (DTC) in one of two caches for any detected active or stored faults in the order in which they occur. One cache stores powertrain (P-Code), chassis (C-Code) and body (B-Code) DTCs, while the second cache is dedicated to storing network (U-Code) DTCs.