---
+ Post New Thread
Results 1 to 5 of 5
  1. #1
    Newbie level 4
    Points: 691, Level: 5

    Join Date
    Mar 2009
    Posts
    5
    Helped
    0 / 0
    Points
    691
    Level
    5

    What is the message format used for a DTC on the J1939 bus?

    Does anyone know what the message format is for a DTC on the J1939 bus? For example, what byte location are the SPN, FMI and Counts in PGN 65262? I am getting data in that PGN like this:(in HEX)
    PGN 25262 Source 0
    [01][64][87][B][CA][FE][0][6][0][0][C7][FF][FF][FF][FF][FF][FF][FF][0][0][0][0]
    any help would be appreciated...

    •   Alt30th March 2009, 02:06

      advertising

        
       

  2. #2
    Newbie level 4
    Points: 691, Level: 5

    Join Date
    Mar 2009
    Posts
    5
    Helped
    0 / 0
    Points
    691
    Level
    5

    dtc j1939

    Quote Originally Posted by funnynypd
    I believe you are talking about PGN 65226.
    PGN 65262 is Engine Temperature 1 (ET1).

    A screen cut of your software would help a lot.
    Yes, typo :D

    I copied a sample using Trans Temp from PGN 65272 as an example of how I am pulling the data, See Below... what I need to know is in the fault code PGN 65226, I retreive the data in a message format, from what I have been able to learn, the breakdown is as follows:

    6 Data Bytes

    Byte 1 bit 5&6 Red Lamp Status PGN 623
    Byte 1 bit 3&4 Amber Lamp status PGN 624
    Byte 1 bit 1&2 Protect Lamp Staus PGN 987
    Byte 1 bit 7&8 Malfunction Indicator PGN 1213
    Byte 3&4 SPN of fault code PGN 1214
    Byte 5 FMI of fault code PGN 1215
    Byte 6 first 7 bits = Counts PGN 1216
    Byte 6 8th bit=Conversion Method PGN 1706

    then the sequence repeats until all active codes are sent, so my message would be 24 characters long if there were 4 faults and I have no byte 2 breakdown...

    When I apply this I get bad results, all other PGNs I apply this to work flawlessly (See attached screen clip) so I must be looking at it wrong... wrong byte locations, missing something...

    The same with 65231, 65236, 65727, and 65230

    Can you tell me the makeup of these PGNs dealing only with the data segment


    In the following snipit, I am pulling the Transmission Temperature (Bytes 5&6) from PGN 65272 then converting it to degrees f.

    SPN 177 is byte 5&6 of PGN 65272, offset is resolution is .03125 offset is -273 to get degrees in C. then *9/5+32 to convert to Degrees F. then I format the CString Value to display the temperature

    SNIPIT ===================>
    case 65272:
    // SPN 177 trans temp
    fReading = (double) UnPackTwoByteIntegerLSB( &ucMessage[i+4] );
    Value.Format(_T("%4.2f Deg. F"),fReading * .03125 +(-273) * 9 / 5 +32 );
    break;




    •   Alt17th April 2009, 04:46

      advertising

        
       

  3. #3
    Newbie level 4
    Points: 691, Level: 5

    Join Date
    Mar 2009
    Posts
    5
    Helped
    0 / 0
    Points
    691
    Level
    5

    spn j1939

    Please disregard, I purchased the diagnostic layer papers from SAE and found my answer, anyone needing help in this area or PGN SPN details, please feel free to ask, or email me at pfsupport@rogers.com.

    Thanks all


    Quote Originally Posted by DonL
    Quote Originally Posted by funnynypd
    I believe you are talking about PGN 65226.
    PGN 65262 is Engine Temperature 1 (ET1).

    A screen cut of your software would help a lot.
    Yes, typo :D

    I copied a sample using Trans Temp from PGN 65272 as an example of how I am pulling the data, See Below... what I need to know is in the fault code PGN 65226, I retreive the data in a message format, from what I have been able to learn, the breakdown is as follows:

    6 Data Bytes

    Byte 1 bit 5&6 Red Lamp Status PGN 623
    Byte 1 bit 3&4 Amber Lamp status PGN 624
    Byte 1 bit 1&2 Protect Lamp Staus PGN 987
    Byte 1 bit 7&8 Malfunction Indicator PGN 1213
    Byte 3&4 SPN of fault code PGN 1214
    Byte 5 FMI of fault code PGN 1215
    Byte 6 first 7 bits = Counts PGN 1216
    Byte 6 8th bit=Conversion Method PGN 1706

    then the sequence repeats until all active codes are sent, so my message would be 24 characters long if there were 4 faults and I have no byte 2 breakdown...

    When I apply this I get bad results, all other PGNs I apply this to work flawlessly (See attached screen clip) so I must be looking at it wrong... wrong byte locations, missing something...

    The same with 65231, 65236, 65727, and 65230

    Can you tell me the makeup of these PGNs dealing only with the data segment


    In the following snipit, I am pulling the Transmission Temperature (Bytes 5&6) from PGN 65272 then converting it to degrees f.

    SPN 177 is byte 5&6 of PGN 65272, offset is resolution is .03125 offset is -273 to get degrees in C. then *9/5+32 to convert to Degrees F. then I format the CString Value to display the temperature

    SNIPIT ===================>
    case 65272:
    // SPN 177 trans temp
    fReading = (double) UnPackTwoByteIntegerLSB( &ucMessage[i+4] );
    Value.Format(_T("%4.2f Deg. F"),fReading * .03125 +(-273) * 9 / 5 +32 );
    break;




    •   Alt3rd May 2009, 00:40

      advertising

        
       

  4. #4
    Junior Member level 1
    Points: 401, Level: 4

    Join Date
    Jun 2011
    Location
    Coimbatore
    Posts
    18
    Helped
    2 / 2
    Points
    401
    Level
    4

    Re: What is the message format used for a DTC on the J1939 bus?

    [Priority |Extended Data Page |Data Page |PDU Format |PDU Specific |Source Address ]
    [3 bit] | [1 bit] | [1 bit] | [8 bit] |[8 bit] |[8 bit]
    [-------------------- PGN FORMAT --------------------------------]
    ************************************************** ***************************************
    [Data Field]
    [BYTE 0][BYTE 1][BYTE 2][BYTE 3][BYTE 4][BYTE 5][BYTE 6][BYTE 7]
    ************************************************** ***************************************
    BYTE 0
    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

    BYTE 1
    bits 8-7 Flash Malfunction Indicator Lamp
    bits 6-5 Flash Red Stop Lamp
    bits 4-3 Flash Amber Warning Lamp
    bits 2-1 Flash Protect Lamp

    BYTE 2
    bits 8-1 SPN, [DTC Byte 1] Low byte (7-0) bit format

    BYTE 3
    bits 8-1 SPN, [DTC Byte 2] High Byte (7-0) bit format

    BYTE 4
    bits 8-6 SPN, 3 most significant bits (most significant at bit 8)
    bits 5-1 FMI (most significant at bit 5)

    BYTE 5
    bit 8 SPN Conversion Method

    bits 7-1 Occurrence Count
    BYTE 6 - NA
    BYTE 7 - NA

    I hope this will be useful for u.



  5. #5
    Newbie level 4
    Points: 691, Level: 5

    Join Date
    Mar 2009
    Posts
    5
    Helped
    0 / 0
    Points
    691
    Level
    5

    Re: What is the message format used for a DTC on the J1939 bus?

    Quote Originally Posted by thirugnanam.ram View Post
    [Priority |Extended Data Page |Data Page |PDU Format |PDU Specific |Source Address ]
    [3 bit] | [1 bit] | [1 bit] | [8 bit] |[8 bit] |[8 bit]
    [-------------------- PGN FORMAT --------------------------------]
    ************************************************** ***************************************
    [Data Field]
    [BYTE 0][BYTE 1][BYTE 2][BYTE 3][BYTE 4][BYTE 5][BYTE 6][BYTE 7]
    ************************************************** ***************************************
    BYTE 0
    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

    BYTE 1
    bits 8-7 Flash Malfunction Indicator Lamp
    bits 6-5 Flash Red Stop Lamp
    bits 4-3 Flash Amber Warning Lamp
    bits 2-1 Flash Protect Lamp

    BYTE 2
    bits 8-1 SPN, [DTC Byte 1] Low byte (7-0) bit format

    BYTE 3
    bits 8-1 SPN, [DTC Byte 2] High Byte (7-0) bit format

    BYTE 4
    bits 8-6 SPN, 3 most significant bits (most significant at bit 8)
    bits 5-1 FMI (most significant at bit 5)

    BYTE 5
    bit 8 SPN Conversion Method

    bits 7-1 Occurrence Count
    BYTE 6 - NA
    BYTE 7 - NA

    I hope this will be useful for u.
    Thanks... I got it all figured out,



+ Post New Thread
Please login