Results 1 to 4 of 4

Thread: Multiple ECU responses

  1. #1
    Newbie
    Join Date
    Nov 2008
    Posts
    2

    Multiple ECU responses

    Hi all,

    I recently ran into the issue of multiple ECU responses for one PID request and was hoping some of you out there would be able to provide me some insight as I have done quite a bit of searching out there and am still unsure about some things.

    After months of playing around on just a few vehicles, my standard PID request was simply returning a simple response. For example, my "01" request returned:

    0101
    41 01 00 07 6D 00
    >

    All right, everything was great. Then all of the sudden (on a different vehicle of course), I started getting:

    0101
    41 01 00 04 00 00
    41 01 81 07 6D 00
    >

    After a bit of research, I determined this must be responses from multiple ECU's. So I turned on my headers with ATH1, and lo and behold:

    0101
    48 6B 1A 41 01 00 04 00 00 13
    48 6B 10 41 01 81 07 6D 00 FA
    >

    Also, as a side note, I am getting multiple responses as well for simple things like Engine Speed and Vehicle Speed (0C and 0D). My first question is if anyone has an idea what the other ECU might be that's responding to 0C and 0D? By the way, the vehicle is certainly not a hybrid...

    My second question is, without buying the SAE document, is it possible to figure out what the different controllers are via the 3rd byte (in my case, 10 and 1A). I've read that 10 is normally the engine controller, however how am I to be sure?

    Oh yeah, then I move to an 11-bit CAN vehicle, and the response with the headers on looks like:

    0101
    7E8 06 41 01 00 07 6D 00 00
    >

    So my third and final question is more general: let's just say I want to monitor something simple like vehicle speed. What is the proper way of retrieving this value? I'm assuming a CAN vehicle can also have multiple ECU responses, however I haven't seen one in person yet, so I'm guessing depending on the protocol, I would have to determine the ECU I want (how would I know when multiple ECU's sometimes return a value for this request), and then find that line/value for every single request (as the response order for the ECU's can be different).

    Thank you very much in advance, and please let me know if my book of a question doesn't make sense somewhere. I'm new to the forum and looking forward to hearing from you.

    Mitch

  2. #2
    Constant Bitrate joeyoravec's Avatar
    Join Date
    Oct 2005
    Location
    Livonia, MI
    Posts
    205
    Quote Originally Posted by mctodd00 View Post
    Also, as a side note, I am getting multiple responses as well for simple things like Engine Speed and Vehicle Speed (0C and 0D). My first question is if anyone has an idea what the other ECU might be that's responding to 0C and 0D?
    My second question is, without buying the SAE document, is it possible to figure out what the different controllers are via the 3rd byte (in my case, 10 and 1A). I've read that 10 is normally the engine controller, however how am I to be sure?
    Since I can only speculate, it's probably a transmission. You would need info directly from the automaker because the addresses are not an industry standard. The data should be the same so it hardly matters which answer you use.

    Quote Originally Posted by mctodd00 View Post
    So my third and final question is more general: let's just say I want to monitor something simple like vehicle speed. What is the proper way of retrieving this value? I'm assuming a CAN vehicle can also have multiple ECU responses, however I haven't seen one in person yet, so I'm guessing depending on the protocol, I would have to determine the ECU I want (how would I know when multiple ECU's sometimes return a value for this request), and then find that line/value for every single request (as the response order for the ECU's can be different).
    You send a broadcast request and get back zero-or-more responses so your code needs to be pretty flexible. But I don't think it's important to lock-on to a specific address so just send your request and take the first guy that responds. Of course this is somewhat easier if you're using a more different tool (like a Mongoose) that gives you more control over the network.

  3. #3
    Variable Bitrate
    Join Date
    Oct 2008
    Posts
    376
    There's a recommendation for the ecu addresses to be used. But not everybody does this because it is not mandatory.
    The recommendation is:
    engine - 10 thru 17
    gearbox - 18 thru 1F
    I would suggest you use the answers from the engine and not from the gearbox.
    I have seen too many cases where the gearbox gives wrong information.
    I would also strongly suggest you buy your own copy of J1979. There are a lot of new items added in 2007. Have a look here for the changes:
    http://engineers.ihs.com/document/ab...QIACAAAAAAAAAA

  4. #4
    Low Bitrate sinclairvital's Avatar
    Join Date
    Jun 2005
    Posts
    61
    OBDKey 1.10j firmware responses for mutliple incoming frames:

    ISO 9141 based ECU:
    Headers OFF
    >
    0904
    49 04 01 41 34 54 45 F0 48 6B E1 49 04 02 33 30 30 44 BA 48 6B E1 49 04 03 00 00 00 00 E4 48 6B E1 49 04 04 00 00 00 00
    >
    Headers ON
    0904
    2C 48 6B E1 49 04 01 41 34 54 45 F0 48 6B E1 49 04 02 33 30 30 44 BA 48 6B E1 49 04 03 00 00 00 00 E4 48 6B E1 49 04 04 00 00 00 00 E5
    >

    Info:
    In the Headers OFF example the headers and checksum of only the first response are stripped.
    Response is from address E1h

    Data extracted as:
    41 34 54 45 33 30 30 44 00 00 00 00 00 00 00 00


    CAN based ECU (11 bit)
    Headers OFF
    >0902
    49 02 01 57 46 30 35 58 58 47 43 44 35 35 52 32 33 34 32 36
    >

    Headers ON
    0902
    07 E8 10 14 49 02 01 57 46 30
    07 E8 21 35 58 58 47 43 44 35
    07 E8 22 35 52 32 33 34 32 36
    >

    Info:
    responses from can id 7e8 (11 bit)
    frame split over 3 can frames with automatic handshaking.
    Data extracted as:
    57 46 30 35 58 58 47 43 44 35 35 52 32 33 34 32 36

Similar Threads

  1. ECU passes emission test with bad O2 reading?
    By Leandra in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 0
    Last Post: 03-14-2008, 10:50 PM
  2. Replies: 3
    Last Post: 08-11-2007, 03:22 PM
  3. ECU Remapping
    By agrawal_nipun in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 6
    Last Post: 06-06-2006, 08:58 PM
  4. Multiple Monitors and Multiple inputs
    By nixneon in forum Newbie
    Replies: 1
    Last Post: 03-19-2005, 08:30 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •