Secure Login Skip Navigation LinksHome | Articles | Details
Advanced Fuel Pump Diagnostics

Introduction to Mode$06 Data

Deciphering the Numbers

How is Mode$06 Useful?

CAN Equipped Vehicles

Mode$06 data in a nutshell is raw test data that was not really designed for output to a scan tool. It consists of parameters and actual test results that the PCM uses to determine if certain systems are working properly and if it should turn on the CEL and flag a trouble code. For example, probably the most commonly used Mode$06 data is on Ford vehicles to locate a misfire. Since Ford vehicles do not show misfire counters in scan data, it can be difficult to track down which cylinder is causing an intermittent misfire that may not be bad enough to store a trouble code. By using Mode$06 data, a technician can see the misfire tests and parameters for each and every cylinder. If the vehicle is experiencing an intermittent misfire, and cylinder #4 is nearing the max allowed value while all other cylinders are at 0, then the technician knows that cylinder #4 is probably source of the misfire even though it is not misfiring enough to actually fail the misfire test.

There are many other tests and parameters that can be found in Mode$06 data dealing with EGR systems, O2 sensor functionality, catalyst efficiency and more. Learning to use them all proficiently can save time and increase diagnostic accuracy. Before getting started, here is some information you will need to know.

TID$01: This stands for Test ID #1. The $ indicates the hexadecimal numbering system is used.
CID$01: This stands for Component ID #1.
Min or Min Val: This is the minimum that the actual test value can be before the PCM will flag a trouble code.
Max or Max Val: The maximum that the actual test value can be before the PCM will flag a trouble code.
Val or Cur Val: The actual test value as recorded the last time the PCM performed that particular test.

Different scanners may label these parameters differently. For example, the Min Val parameter may be called minimum allowed or limit.

So, where is Mode$06 data found? It is usually in the generic OBDII section, NOT the manufacturers specific section of the scan tool. Some scan tools may not call it Mode$06, but instead may have the section labeled non-continuous tests. Many scan tools support Mode$06 data, but some do not.

Formatting and Hexadecimal Numbers

Different scanners or scanner software will display the data in different ways. Some scanners will display values as hexadecimal numerals. Others will automatically convert the hexadecimal number to a standard number for easier viewing. The best scanners for Mode$06 data will take the standard numbers and translate them to the appropriate values automatically.

The data can be difficult to understand because it is often in hexadecimal format and may not make a lot of sense at first. Take a look at the following example of TID$01. The minimum allowed value for component IDs or CID$11 and CID$21 is 200. The measured values are 2F7 and 33E respectively. The status section shows us that both components have passed the test, but how close to the minimum are each of the components? Is either of them near failing? Is 2F7 less than 200?

The measured values on this scan tool are displayed in hexadecimal format, so until we convert the numbers it is difficult to know for sure. Luckily, any PC running a late version of Windows operating system has a built in calculator that can convert hexadecimal numbers to standard numbers. Simply click on your Windows start button and then navigate to programs/accessories/calculator.

When the calculator first opens, it will probably look like this.

The first thing you need to do is change it to scientific format so that we can convert the hexadecimal numbers. To do that, click on view and then select scientific.

Now your calculator should look like this. The Hex and Dec radial buttons have been pointed out in the image below.

To convert a number from hexadecimal to normal decimal, select the Hex radial button and put your value into the calculator.

In the next example, the value 2F7 from component ID 11 (CID$11) has been put into the calculator.

Once the value is entered, simply click Dec and the calculator will convert the hexadecimal to a standard number.

Now if we look back at the original picture of Mode$06 scan data, we can see that the value of 2F7 is equal to 759. Use the same method to convert 200 to a standard number of 512. Now we can see that 2F7 is well above the minimum spec of 200.

Deciphering the Numbers

So, what does the number 759 mean? Is it a voltage value? Amperage? Pressure?

Well, the answer depends on the make and model of the vehicle. On some vehicles, the values given are true values such as voltage, amperage, or pressure depending on the test. On other makes and models, the number only represents a value, and this number must be processed by a formula that is specific to each TID$ and vehicle. offers these conversion formulas for most test IDs in the Mode$06 section of the toolbox.

Lets take a look at a Ford vehicle and TID$01. On this vehicle, TID$01 is for oxygen sensor peak voltage. This means the PCM is checking to see what the highest achieved voltage for each O2 sensor is during the test (Note that this scanner has automatically translated the hexadecimal numbers to a standard format making them easier to read).

In this example, the min allowed values are 512 for each component and the actual values are 759 and 830. The formula to convert these numbers to volts is to multiply them by .00098. Therefore, 759 could convert to .744 volts and 830 would convert to .813 volts. The minimum specifications would convert from 512 to .500 volts. So, TID$01 on this Ford vehicle is checking to make sure that each oxygen sensor will achieve over .500 volts during the test period. If it does not, the PCM will flag an oxygen sensor code and turn on the check engine light. Keep in mind that while any value above .500 volts will pass the test, sensors that can only achieve .600 volts are likely close to failure.

Mode$06 data is very useful in locating future problems as with the example below. This Mode$06 is from a vehicle that came into a shop with trouble code P0133. If the technician were to sell an O2 sensor for bank 1, it would fix the problem, but the car may come back in a few weeks with a check engine light on and code P0153 for bank 2. Of course, this would be a different problem, different code and different sensor, but all the customer knows is "my check engine light is back on and you just replaced an oxygen sensor." If the technician takes the time to look at Mode$06 data, he can see that the bank 2 oxygen sensor is passing the test, but just barely. A good sensor will typically have at least .70 to .85 volts on TID$01 on Ford vehicles. By using this data, the technician can inform the customer than bank 1 sensor is bad, but the bank 2 sensor is weak and will likely fail very soon. Note that the scanner below has not only translated the hexadecimal numbers, it has also converted the numbers to the real value. In other words, the formula to multiply by .00098 has already been applied.

CAN (Controller Area Network) is a fairly new protocol that starting showing up in about 2002 and 2003 for many manufacturers. The Mode$06 data is formatted slightly different on CAN equipped vehicles, but is still basically the same information. With the older Mode$06 data, a TID was a specific test that could contain multiple component IDs. With CAN Mode$06, the primary test is called MID (Monitor ID) instead of TID. A MID only refers to a single component, but can have multiple tests within the MID.

For example, with older Ford vehicles, TID$01 referred to oxygen sensor peak voltage. Within this TID, you could see the O2 sensor peak voltage for the bank 1 sensor under CID $11 and you could see peak voltage for the bank 2 sensor under CID$21. If you wanted to see the O2 heater current draw, you had to go to TID$04.

With CAN vehicles, MID$01 has all of the tests relating to the bank 1 sensor 1 O2 (HO2SB1S1). Under MID$01, TID$80 is the voltage amplitude test, TID$01 is the sensor switch point and TID$81 is heater current. There is no information for any sensor other than B1S1 under MID$01. To see information for the bank 2 sensor, you would need to look at MID$05 which has all of the tests relating to bank 2 sensor 1.

The easiest explanation is this: With non-CAN vehicles, the parent is the test itself and each test can be performed on multiple components. With CAN vehicles, the parent is the component and multiple tests can be performed on that component.

Another difference is that CAN compliant vehicles do not need conversion formulas. The values given in the Mode$06 data represent some value such as volts, amps, pressure, etc.

Learning to use Mode$06 data can be a bit intimidating at first, but can be very useful information once mastered. Practice every chance you get and you will benefit by having fewer comebacks and fewer missed diagnoses.

Rick Seagle