Presentation is loading. Please wait.

Presentation is loading. Please wait.

J1939 Training Agenda Basic Training: J1939 Vocabulary

Similar presentations


Presentation on theme: "J1939 Training Agenda Basic Training: J1939 Vocabulary"— Presentation transcript:

1 J1939 Training Agenda Basic Training: J1939 Vocabulary
Basic Training: Monitoring Basic Training: Control Basic Training: Tools / Information Advanced: J1939 message breakdown Advanced: J1939 diagnostic messages Advanced: J1939 multiplexing

2 J1939 Training Vocabulary:
Datalink: Term used to describe how devices communicate with each other also referred to as a network. Bit: One binary value. A “1” or “0” Byte: 8 bits put together. Ex: “ ” Bit Field: Number of bits which are grouped together CAN Data Frame: Series of ordered bit fields

3 J1939 Training Vocabulary (cont.)
Cyclic Redundancy Check (CRC): Error control mechanism used to detect when a message was corrupted during transimission. Data Field: 0-64 bit field in the CAN data frame which contains the actual data such as oil pressure or coolant temperature as defined in J1939/71 standard.

4 J1939 Training Vocabulary (cont.)
Destination Address: Address of who is suppose to receive the message. (not included in all J1939 messages) Global Address is 255 or FF hex Device: Any physical component which listens to or sends information out on the J1939 datalink. Electronic Control Unit: same as a device

5 J1939 Training Vocabulary (cont.)
End of Frame: 7 bit field which marks the end of a CAN frame Extended Frame: A CAN frame which contains a 29 bit identifier as defined in the CAN2.0B standard. Note: J1939 allows both 11bit and 29 bit Identifers to coexist on the same network. Frame: A series of data bits making up a complete message. The frame contains several bit fields

6 J1939 Frame End of Frame Bit ACK Field 8 bytes of actual data CRC
Start of Frame Bit ACK Field Header # of bytes 8 bytes of actual data CRC Priority # PDU Format Source Address 4 bits representing numbers 0-15 typically 8 Actual data you are trying to send Used for Error Checking

7 J1939 Training Vocabulary (cont.)
Message: One or more CAN data frames which transfer a complete piece of information to other devices on the datalink. Multipacket Message: Messages which require multiple CAN data frames. These are handled by the “transport protocol”. Protocol: A protocol is the “language” of how to communicate between devices.

8 J1939 Training Vocabulary (cont.)
Parameter Group Number (PGN): a 24 bit identifier used to identify a message which contains a particular group of parameters. Parameter Group: A collection of parameters that are conveyed in a J1939 message. PDU1 Format: Format used when specifying a destination address

9 J1939 Training Vocabulary (cont.)
PDU2 Format: Format used when broadcasting information. Priority: The highest priority is zero. Lowest priority is seven. Source Address: Address of who is sending the message on the datalink. Start of Frame: Bit used to indicate the start of a CAN frame. Source address must be part of every J1939 message.

10 J1939 Training Vocabulary (Cont.)
Suspect Parameter Number (SPN): The particular element which is having a problem. This is used in the fault codes to tell us which part is having a problem. (Sensor, ECM, etc..) Failure Mode Identifer (FMI): Used to say how a particular SPN has failed. Need copy of wiring diagram back.

11 J1939 Training

12 Physical Transmission Media
OSI Network Model Layer Number 7 6 5 4 3 2 1 Application Application Presentation Presentation Session Session Transport Transport Network Network Data Link Data Link Physical Physical Physical Transmission Media

13 OSI Network Model Physical Layer Data Link Layer Network Layer
Translates bits to waveforms required by electrical interface Data Link Layer Adds “header” and “trailer” to message for determining if errors occurred in message transmission, start and end of frame, etc... Network Layer Adds or looks at who sent the message and where the message going Transport Layer Breaks and reassembles large messages into smaller messages for sending over the network Session Layer Handles access rights … may not want everyone to see all data

14 OSI Network Model Presentation Layer Application Layer
Data encryption, data compression, etc... Application Layer Whatever is left over from other layers….

