can or chaos?d2oqb2vjj999su.cloudfront.net/users/000/083/818/888...well known obd2 dlc pin...
TRANSCRIPT
CAN or Chaos?
Working through the CAN Bus System
Terms to Know
• CAN = Controller Area Network
• CAN 2.0B = the specs that define the Physical Layer and the Data Link Layer for all CAN buses.
• CAN Bus = the circuit for CAN data communication
• OSI model = Network design standardization
• CAN High= Data with logic of 2.5v to 3.5v (+1v)
• CAN Low = Data with logic of 2.5v to 1.5v (-1v)
• Data Field = Data between 1.5v and 3.5v
• CAN Packages = information from Controllers
What is CAN 2.0B?
• The CAN system is divided into different layers according to the ISO/OSI model in order to achieve design transparency and implementation flexibility.
• CAN 2.0B refers to the specification that defines the Physical Layer and the Data Link Layer for all CAN buses.
What is meant when referring to a Physical Layer, or a Data Link layer?
• The International Organization for Standardization (ISO) developed the Open System Interconnect (OSI) model in 1984 as a model of computer communication architecture.
• There are 7 layers to the OSI model:
– Application. – Presentation – Session – Transport – Network – Data Link – Physical The Physical layer is where we start testing.
All People Seem To Need Data Processing.
Let’s just keep it Simple
• Our world deals with the OSI Physical Layer.
CAN 2.0B
What is a CAN bus?
• A Controller Area Network (CAN) refers to a network of independent controllers.
• It is a serial communications protocol that efficiently supports distributed real-time control with a very high level of security.
• The CAN bus standard was developed by Bosch and Intel and the version of the current standard has been in use since 1990.
DLC Pin 6
CAN High
DLC Pin 14
CAN Low
CAN BUS Simplified
Radio controller
IPC controller
BCM controller
PCM controller
ABS controller
SRS controller
12
0Ω
Te
rmin
atio
n
12
0Ω
Termin
ation
Note: 120 Ohm termination resistor may reside in a controller.
CAN BUS Simplified
PCM controller
BCM controller
IPC controller
Radio controller
12
0Ω
Te
rmin
atio
n
12
0Ω
Termin
ation
ABS controller
SRS controller
DLC Pin 6
CAN High
DLC Pin 14
CAN Low
Note: 120 Ohm termination resistor may reside in a controller.
How do CAN bus modules communicate?
• CAN bus uses two dedicated wires for communication. The wires are called CAN high and CAN low.
• When the CAN bus is in idle mode, both lines carry 2.5V.
• When data bits are being transmitted, the CAN high line goes to 3.75V and the CAN low drops to 1.25V.
• Since communication relies on a voltage differential between the two bus lines, the CAN bus is NOT sensitive to inductive spikes, electrical fields or other noise.
• This makes CAN bus a reliable choice for networked communications on mobile equipment
Why CAN?
• CAN offers the following advantages: – Transmission rates are much faster than those in
conventional communication (up to 1 Mbps), allowing much more data to be sent.
– It is exceptionally immune to noise, and the data obtained from each error detection device is more reliable.
– Each ECU connected via the CAN communicates independently, therefore if the ECU enters damaged mode, communications can be continued in some cases.
OBD2 DLC Pin assignments PIN 5
PCM Signal Ground PIN 4
Chassis Ground
PIN 14 CAN Low
PIN 16 Battery power
PIN 6 CAN High
So… How do get there?
Well Known OBD2 DLC pin assignments as of 2008:
Pin Use 2 J1850 Bus+
4 Chassis Ground
5 Signal Ground
6 CAN High (J-2284 cars) or (J-1939 heavy duty truck)
7 ISO 9141-2 K Line and ISO/DIS 14230-4
10 J1850 Bus -
14 CAN Low (J-2284 cars) or (J-1939 heavy duty truck)
15 ISO 9141-2 L Line and ISO/DIS 14230-4
16 Battery power
Additional pins may be wired on your car - these may be used by manufacturers for other purposes (OPEN - Manufacturer discretion).
ALL Pin Assignments 1.
Manufacturer discretion. GM: J2411 GMLAN/SWC/Single-Wire CAN.
9. OPEN - Manufacturer discretion
2. Bus positive Line of SAE-J1850 PWM and
SAE-1850 VPW
10. Bus negative Line of SAE-J1850 PWM only
(not SAE-1850 VPW) 3.
OPEN - Manufacturer discretion 11.
OPEN - Manufacturer discretion 4.
Chassis ground 12.
OPEN - Manufacturer discretion 5.
Signal ground 13.
OPEN - Manufacturer discretion 6.
CAN high (ISO 15765-4 and SAE-J2284) 14.
CAN low (ISO 15765-4 and SAE-J2284)
7. K line of ISO 9141-2 and ISO 14230-4
15. L line of ISO 9141-2 and ISO 14230-4
8. OPEN - Manufacturer discretion
16. Battery voltage
CAN BUS Integrity-Resistance:
• Voltmeters are useful in detecting CAN line shorts to ground, battery or to each other using the Ohm-meter function.
• There is normally 60 Ohm between the two wires of the bus.
• The network must be powered down to accurately measure the resistance of the CAN bus.
• Ohm-meters will not give accurate readings if there is any voltage present on the bus.
60 Ω
CAN BUS Integrity-Voltage:
0.0V
• At the idle or rest state, a digital voltmeter connected to the two CAN wires (CAN_H and CAN_L) will measure 0 V this is the logical “1”.
• With CAN messages present on the bus, the voltmeter will register 0.5 V or so depending on the nature of the bus traffic.
• This will be the average voltage differential of the bus less those effects too high in frequency for the voltmeter to respond to.
• This makes voltage readings almost useless for servicing CAN.
We need to capture Data with a High Sampling Rate Lab scope.
• Using the Lab scope Feature in the Verdict™ or Verus™
• Access Pins 6 and 14 at the DLC connector
• Set voltage potential at 10volts for both channels
• Set sweep time at 50 microseconds
• Here’s what we’ll see…
Basic CAN SIGNALING sample.
• CAN SIGNALING Animation Volts
3.75
2.50
1.25
Data
Time (t) micro seconds
CAN High
CAN Low
1110001000100011010101000100010001111111 1111111111111111111111111111111111111111 1111111111111111111111111111111111111111
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Bus is Idle Bus Data Packets
Voltage reading between 2.5 volts to 3.75 volts = logic 0 CAN HIGH Voltage Reading at 2.5 Volts = Logic 1 Voltage reading between 2.5 volts to 1.25 volts = logic 0 CAN LOW
• Good CAN SIGNALING Integrity Volts
3.75
2.50
1.25
Time (t) micro seconds
CAN High
CAN Low
1110001000100011010101000100010001111111 Bus Data Packets
We’re only interested at the following Thresholds for now. Voltage reading between 2.5 volts to 3.75 volts = logic 0 CAN HIGH Voltage Reading at 2.5 Volts = Logic 1 Voltage reading between 2.5 volts to 1.25 volts = logic 0 CAN LOW
As long as our packets fall with in this range… we’re good.
• Corrupt Bus Data = Dropped Packets Volts
3.75
2.50
1.25
Time (t) micro seconds
CAN High
CAN Low
1?????????????????????????? 100010001111111 Bus Data Packets
• Even though there is EMI disturbing the Packet, the CAN Network remains stable.
• The controller’s packet drops and the requests abort • This can cause intermittent malfunctions and Erroneous U-
codes
• Controller Bus High Shorts to Ground Volts
3.75
2.50
1.25
Time (t) micro seconds
Lost CAN High (Short to Ground)
CAN Low
111000100010001 1010101000100010001111111
Bus Data Packets
• CAN Network remains stable. • The controller’s packet drops and the packet request aborts • This can cause Controller to get kicked off the Network • U-codes
• Controller Bus Low Shorts to Ground Volts
3.75
2.50
1.25
Time (t) micro seconds
Lost CAN Low (Short to Ground)
1010101000100010001111111 111000100010001
Bus Data Packets
• CAN Network remains stable. • The controller’s packet drops and the packet request aborts • This can cause Controller to get kicked off the Network • U-codes
CAN High
Case Study 2006 Chevy Cobalt SS
• Customer complains that the Speedometer just stopped working.
Go to your OEM Scanner Selection
Found U-codes in Instrument cluster
Found more U-codes in the Airbag module
Notice the Code Descriptors are different for each controller
What are U-Codes?
• U-codes are a part of the DATA LINK Layer of the OSI Model pertaining to network communication errors
• Standard Corporate Protocols (SCP) Generic by nature Incorporated by OBD2 standards
• Used as a guide with very few details in descriptor (Not always very helpful).
Go to your Information Selection*
*This Selection is made Available to ShopKey5.com Subscribers
No need to re-select vehicle info
Checking your Information database is a good place to Start. Just type in the code
Quickly Drill down to the Information
A little extra help found in a Tip…
Confirming that Loads and or EMI, RFI can cause CAN Chaos
We Need to Confirm CAN Bus Data Integrity
Go to your Lab Scope Selection
Let’s look at our Data Packets. You’ll need 2 Channels minimum
• Access Pins 6 and 14 at the DLC connector
• Set voltage potential at 10volts for both channels
• Set sweep time at 100 microseconds
Zoom out 32x to view multiple frames of Data
CAN High
CAN Low
Getting a closer look
We’re interested in the Threshold range between
CAN High (3.75v) and CAN Low (1.25v)
Zoom in to X4 range
At this Level you get a closer view at the bits of information that make up the packet. We’re looing for any outside noise on the
Network Bus.
Drill down to 50micro seconds.
At this Level you get a closer view at the leading and training edges on each bits of information. We’re looing for crisp and clean
vertical rises.
Switching to 100 milliseconds finds CAN Low to Ground Short
CAN Low Just Switched to ground
There Goes CAN High to Ground
CAN High Glitches to ground
We Need a Good Wiring Schematic
2 Networks on this GM Vehicle. GMLAN on Green Circuit DLC pin1 and CAN on Tan and Brown wires DLC pins 14 and 6
CAN DLC PINS 6+14 GMLAN on DLC Pin 1
CAN 14
CAN 6
GMLAN 1
Isolating the GMLAN Controllers
Locate GMLAN connector BUS
• 2006 Chevrolet Cobalt SS is located at the Left side upper Kick Panel
Install the EEFF500 Data Bus Fault Finder
EEFF500 – Data Bus Fault Finder
• Checks each Controller for power and Short to Ground Faults
• Quickly Isolates Each Controller from CAN Bus Via the GMLAN
• Use to Synch Controller with Data packets on CAN Bus