Results 1 to 5 of 5

Thread: DTC Codes...standard?

  1. #1
    Newbie
    Join Date
    Nov 2008
    Posts
    7

    Question DTC Codes...standard?

    Are DTC codes standard? How do they work? If I get a DTC code how do I know what it means? And if it's manufacturer-specific, is there a standard PID to find out the manufacturer?

  2. #2
    Variable Bitrate
    Join Date
    Oct 2008
    Posts
    376
    Are DTC codes standard? Depends on how you read them. When using a scanner with the factory protocol then the answer is NO. When read with a standardized OBD2/EOBD code reader then the answer is YES.
    How do you know what it means? A good scanner will not only give you a number, but also the correct description. If you only have a number look it up on the internet on a site like www.dtcsearch.com.

    And if it's manufacturer-specific, is there a standard PID to find out the manufacturer?
    I have no idea what you are trying to ask here.

  3. #3
    Newbie
    Join Date
    Nov 2008
    Posts
    7
    I am a programmer and ultimately need to go from DTC --> human readable description and am trying to find out how to do so, but have reports that DTCs are manufacturer-specific.

    PID to find out the manufacturer = is there a Mode X, PID Y request that can return the manufacturer of the vehicle?

  4. #4
    Variable Bitrate
    Join Date
    Oct 2008
    Posts
    376
    If you are thinking about programming your own scanner buy copies of the relevant SAE or ISO standards, like SAE J1979 and J2012. There you can find the answer to the questions you have just asked.

  5. #5
    Constant Bitrate joeyoravec's Avatar
    Join Date
    Oct 2005
    Location
    Livonia, MI
    Posts
    205
    Quote Originally Posted by paperplate View Post
    Are DTC codes standard?
    Yes. SAE J2012 explains how this works (copyrighted, costs $50). The industry-wide codes are available as a spreadsheet for $400.

    Quote Originally Posted by paperplate View Post
    How do they work? If I get a DTC code how do I know what it means?
    The ECM gives you a 16-bit number. Some number-ranges have standard industry-wide definitions, other number-ranges are available for the manufacturer to define their own meanings. The code should be presented as a 5 character string like "P0420". The top two bits of the give you a letter to signify if the code is P=powertrain, B=body, C=chassis, or U=network. The rest should be presented as hex-digits.

    Refer to the following C++ code for the translation:

    Code:
    char bcd(int val)
    {
            int v = val & 0x0F;
            if (v >= 10)
                    return((char)('A' + (v - 10)));
            return((char)('0' + v));
    };
    
    string getDTC(unsigned short DTC)
    {
            ostringstream namestr;
    
            if ((DTC & 0xC000) == 0)
            {
                    namestr << 'P';
            }
            else if ((DTC & 0xC000) == 0x4000)
            {
                    namestr << 'C';
            }
            else if ((DTC & 0xC000) == 0x8000)
            {
                    namestr << 'B';
            }
            else if ((DTC & 0xC000) == 0xC000)
            {
                    namestr << 'U';
            }
    
            namestr << bcd((DTC>>12) & 0x3) << bcd(DTC >> 8) << bcd(DTC >> 4) << bcd(DTC);
    
            return namestr.str();
    };
    Quote Originally Posted by paperplate View Post
    And if it's manufacturer-specific, is there a standard PID to find out the manufacturer?
    There is no universal way to identify the automaker. Reading and parsing the VIN is a good idea but lots of cars prior to 2003 don't have that information programmed anywhere within the ECM. You can make some educated guesses but the best solution is to make the user enter that information.

Similar Threads

  1. Lilliput Programming Guide, More Reset Codes
    By Anointed in forum LCD/Display
    Replies: 130
    Last Post: 07-15-2011, 08:28 PM
  2. Dell Optiplex GX270 Standard ATX 20 pin PSU or not?
    By greatwhite in forum Power Supplies
    Replies: 2
    Last Post: 03-19-2008, 08:03 AM
  3. Scantool that reads manufacturer specific codes?
    By ISambo in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 2
    Last Post: 09-19-2007, 01:53 PM
  4. mac with standard bmw monitor
    By catboy in forum MacCar
    Replies: 6
    Last Post: 10-07-2006, 05:12 AM
  5. Standard Skin Format
    By Micco in forum MacCar
    Replies: 7
    Last Post: 07-23-2005, 11:23 AM

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
  •