15 OSI Network Model Most protocols do not specify each layer of the OSI model. J1939 does not specify each layer of the model. Currently the following layers are given specific documents in the J1939 standard Layer 1 -- J1939/11 Layer 2 -- J1939/21 Layer 3 -- J1939/31 Layer 7 -- J1939/71 & /73 J1939 / first number past the slash indicates the roughly what layer of the OSI model the specification is addressing. The second number tells you which version of the layer you are working with. For example, there are 5 different physical layers for J1939; therefore, we have /11, /12, /13, /14, ./15 standards.

16 J1939 Training What can I monitor?
What must I monitor to remove the indicator lights? Where do I find out how to interpret the messages? Example of reading oil pressure

17 All Module Information
J1939 Training All Module Information Request Only Data Broadcast Data

18 J1939 Training What can I monitor?
Sensor parameters such as coolant temperature, oil pressure, etc… Engine Fault Codes Calibrations for AHD on CD-ROMs for March 2002 or beyond have battery voltage problem fixed.

19 J1939 Training What must I monitor to remove the indicator lights?
All fault code SPNs (suspect parameter number and FMIs (failure mode indicator) must be displayed.

20 J1939 Training Where do I find out how to interpret the messages?
Parameter data messages are found in the J1939/71 standard. Find the PGN first then look up the individual parameter definitions. Fault Code (Diagnostic) messages are found in the J1939/73 standard. You will also need to use the wiring diagram, or AEB for the specific engine to understand what Cummins fault code goes with a SPN / FMI pair.

21 J1939 Control What can the customer control?
Engine speed can be controlled via the J1939 datalink. Fan Clutch

22 J1939 Training High Speed datalinks Reflections & Terminations
Topology Troubleshooting

23 J1939 Training Reflections & Terminations
Terminations are required to minimize reflections on the datalink (demo) J1939/11 requires two 120ohm terminations for the datalink. EA options for QSX/QSM only use one 120ohm termination due to the short length between the ECM and the service datalink connection. ICAD Database has more detailed information QSX EA option 1039 and QSM options 2036 / 2037

24 J1939 Training Circuit block diagram
Most of our modules use the Intel Serial Communcations Controller ( CM500, CENSE, CM550, CM570, etc...) Example circuits shown in J1939/11 specification Inside ECM Outside ECM Micro ( ) CAN transciever is 82C51 (Phillips) Serial Communications Controller ESD Protection Circuit CAN Transceiver

25 J1939 Topology Length of Backbone: .1 - 40m Length of Stub: 0 - 1m
Maximum number of nodes: 30 Terminations : 120Ω Minimum Spacing: 0.1 m Note: Do not equally space the node connections on the backbone Stub 120Ώ 120Ώ Backbone

26 J1939 Addressing Dynamic Addressing
Each ECM on the network takes on an address at startup. The specific address may be different from startup to startup. Cummins does not support dynamic addressing; therefore, make sure each device on the datalink has a unique address. NO DYNAMIC ADDRESSING

27 J1939 Troubleshooting Troubleshooting
First check the termination resistors. Measure resistance between CAN_H and CAN_L. Resistance should be approximately 60 ohms. If you have a small backbone like in the EA options, this may be closer to 120 ohms. Check for frame errors Using CANalyzer or other tool, monitor the J1939 datalink to see if any frame errors are recorded.

28 J1939 Troubleshooting Troubleshooting (cont.)
Monitor broadcast parameters using CANalyzer For multiplexed parameters, verify that the OEM / DOEM is sending the correct source address in the message. Unplug other devices from the datalink so only the PC and ECM are on the network.

29 J1939 Tools Tools Protocol analyzer
Must have a protocol analyzer to develop a datalink interface. Must have the J1939 standard unless customer already has good familiarity with CAN 2.0B protocol.

30 J1939 Tools CANalyzer In North America contact: Vector CANtech Inc (248) Matt Palmer Outside America contact: Lother Felbinger Approximate Cost: Software: $2, Hardware: $1,185

31 J1939 Tools Jpro Cummins owned distributors: Software available through engineering tools (see intranet site: etools.ctg.cummins.com) Hardware available through Industrial Communication Technologies. North America: call (978) Outside North America: Appoximate costs: $910 Non Cummins owned distributors: Software is NOT available through engineering tools. Recommend CANalyzer Jpro support from manufacturer ends 12/01.

32 J1939 Tools J1939 specification Quick Check II available 4th Qtr 2001
Can be ordered online at for $ USD for non-SAE members and $ USD for SAE members. QUICK CHECK II DOES NOT HELP WITH FRAME ERROS. ONLY THE PARAMETERS QUICK CHECK HAS DEFINED ARE SELECTABLE.

33 J1939 Message Breakdown

34 J1939 Frame End of Frame Bit ACK Field 8 bytes of actual data CRC
Start of Frame Bit ACK Field Header # of bytes 8 bytes of actual data CRC Priority # PDU Format Source Address 4 bits representing numbers 0-15 typically 8 Actual data you are trying to send Used for Error Checking

35 J1939 29 bit Identifier S O F Identifier 11 bits S R I D E
CAN Extended Frame Format S O F Identifier 11 bits S R I D E Identifier Extension 18 bits R T Priority PDU Format 6 bits (MSB) J1939 Frame Format S R I D E P F PDU Specific Destination Address, Group Ext, or Proprietary S O F R D P Source Address R T SRR - Substitute Remote Request bit IDE - Identifier Extention bit These are both part of the CAN datalink layer and are not described in the J1939 documents. 3 2 1 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 J1939 Frame bit position 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 2 1 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 3 1 3 2 3 1 2 3 4 5 6 8 9 CAN 29 bit ID position 2 8 2 7 2 6 2 5 2 4 2 3 2 2 1 2 1 9 1 8 1 7 1 6 1 5 1 4 1 3 1 2 1 1 9 8 7 6 5 4 3 2 1

36 J1939 29 bit Identifier Header Breakdown (29 bits) 1 8 F E D F 0 2
Reserved Data Page PDU# = 240 3 bits Priority Number PDU Format (PF) PDU Specific (PS) Contains Destination Address if PF <239 Source Address

37 J1939 Data Message Interpretation
Looking at data messages on the CANalyzer FEDF02x Rx d 8 7D E0 2E 7D FF FF FF FF time CAN Serial Input # Rx or TX # of Data Bytes 8 bytes of data represented in hexadecimal 29 bit header

38 J1939 Data Message Interpretation
Example from J1939/71 Specification Section in specification which tells you how to interpret the actual data field

39 J1939 Data Message Interpretation
On CANalyzer: CF00300x Rx d 8 7D E0 2E 7D FF FF FF FF 0 C F Reserved Data Page 3 bits Priority Number PDU Format (PF) PDU Specific (PS) Contains Destination Address if PF <239 Source Address

40 J1939 Data Message Interpretation
Conversion Formula: Accelerator Pedal Position % = Raw Counts * Resolution + offset Data Byte 2 which represents the accelerator pedal position Example: From CANalyzer: CF00300x Rx d 8 7D E0 2E 7D FF FF FF FF Calculate Raw Counts First: Raw Counts = E0 hex = binary = 224 decimal Note: You can use the Scientific calculator under Accessories in Win9X or Win NT to convert from hex to decimal. Accelerator Pedal Position % = 224 * = 89.6%

41 J1939 Data Message Interpretation
Example from J1939/71 Specification

42 J1939 Data Message Interpretation
Conversion Formula: Engine Coolant Temperature = Raw Counts * Resolution + offset Example: Data Byte 1 From CANalyzer: CFEEE00x Rx d 8 7D E0 2E 7D FF FF FF FF Calculate Raw Counts First: Raw Counts = 7D hex = binary = 125 decimal Note: You can use the Scientific calculator under Accessories in Win9X or Win NT to convert from hex to decimal Engine Coolant Temperature = 125 * = 85 deg C

43 J1939 Fault Code Interpretation
J1939 has several different messages which contain diagnostic (fault) code information. DM1 - Active Fault Codes DM2 - Inactive Fault Codes DM3 - Clear Inactive Fault Codes Typically customers will use the DM1 message to detect when a fault code has gone active.

44 J1939 Fault Code Interpretation
The DM1 message can be interpreted in one of two ways depending on which Cummins product you are working on. HHP: QSK19 - QSKV60 use version 1 All others: QSB - QSX use version 4 Check byte 6 bit 8 to determine which SPN Conversion Method is to be used byte 6 bit 8 = 0 = version 4 byte 6 bit 8 = 1 = version 1

45 J1939 Fault Code Interpretation
DM1 message 8 bytes of data are arranged as follows: Byte 1: bits 8-7 Malfunction Indicator Lamp Status bits 6-5 Red Stop Lamp Status bits 4-3 Amber Warning Lamp Status bits 2-1 Protect Lamp Status Each lamp takes two bits to indicate lamp state 00 - lamp is OFF 01 - lamp is ON

46 J1939 Wait to Start Lamp is NOT found in the DM1 message!
PGN ( 00FEE4h ) Shutdown message byte 4 bits 2,1 Broadcast once per second other three lamps are part of the DM1 message

47 J1939 Fault Code Interpretation
DM1 byte 2 All 8 bits are reserved for future SAE use. OEMs should ignore all 8 bits in this byte. DM1 byte 3 (for QSX, QSM, QSB,QSC, QSL9 only) Contains the 8 lowest order bits for the SPN (Suspect Parameter Number). Must combine this with byte 4 and part of byte 5 to get the 19 bit SPN number.

48 J1939 Fault Code Interpretation
DM1 byte 3 (for QSK, QSKV, QST only) Contains the 8 highest order bits for the SPN (Suspect Parameter Number). Must combine this with byte 4 and part of byte 5 to get the 19 bit SPN number.

49 J1939 Fault Code Interpretation
DM1 byte 4 (for QSX, QSM, QSB,QSC, QSL9 only) Middle 8 bits of the SPN DM1 byte 5 (for QSX, QSM, QSB,QSC, QSL9 only) Contains the 3 most significant bits of the SPN, plus the FMI (Failure Mode Identifier) Together the SPN and FMI map to the Cummins Fault Code.

50 J1939 Fault Code Interpretation
DM1 byte 4 (for QSK, QSKV, QST only) Middle 8 bits of the SPN DM1 byte 5 (for QSK, QSKV, QST only) Contains the 3 least significant bits of the SPN, plus the FMI (Failure Mode Identifier) Together the SPN and FMI map to the Cummins Fault Code.

51 J1939 Fault Code Interpretation
Example: (QSKV or HHP) From CANalyzer: CFECA00x Rx d 8 05 FF 00 4F FF FF Lamp Status Reserved SPN FMI Occurrence Count S P N C O V. Lamp Status = = Amber Lamp On Protect Lamp On SPN = = 633 FMI = = 3 Occurrence Count = = 2 SPN Conversion Method = 1

52 J1939 Fault Code Interpretation
Example: (QSM, QSX,QSC,QSB) From CANalyzer: CFECA00x Rx d 8 05 FF FF FF Lamp Status Reserved SPN FMI Occurrence Count S P N C O V. Lamp Status = = Amber Lamp On Protect Lamp On SPN = = 633 FMI = = 3 Occurrence Count = = 2 SPN Conversion Method = 0

53 J1939 Fault Code Interpretation
SPN Cummins Fault Code FMI Example: Fault Code SPN FMI Note: Cummins has some SPN / FMI combinations which point to two different fault codes. Usually the fault codes are related such as low oil pressure (FC143) and very low oil pressure (FC415).

54 J1939 Fault Code Interpretation
FMI codes FMI Code Description 0 Data Valid but above Normal Operating Range 1 Data Valid but below Normal Operating Range 2 Data Erratic, Intermittent or Incorrect 3 Voltage above Normal or Shorted to High Source 4 Voltage below Normal or Shorted to Low Source 5 Current below Normal or Open Circuit 6 Current above Normal or Grounded Circuit 7 Mechanical System Not Responding or out of adjustment 8 Abnormal frequency or pulse width or period 9 Abnormal Update Rate 10 Abnormal Rate of Change 11 Root Cause Not Know 12 Bad Intelligent Device or Component 13 Out of Calibration 14 Special Instructions 15 Data Valid But Above Normal Operating Range (Least Severe Level) 16 Data Valid But Above Normal Operating Range (Moderate Sever Level) 17 Data Valid But Below Normal Operating Range (Least Severe Level) 18 Data Valid But Below Normal Operating Range (Moderate Severe Level)

55 J1939 Transport Message Transport Messages
Used when data exceeds the 8 byte limit Usually needed during fault code message transmission. Multipacket message Currently only the BAM (Broadcast Announce Message) part of the J1939 transport layer used by our products.

56 J1939 Transport Message Transport Protocol TP.BAM
Used when more than one fault codes are active Must be implemented to read fault codes First step is to send a TP.CM (Connection Message) with the connection mode being BAM. Next a series of TP.DT (Data Transfer) messages will be sent. These messages contain the actual data. See detailed example hand out

57 J1939 Multiplexing Multiplexing is used to send information from an external device to the engine control module via the J1939 datalink. The engine control module must know the address of the device which is sending the information. Typically only the throttle has been multiplexed on industrial applications.

58 Increased Multiplexing Capability
Purpose: Control additional features over the J1939 New multiplexing capability: Diagnostic Switch Idle Increment / Decrement Alternate Low Idle Switch Multiunit Sync On/Off Switch Alternate Torque Select Alternate Droop Select Auxiliary Governor Switch

59 New Multiplex Capability (cont.)
ISC Switches 1, 2, and 3 Variable ISC Remote Accelerator (Throttle) Remote Accelerator Switch Hydraulic Temperature A/C High Pressure Fan Switch New Broadcast parameters Fan Drive State Estimated Percent Fan Speed

60 New Multiplex Capability
Timing QSB/QSC/QSL9: Production June 2003 QSK19/45/60: Unknown

61 J1939 Multiplexing Example
Example from J1939/71 Specification Section in specification which tells you how to interpret the actual data field On CANalyzer: CF00303x Tx d 8 7D E0 2E 7D FF FF FF FF

62 J1939 Multiplexing Example
Note the source address is set to 03. This means device 03 is sending a message on the J1939 datalink. The ECM must be calibrated to recognize the throttle from this address or the throttle will not work. On CANalyzer: CF00303x Tx d 8 7D E0 2E 7D FF FF FF FF

63 J1939 Multiplexing Some reasons why the J1939 throttle will not work:
Datalink is not functioning. Calibration set to incorrect throttle source address . Customer’s device sending throttle request under the wrong address Customer’s device not sending throttle request at all Throttle request is not fast enough and ECM is timing out.

64 J1939 Multiplexing Some speed control has been done via the TSC1 message. (QSK products mostly.) Not recommended unless no other option available The TSC1 message has three control modes Speed Control -- Device tells the engine what speed to operate at (typically use this mode) Torque Control -- Device tells the engine to control torque to a specific value Speed / Torque Limit Control -- Specify a speed / torque pair which act as the limits. If we get too many messages too fast, we would have time out problems (which feels like a cutout) or the service tools will not be able to connect reliably to the ECM.

65 J1939 TSC1 Speed Control Example
Address of device sending TSC1 speed control request C000003x Tx d 8 01 A0 41 FF FF FF FF FF Byte 1: indicates speed control mode by setting bits 2,1 to a value of 01 Byte 2, 3: 41 A0 - specifies and engine speed of 2100 rpm Calculating the desired engine speed: 2100 rpm * 1 count / .125rpm = counts = 41 A0 hex Note: The TSC1 message is broadcast every 10 ms when TSC1 is commanding the engine speed.

66 More Multiplexing Examples
ISC Switches 1, 2, and 3 Turn on ISC1 18FDCA20x Tx d 8 F1 FF FF FF FF FF FF FF Turn off ISC1 18FDCA20x Tx d 8 F0 FF FF FF FF FF FF FF Variable ISC Turn on Variable ISC setpoint 3 18FDCA20x Tx d 8 F6 FF FF FF FF FF FF FF Turn off Variable ISC setpoint 3 Remote Accelerator (Throttle) Send remote throttle 18F00320x Tx d 8 FF FF FF 0F FF FF FF FF 18F00120x Tx d 8 FF FF FF 01 FF FF FF FF Must send both remote throttle switch and position messages

67 More Multiplexing Examples
Remote Accelerator Switch Turn on remote throttle switch 18F00120x Tx d 8 FF FF FF 01 FF FF FF FF Turn off remote throttle switch 18F00120x Tx d 8 FF FF FF 00 FF FF FF FF Hydraulic Temperature Hydraulic Temperature gets into the ECM via OEM temperature 2 18FE6820x Tx d 8 F0 FF FF FF FF FF FF FF A/C High Pressure Fan Switch Turn on AC pressure switch 18FEE420x Tx d 8 FF FF F1 FF FF FF FF FF Turn off AC pressure switch 18FEE420x Tx d 8 FF FF F0 FF FF FF FF FF

68 More Multiplexing Examples
Diagnostic Switch Turn on diagnostic switch 18FEF120x Tx d 8 FF FF FF FF FF FF FF DF Turn off diagnostic switch 18FEE420x Tx d 8 FF FF FF FF FF FF FF CF Idle Increment / Decrement Turn on increment switch 18FEE420x Tx d 8 FF FF FF FF FF FF FF F7 Turn off increment switch 18FEE420x Tx d 8 FF FF FF FF FF FF FF F3 Alternate Low Idle Switch Turn on low idle switch 18FDCB20x Tx d 8 DF FF FF FF FF FF FF FF Turn off low idle switch 18FDCB20x Tx d 8 CF FF FF FF FF FF FF FF

69 More Multiplexing Examples
Multiunit Sync On/Off Switch Turn on multiunit sync switch 18FDCB20x Tx d 8 F7 FF FF FF FF FF FF FF Turn off multiunit sync switch 18FDCB20x Tx d 8 F3 FF FF FF FF FF FF FF Alternate Torque Select Select alternate torque curve 1 18FDCB20x Tx d 8 FF 01 FF FF FF FF FF FF Select alternate torque curve 2 18FDCB20x Tx d 8 FF 02 FF FF FF FF FF FF Select 100% torque curve 18FDCB20x Tx d 8 FF 00 FF FF FF FF FF FF

70 More Multiplexing Examples
Alternate Droop Select Turn on Alternate Droop 1 18FDCB20x Tx d 8 FF FF F1 FF FF FF FF FF Turn on Alternate Droop 2 18FDCB20x Tx d 8 FF FF F2 FF FF FF FF FF No Alternate Droop 18FDCB20x Tx d 8 FF FF F0 FF FF FF FF FF Auxiliary Governor Switch Turn on Aux Gov switch 18FDCB20x Tx d 8 FD FF FF FF FF FF FF FF Turn off Aux Gov switch 18FDCB20x Tx d 8 FC FF FF FF FF FF FF FF

71 J1939 Training - Miscellaneous
What about J1939/15? J1939/15 is a physical interface which requires only a two wire twisted pair. It is less noise immune than J1939/11 We do not recommend this standard, but the module can interface with it.

72 J Requested PGN Several PGNs are described in AEB as on request. On Request PGNs require another device on the J1939 to ask for the specific PGN. Requesting a PGN is done via PGN 59904 The reply to the request is to send out the requested PGN per the definition in J1939/71 18EA0000x Tx d 8 E5 FE 00 FF FF FF FF FF Note: PGN is byte swapped!


Download ppt "J1939 Training Agenda Basic Training: J1939 Vocabulary"

Similar presentations


Ads by Google