4.2.3. Troubleshooting Can Bus Communications
 
Hardware checks:
  • Verify the connections by checking the pin position and wire colors on both the ecu and dashboard connectors.
    Ecu can hi should be connected to the dashboard can hi and ecu can lo should be connected to the dashboard can lo.
 
  • Check the wiring for short circuits or breaks.
With all device connected but powered off, measure the resistance between the can hi and can lo line using a multimeter.
If the resistance is found to be very high( > 1K) then either there is a break in the lines or no can termination resistors are fitted or enabled.
If the resistance is found to be very low( < 30 Ohm) then there is a possible short between the lines.
The correct resistance value will depend on the can termination resistors. A typical value with 2x 120ohm resistors is 60 ohms.
 
Configurations checks:
  • Verify that the can termination resistor is enabled if required by your can bus setup for the devices that support this function: SDM550,SDM700,VMU900, PCA2000
  • Disabled can bus message filtering in the Can Bus Port Setup for device that support this function. To disable filtering set both the Filter and Mask values to 0.
 
 
Real time checks:
uSDM100, uSDM102
The uSDM100/102 display the received can bus messages in realtime on the last line of the Diagnosis page. If all data on this line is 0 then the device is not receiving any messages.
 
SDM300, SDM500
The SDM300/500 provide the following information for the can buses on the 2 last lines of the Diagnosis page.
Can Bus Port Name + messages received per second + real time message ID and data + error code.
The ID, data and error code are shown in hex format.
 
The error code is 32 bits long and can be decoded in the following way:
  • bits 31:24 = Receive error counter (should be 0 under normal conditions)
  • bits 23:16 = Transmit error counter (should be 0 under normal conditions)
  • bits 6:4 = Last error code:
000: No Error
001: Stuff Error
010: Form Error
011: Acknowledgment Error
100: Bit recessive Error
101: Bit dominant Error
110: CRC Error
 
  • Bit2 = Bus OFF
  • Bit1 = Error Passive
  • Bit0 = Error Warning
 
SDM700
The SDM700 displays the can bus status for both can bus ports on the status bar at the bottom of most display pages.
When the status is good only the can bus name is displayed ex "CAN1".
If there is an error and additional hex number is displayed next to the can port name ex. "CAN1 40".
The individual bits of the hex error code can be decoded like this:
  • bit7 = receive buffer 1 overflow
  • bit6 = receive buffer 0 overflow
  • bit5 = Bus OFF, goes to 1 when the transmit error counter reaches 255
  • bit4 = Transmit error passive, goes to 1 when the transmit error counter is greater than 127
  • bit3= Receive error passive, goes to 1 when the receive error counter is greater than 127
  • bit2= Transmit error warning, goes to 1 when the transmit error counter is greater than 96
  • bit1= Receive error warning, goes to 1 when the receive error counter is greater than 96
  • bit0 = Error Warning, goes to 1 when either bit1 or bit2 is 1.
  •  
Example error codes:
  • code 0x17 = 0b00010111 = TX Error Passive + TX Error Warning + RX Error warning + Error Warning.
  • code 0x40 = receive buffer 0 overflow
  • code 0xC0 =  receive buffer 0 and 1 overflow
 
PCA2000
From the Plex Device Manager launch the realtime data windows and start the data receive function. Near the bottom of the window you will find diagnostic info with can bus load and errors indication.