Results 1 to 9 of 9

Thread: Reading VIN using ELM327-based Tool

  1. #1
    Newbie
    Join Date
    Mar 2010
    Posts
    8

    Reading VIN using ELM327-based Tool

    Hi,

    I am using an ELM327 scan tool from OBD2AllInOne. This tool is interfacing with an application that I have working for the most part. The only data I cannot read from the vehicle is the VIN using the "09 02" PID. I tried sending the command on two different vehicles and got the following:

    2000 FORD VAN
    ============
    > 09 02

    NO DATA

    2004 BMW X3
    ==========
    > 09 02

    7F 09 12

    The code I have written works with an OBD Simulator (as expected). Is there something that I am missing in order to get the VIN ASCII bytes?

    Thanks in advance.

  2. #2
    Constant Bitrate
    Join Date
    Jan 2010
    Posts
    130
    First, it is important to remember that mode 9, item 2 is not mandatory. You can check if it is available with mode 9, 0.

    Second, the response will depend on the protocol. A 2000 Ford is probably J1850 PWM. In this case, VIN will be retruned as 5 packets, which are simply broadcast.

    The newer vehicle might be CAN. In CAN, you get a single response for VIN query, but it uses flow control. A CAN packet caries a max of 8 bytes, so instead of the whole VIN, you'll get a few bytes. Basically the first one indicating that it is a FC, or flow controlled message, and the other rounding out total byte size.

    The rest of the message won't come until the host sends a FC message in response. You can ask for a packet at a time, or basially send a buffer size of 0, in which case the ECU will send all the remaining packets one after another.

    I don't have the spec in front of me, but that is what your second example looks like - the beginning of a flow controlled message.

    Good Luck,
    -jjf

  3. #3
    Newbie
    Join Date
    Mar 2010
    Posts
    8
    Thank you very much! This is extremely useful information.

  4. #4
    Variable Bitrate
    Join Date
    Oct 2008
    Posts
    376
    7F is Negative Acknowledge. 09 is the function on which the NAK is given.

  5. #5
    Constant Bitrate
    Join Date
    Jan 2010
    Posts
    130
    Quote Originally Posted by p2psmurf View Post
    7F is Negative Acknowledge. 09 is the function on which the NAK is given.
    This is most likely correct. When I glanced at it I took it as an ID, but it is just a byte.

    But the generalities above remain true: It isn't required, and you'll get a different type of response depending upon your protocol.

    -jjf

  6. #6
    VENDOR - ScanTool Vitaliy's Avatar
    Join Date
    Dec 2006
    Location
    Phoenix, AZ
    Posts
    624
    Are you sure the protocol is not hard set? Issue the following commands, then copy/paste your results here:

    AT SP 00
    0100
    011C
    0902

    What type of simulator are you using?

    Best regards,

    Vitaliy
    OBDLink MX: world's smallest, fastest, most advanced OBD/Bluetooth adapter with SW and MS CAN support. Read the review to learn more.
    Need to look up a diagnostic trouble code? Try the most up-to-date, free DTCsearch.com!

    You cannot send me a private message using this forum. Use my email instead: vitaliy[@]scantool.net.

  7. #7
    Newbie
    Join Date
    Mar 2010
    Posts
    8
    Hi Vitaliy,

    Thanks for your response. Here is the data you asked for:

    ELM327 v1.3a

    >at sp 00
    OK

    >0100
    SEARCHING...
    41 00 BF 9F F9 90

    >011C
    41 1C 01

    >0902
    7F 09 12

    >


    I am not sure of the name of the simulator. However, it is running on a Windows platform and the title is "ECU Emulator 1.0". It doesn't support all the PIDs but it was useful in getting my application started.

    By the way, thanks to all that have replied so far...

  8. #8
    Variable Bitrate
    Join Date
    Oct 2008
    Posts
    376
    Try reading 09 00 first to see what is supported.

  9. #9
    VENDOR - ScanTool Vitaliy's Avatar
    Join Date
    Dec 2006
    Location
    Phoenix, AZ
    Posts
    624
    It wouldn't hurt, but obviously the VIN is not supported.
    OBDLink MX: world's smallest, fastest, most advanced OBD/Bluetooth adapter with SW and MS CAN support. Read the review to learn more.
    Need to look up a diagnostic trouble code? Try the most up-to-date, free DTCsearch.com!

    You cannot send me a private message using this forum. Use my email instead: vitaliy[@]scantool.net.

Similar Threads

  1. OBDroid, Android based bluetooth OBD2 scan tool
    By malcom2073 in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 121
    Last Post: 12-21-2011, 10:10 PM
  2. ELM327 v1.2
    By types9 in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 5
    Last Post: 04-25-2008, 09:59 PM
  3. PC based scan tool or handheld
    By edvan22 in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 10
    Last Post: 08-08-2007, 01:40 PM
  4. Replies: 7
    Last Post: 07-01-2005, 03:29 PM

Tags for this Thread

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
  •