Diagnostic Trouble Codes (DTCs) and Fault Codes Overview and FAQ

These codes provide valuable insights to drivers/operators and fleet managers on asset health for maintenance purposes. The codes are generated and reported in the same way but display as DTCs or Fault Codes depending on whether it was reported by Tenna trackers or an AEMP feed.

Permission Requirements:

  • Users do not require any permissions to view DTCs or Fault Codes.
  • In order to view DTCs, the account must have the Maintenance premium product enabled.
  • In order to view Fault Codes, the account must have an active Original Equipment Manufacturer (OEM) integration.

Overview

Diagnostic Trouble Codes (DTC)

A DTC is used to identify malfunctions in vehicles, provided by the vehicle’s electronic control unit (ECU) and communicated by a Tenna tracker. The ECU detects problems and reports specific codes to communicate the problem and other details.

While the malfunction indicator lamp (MIL)—also known as the check engine light—simply alerts drivers that there is an issue, a DTC identifies (through a Tenna tracker) what and where the issue is.

(AEMP) Fault Codes

A Fault Code is a diagnostic code for heavy equipment assets with an active OEM integration.

Where does the data come from?

Generated by the vehicle’s onboard diagnostics system (OBD) and reported to Tenna through the integration.

OBD could be classified as OBD-I, OBD-II and J1939.

  • OBD-I applies to any vehicles manufactured pre-1996. These assets cannot report DTCs or Fault Codes.
  • OBD-II is the standard used across light vehicles post-1996. These assets can report DTCs or Fault Codes.
  • J1939 applies to heavy-duty trucks/vehicles. These assets can report DTCs or Fault Codes.

Diagnostic Trouble Codes (DTCs) FAQs

Which assets and/or trackers report DTCs?

An asset will report DTCs if it has an installed and verified TennaFLEET II or TennaCANbus , and an ECU that is equipped to report the data (typically manufactured past 1996).

Pro Tip! Assets can have a TennaCANbus tracker paired with an active OEM integration for additional coverage.

How are DTCs formatted?

There are two types of DTCs: OBD-II and J1939.

OBD-II DTCs

The first letter of an OBD-II DTC will include a P, B, C, or U for the following designations:

  • Powertrain: Any faults associated with the engine, transmission, and drivetrain
  • Body: Any faults related to the occupant’s safety, comfort, and assistance.
    • For Example: Air Conditioning, Restraint Systems, Climate Control, etc.
  • Chassis: Any faults with brakes, steering and suspension system.
  • User Network: Any faults with data transfer between on-board modules

The second number indicates if the code is standard or OEM-specific.

The third number indicates which area of the asset is faulty (like engine management system, air/fuel system, transmission, etc.)

The fourth and fifth numbers can range anywhere from 0-99 and provide more specific details about where in the engine.

For example, the asset transmits a code P0782. This means:

  • P = There's a problem with the powertrain.
  • 0 = SAE/ISO Controlled Code
  • 7 = Transmission is faulty
  • 82 = Specifically, it’s a shift malfunction.

What are some common OBD-II DTCs?

  • P0101 detects the malfunction within the mass airflow sensor or circuit.
  • P0110 detects the malfunction in the intake air temperature sensor circuit.
  • P0606 detects the malfunction within the power train control module.
  • P0442 detects the malfunction within the vehicle evaporation emission control system.
  • P0706 detects the malfunction within the transmission range sensor circuit.
  • P0500 detects the malfunction within the speed sensor.

J1939 DTCs

J1939 DTCs consists of four fields, which detect the data about the fault in the vehicle. These four fields are:

  1. SPN (Suspect Parameter Number): 19-bit number assigned for a specific component or electric subsystem which aids to find the location of a fault.
  2. FMI (Failure Mode Indicator): 5-bit number that defines the type and nature of the error, which could be a sensor short-circuit error, calibration error, value range violation error or incorrect update rate error.
FMI Description
0 High – most severe (3)
1 Low – most severe (3)
2 Erratic, Intermittent, or Incorrect
3 Voltage Above Normal or shorted to high fault
4 Voltage Below Normal
5 Current Below Normal or open circuit fault
6 Current Above Normal or Shorted to ground fault
7 System Not Responding Properly
8 Abnormal Frequency, Pulse Width, or Period
9 Abnormal Update Rate
10 Abnormal Rate of Change
11 Other Failure Mode
12 Failure
13 Out of Calibration
14 Special Instruction
15 data valid but above normal range– least severe
16 data valid but above normal range – moderate severity
17 data valid but below normal range – least severe
18 data valid but below normal range – moderate severity
19 Received network Data Error
20 Data Drifted High
21 Data Drifted Low
31 Condition exists
  1. Occurrence Counter: 7-bit number and it tells how many times failure has occurred. Every time fault goes from inactive to active, the OC is incremented by 1 (max 126).
  2. SPN Conversion Method: Describes the byte alignment in the DTC.

What is the difference between SAE/ISO Controlled Codes and OEM Specific Codes?

The Society of Automotive Engineers (SAE) has an ISO document with standard codes used across all vehicles. Original Equipment Manufacturers (OEMs) also have the option to create their own codes specific to the asset. These codes would obviously not apply to a vehicle of a different make or model.

Do I have to interpret the codes myself?

Nope! Tenna has done all of the work for you. Codes are automatically described in Tenna to assist you with finding and solving the problem.

Important! Even though there is a set of generic DTC codes specified by the Society of Automotive Engineers (SAE), it’s important to note that each OEM can still curate and maintain its specific DTCs. Meaning, in some cases, the interpretation of the code may not be clear in Tenna. These instances will say “Unknown DTC” in the description.

How do I find the meaning behind an unknown DTC?

We recommend that you consult your OEM’s support manual or contact them directly to identify Unknown DTCs.

Fault Codes FAQs

How are Fault Codes formatted in Tenna?

All information for Fault Codes (both severity level and description) are provided by the OEM via the AEMP feed.

What do I do if I don’t understand a Fault Code?

Reach out to your OEM to learn more about their specific Fault Codes and their meanings.

Typically, the Fault Code will display a code of some sort before the description that can be used to reference your OEM’s Fault Code documentation.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.