Announcement

Collapse
No announcement yet.

Mode $06

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mode $06

    I've been on a business trip, and had access to a newer Ford Escape. So of course I started playing around with my OBD2 tool, and figured out that the vehicle supported Mode $06. Being inquisitive like I am, I started doing some google searches and came up with exactly zero information on mode $06. Does anyone know any information about this? I've managed to do some parsing of the message structures returned, but it'd be awesome if there was more information somewhere on the web that I just haven't found yet.
    "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
    RevFE
    My Shop

  • #2
    Try searching for the text: mode $06
    More than 75.000 hits, including video's on how to use the mode.

    Comment


    • #3
      Right, but I've yet to find any information on a byte for byte description of exactly what the results returned mean other than people saying "If you use ABC software, then it will return TID 1, which is blah blah". Or descriptions on how to interpret the information that tools like Tech2 return.

      So, I've now managed to figure out most of it, except what the units and scaling ID means in terms of converting the returned limits and values to their appropriate values. Interesting how little of this information is available, and how much of it is "Buy my scantool" or "Buy my software" advertisements. Once I figure this out I'll get it up on wikipedia with the other OBD2 information.
      "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
      RevFE
      My Shop

      Comment


      • #4
        Units and scaling is easy. Buy SAE J1979.

        Comment


        • #5
          Originally posted by p2psmurf View Post
          Units and scaling is easy. Buy SAE J1979.
          And that's exactly the kind of response that I'm finding that really irks me. A lot of OBD2 Mode and pid values/scaling is available for free on the Internet, specifically on Wikipedia, why not Mode $06? I'm getting there though, slowly. I'll be posting my results to Wikipedia once I'm done, hopefully it will help someone else. I've figured out 4 of the 6 scaling factors that are used on the vehicle I'm testing on. I figure there are probably a couple hundred, but I can only do what I have. With any luck, others will fill in the missing information.
          "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
          RevFE
          My Shop

          Comment


          • #6
            It'll be the best 60 dollars you have spend in your entire life.

            Comment


            • #7
              Originally posted by p2psmurf View Post
              It'll be the best 60 dollars you have spend in your entire life.
              And if I do that, I help no one but myself. Making it the most selfish $60 ever spent in my life. I assume if I copy the information from the document onto wikipedia, it'll be taken down as copyright material. If I reverse engineer it however, it's legitimate and could help other people interested in getting more information from their vehicle without having to pay for it.
              "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
              RevFE
              My Shop

              Comment


              • #8
                Log a complaint with your government? They decide the vehicle must comply to these rules, but do not publish the rules (well, not all of them).

                Comment


                • #9
                  I don't have any complaints to the government, there are just a lot of people who know this information but refuse to share it. Alas that's the way of the world. People are generally more interested in themselves than others. I don't hold it against people, it's just their nature, not their fault.

                  That's ok though, I'm finding enough scraps of information online to piece this together, and once I do it'll be freely available for anyone.
                  "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
                  RevFE
                  My Shop

                  Comment


                  • #10
                    I have taken a Mode 6 Smog Update Course back 6 years ago. They gave us a sheet with a list of Mode 6 PDF link. Most of the Manufacturer were available for free from their site(this was 6 years ago). I lost that Sheet! Most were free and some requires you to pay.

                    Ford is free

                    http://www.motorcraftservice.com/vdi...tsid=diagsheet

                    Scaling and Description is there.

                    Comment


                    • #11
                      Thanks Scantech. I've found a little bit of GM information, but that's the largest chunk of information I've seen so far. I'll definently have to include that in my software for ford vehicles.
                      "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
                      RevFE
                      My Shop

                      Comment


                      • #12
                        Below is what I've figured out for CAN based vehicles. This will be different on non-CAN vehicles, but I don't currently have one of those in my pocket to test and play on

                        Sending 0600 gets you a list of Trouble ID’s (TID) between 0ื00-0x1F supported, 0620 gives you 0ื20-0x3F and so on up to 06A0. Parsing this the same one as you parse 0100, and we get a bunch of messages we can send.

                        Request: “0601″
                        Response: “7E8 10 1C 46 01 81 0E 0A CB 7E8 21 06 54 0E D8 01 87 10 7E8 22 00 9D 00 00 01 2C 01 7E8 23 88 10 00 84 00 00 02 7E8 24 58 00 00 00 00 00 00 ”
                        Request: “0602″
                        Response: “7E8 10 25 46 02 01 0A 0E 68 7E8 21 00 00 FF FF 02 81 0E 7E8 22 03 59 00 DC 0B B8 02 7E8 23 85 B1 F8 AA C5 68 00 7E8 24 00 02 86 10 03 92 00 7E8 25 00 17 70 00 00 00 00 ”
                        Request: “0605″
                        Response: “7E8 10 1C 46 05 81 0E 0A E5 7E8 21 06 54 0E D8 05 87 10 7E8 22 00 6B 00 00 01 2C 05 7E8 23 88 10 00 5D 00 00 02 7E8 24 58 00 00 00 00 00 00 ”
                        Request: “0606″
                        Response: “7E8 10 25 46 06 01 0A 0E 68 7E8 21 00 00 FF FF 06 81 0E 7E8 22 03 46 00 DC 0B B8 06 7E8 23 85 B1 F9 40 C5 68 00 7E8 24 00 06 86 10 03 3A 00 7E8 25 00 17 70 00 00 00 00 ”

                        Take the first message:

                        “7E8 10 1C 46 01 81 0E 0A CB 7E8 21 06 54 0E D8 01 87 10 7E8 22 00 9D 00 00 01 2C 01 7E8 23 88 10 00 84 00 00 02 7E8 24 58 00 00 00 00 00 00 ”

                        Split that on the header 7E8, and you get

                        7E8 10 1C 46 01 81 0E 0A CB
                        7E8 21 06 54 0E D8 01 87 10
                        7E8 22 00 9D 00 00 01 2C 01
                        7E8 23 88 10 00 84 00 00 02
                        7E8 24 58 00 00 00 00 00 00

                        Remove the header and counter bytes, reorganize the arrangement of the bytes

                        0181 0E 0ACB 0654 0ED8
                        0187 10 009D 0000 012C
                        0188 10 0084 0000 0258
                        00 00 00 00 00 00

                        So we have three messages for OBDMID (OBD Monitor ID) 0ื01. TID 0ื81, TID 0ื87, and TID 0ื88. All three of these are manufacturer specific TID’s, so we don’t actually have any information on what they mean, but we can still parse out the values. The third byte signifies how to parse the messages 0x0E means the result is in Amps, and you multiply it by 0.001. The fourth and fifth bytes are the value (0ACB), 2763. Multiplied by the mulitplier, and it’s 2.763Amps. The sixth and Seventh bytes are a minmum value, which multipled by the multiplier works out to 1.62Amps, and the eighth and ninth are the maximum which is 3.8Amps. Our value is between the min and max, so the test passes.

                        Easy right?
                        0181: Min: 1.62Amps, Max: 3.8Amps, Value: 2.763Amps, Test: Passed

                        Now, parse byte 0ื10 means something else. In this case, it means it’s a time value, no multiple, and in miliseconds.

                        0187: Min 0ms, Max: 300ms, Value: 157ms, Test: Passed
                        0188: Min 0ms, Max: 600ms, Value: 132ms, Test: Passed

                        The parse bytes I've figured out so far:

                        Byte: 0x0A
                        Type: Voltage
                        Units: mV
                        Multiplier: 0.122
                        Min: 0
                        Max: 7995

                        Byte: 0x0E
                        Type: Amps
                        Units: A
                        Multiplier: 0.001
                        Min: 0
                        Max: 65.54

                        Byte: 0x10
                        Type: Time
                        Units: ms
                        Multiplier: 1.0
                        Min: 0
                        Max: 65535

                        Byte: 0x16
                        Type: Temp
                        Units: C
                        Multiplier: 0.1
                        Offset: -40.
                        Min: -40
                        Max: 6513.50

                        Byte: 0x1C
                        Type: Angle
                        Units: degrees
                        Multiplier: 0.01
                        Min: 0
                        Max: 655.35

                        Byte: 0x20
                        Type: Ratio
                        Units: N/A
                        Multiplier: 0.0039062
                        Min: 0
                        Max: 255.99

                        Byte: 0x24
                        Type: Counts
                        Units: Count
                        Multiplier: 1.0
                        Min: 0
                        Max: 65535

                        Byte: 0x30
                        Type: Percentage
                        Units: %
                        Multiplier: 0.001526
                        Min: 0
                        Max: 100

                        These two are interesting ones. They're signed, so programatically you have to treat it as a short (two byte sized number). If you do so, the computer will automatically sign it properly. Through me through a loop initially, but the scan software I was using broke out the min/max as both calculated, and absolute integer values which helped a lot. Also, Pa is for pascal. Apparently this vehicle returns SI units. Not sure if this is standardized, or just this vehicle.

                        Byte: 0xA9
                        Type: Pressure/Second
                        Units: Pa/s
                        Multiplier: 0.25
                        Min: -8192
                        Max: 8192


                        Byte: 0xFE
                        Type: Pressure
                        Units: Pa
                        Multiplier: 0.25
                        Min: -8192
                        Max: 8192

                        I'm going to post this on wikipedia as soon as I figure out the best format for the data. I'm very annoyed that this information is not available elsewhere, what with the plethora of software tools that support this mode. Once again, money over the good of others I suppose. I can't completely blame them, if this was the only thing that set a particular software apart from free software (Which on a side note, IS the only thing that makes pay software seem any better in a few cases), I wouldn't either.
                        "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
                        RevFE
                        My Shop

                        Comment

                        Working...
                        X