September 4, 2026 | By TOSUN

Getting Started with TSMaster DTC Analysis: A Practical Guide

In the field of automotive electronic diagnostics, DTC (Diagnostic Trouble Code) serves as the primary clue for ECUs to locate faults. The DTC Analysis module in TSMaster supports automatic parsing of DTC lists from PDX, ODX, and Excel diagnostic databases, equipped with robust search and filtering capabilities to help engineers quickly pinpoint fault scopes. This quick start guide will help you easily master DTC Analysis.

Keywords: DTC Analysis, UDS Diagnostics, Diagnostic Trouble Code Table, Diagnostic Database, $19 Service

1. Overview of TSMaster DTC Analysis

The DTC Analysis module rapidly parses DTC lists from PDX, ODX, and Excel diagnostic databases through the diagnostic module. It enables reading ECU Diagnostic Trouble Code lists (DTC), reading Freeze Frame / Snapshot data, and reading DTC Extended Data Records. It features automatic parsing, searching, and filtering of DTC lists, supports copying DTC codes and raw messages, and supports exporting to CSV and JSON formats. An overview of the DTC Analysis module is shown in Figure 1.

TSMaster DTC Analysis main window showing a list of diagnostic trouble codes
Figure 1: DTC Analysis

1.1 DTC Analysis Toolbar

The DTC toolbar is displayed at the top of the window. Clicking a corresponding icon executes the action and updates the DTC list accordingly. The toolbar buttons are described as follows:

  • Reload icon Reload: Reloads DTC, Snapshot, and Extended Data definitions, and re-projects cached observation records.
  • Resume and Pause View Refresh icons Resume/Pause View Refresh: Resumes view refreshing to update the DTC list, displaying “Running” in the bottom-left corner; pauses view refreshing, causing the list to stop updating while background acquisition continues.
  • Follow Latest icon Follow Latest: When enabled, the DTC list automatically reads DTCs periodically during execution, tracking changes in the ECU fault memory in real time.
  • History: The default value is 10,000. Configurable range: 100 to 500,000. Values entered below 100 are automatically corrected to 100. Once the set capacity is reached, a fixed-capacity ring buffer is used to overwrite the oldest observation records. The number of overwritten records is calculated and displayed via the [Overwritten] field in the bottom status bar. In actual practice, the maximum number of displayed DTC rows in the list is 1,000, which is an intentional frontend display limit by design.
  • Search: Allows searching for DTC hexadecimal values, descriptions, ECU contexts, sub-function issues, or raw message keywords. Press Enter to confirm the search.
  • Filter: Supports All, Active, Inactive, Failed this operation cycle (TFTOC), Stored preset, Pending, Confirmed, Test not completed since last clear (TNCSLC), Failed Since Last Clear, Test Not Completed This Operation Cycle (TNCTOC), WIR, and Issue Type.
  • Sort: Supports Last Seen (Oldest), Last Seen (Newest), First Seen, DTC, Context, Occurrence Count, and Parse Quality.
  • Clear View icon Clear View: Clears only the DTC Analysis cache without sending a UDS 0x14 request.
  • Copy icon Copy: Copies the currently selected DTC observation record. It copies the text information of the DTC status. After selecting a record in the DTC observation list, right-clicking provides options to [Copy DTC Code], [Copy Raw Payload], and [Copy ECU Context].
  • Export CSV icon Export CSV: Exports the current filtered results as a UTF-8 BOM CSV text file.
  • Export JSON icon Export JSON: Exports the current filtered results as a UTF-8 BOM JSON file. It exports the complete “aggregated snapshot” DTC records under the current search, filter, and sort conditions, and is not restricted by the 1,000-row display limit of the DTC list. Each JSON object currently contains:
    • First and last seen time;
    • ECU/Bus context;
    • DTC code and description;
    • Status text, status byte, Availability Mask;
    • Source sub-function collection;
    • Count;
    • Parsing quality, issue information;
    • NRC, FDC;
    • Raw Payload.

The exported JSON file can be applied in the following scenarios:

  • Attachment for automated diagnostic test results;
  • Reading DTC codes, status, count, and parsing quality by CI/CD or test scripts;
  • Comparing DTC set differences before and after testing or software versions;
  • Providing machine-readable evidence along with Raw Payload during issue reproduction;
  • Importing into internal reporting systems, data analysis scripts, or quality platforms;
  • Performing offline statistics on multi-ECU and multi-channel DTC results;
  • Conducting batch auditing on issue events such as parsing failures, unknown sub-functions, and NRCs.

1.2 DTC Analysis Details Panel

The DTC Analysis details panel consists of four tabs: Overview, Status, Snapshot / Extended, and Raw / Issues.

Overview: After selecting a DTC record, the Overview tab presents the corresponding DTC / Event diagnostic code, Description, ECU name (from the diagnostic database), Variant, Diagnostic Instance, Bus / Channel, Source -> Target address, fault Memory type, Sources, Latest SubFunction, First Seen, Last Seen, Occurrence Count, and Parse Quality, as shown in Figure 2.

TSMaster DTC Analysis Overview tab showing DTC event details
Figure 2: DTC Analysis – Overview

Status: Displays the statusOfDTC value and DTCStatusAvailabilityMask for the currently selected DTC. It performs bitwise parsing on the status byte to indicate whether each corresponding status is Clear or Set, as shown in Figure 3.

TSMaster DTC Analysis Status Byte tab showing statusOfDTC bit parsing
Figure 3: DTC Analysis – Status

Snapshot / Extended: Automatically identifies the record type as Snapshot or Extended Data based on the response to the sent UDS 0x19 04 or 0x19 06. Based on the Snapshot or Extended Data definitions in the diagnostic database, it displays the corresponding identifier, name, value, unit, raw data, and metadata. Figure 4 shows Snapshot data reading.

TSMaster DTC Analysis Snapshot data tab
Figure 4: DTC Analysis – Snapshot

Figure 5 shows Extended Data reading and parsing.

TSMaster DTC Analysis Extended Data tab
Figure 5: DTC Analysis – Extended Data

Raw / Issues: Displays parsing quality and issue codes, as well as the byte length and data parsing of the raw message, as shown in Figure 6.

TSMaster DTC Analysis Raw Data and Issues tab
Figure 6: DTC Analysis – Raw / Issues

2. User Guide for DTC Analysis

Prerequisite for using DTC Analysis: It relies on the DTC definitions, Snapshot, and Extended Data definitions in the diagnostic database, combined with the UDS 0x19 service of the TSMaster Diagnostic module to achieve ECU DTC parsing and viewing. Both the Basic Diagnostic module and the Database-based Diagnostic module can load diagnostic databases.

2.1 Basic Diagnostic Module: Diagnostic Database Loading

In the Basic Diagnostic module, adding DTC description files (Excel diagnostic database files or .ini files) is supported.

Loading path: Application → Diagnostic → Basic Diagnostic → Transport Layer (ISO TP) → DTC Description Files.

After loading an Excel diagnostic database file, you can view the number of DTC definitions, Snapshot/Extended Data definitions in the file, and modify the ECU scope, priority, etc., as shown in Figure 7.

Loading a DTC description file in the TSMaster Basic Diagnostic module
Figure 7: Basic Diagnostic Module – Loading DTC Description Files

In the DTC Definition Library under Basic Diagnostic Config, all valid DTC definitions in the diagnostic database can be viewed. Note that DTC definitions are not executable diagnostic services, as shown in Figure 8.

TSMaster Basic Diagnostic DTC Definition Library
Figure 8: Basic Diagnostic – DTC Definition Library

Note: When loading Excel diagnostic database files, if you encounter unsupported formats or loading failures, you can contact TOSUN application support for further assistance regarding file format compatibility.

2.2 Database-Based Diagnostic Module: Diagnostic Database Loading

In the Database-based Diagnostic module, adding diagnostic database files in PDX/ODX and CDD formats is supported.

Loading path: Application → Diagnostic → DiagnosticDB → Transport Layer (ISO TP) → Diagnostic ECU Node.

After loading the diagnostic database file, you can modify variables and ECU names, as shown in Figure 9.

Loading a PDX/ODX/CDD file in the TSMaster Database-Based Diagnostic module
Figure 9: Database-Based Diagnostic – Loading PDX/ODX/CDD Files

In the DTC Definition Library under Basic Diagnostic Config, all valid DTC definitions in the diagnostic database can likewise be viewed, as shown in Figure 10.

TSMaster Database-Based Diagnostic DTC Definition Library
Figure 10: Database-Based Diagnostic – DTC Definition Library

2.3 Reading DTC Information and DTC Analysis Automatic Parsing

After loading the diagnostic database in either the Basic Diagnostic module or the Database-based Diagnostic module, both diagnostic modules can send UDS 0x19 service requests to read DTC information.

2.3.1 Operations for Reading DTC Information in the Basic Diagnostic Module

Operation path: Basic Diagnostic Config → Stored Data Transmission → $19 ReadDTCInformation.

Select $19 ReadDTCInformation, right-click to create a new $19 service, and configure request ID parameters in the right workspace, as shown in Figure 11.

Creating a new $19 service in the TSMaster Basic Diagnostic module
Figure 11: Basic Diagnostic – Creating New $19 Service

Clicking “…” allows selecting different sub-function IDs corresponding to $19 reporting types. For example, 0x02 is ReportDTCByStatusMask. You can select different sub-function IDs according to different requirements, as shown in Figure 12.

Selecting a $19 service sub-function ID in TSMaster Basic Diagnostic
Figure 12: Basic Diagnostic – Selecting Sub-function ID for $19 Service

Next, execute the $19 service request in the Diagnostic Console. Select the created $19 service, right-click to execute, and view the request and response of the $19 service in the [ISO15765-2] window, as shown in Figure 13.

Executing a $19 service in the TSMaster Basic Diagnostic console
Figure 13: Basic Diagnostic – Diagnostic Console – Executing $19 Service

At this time, the DTC information read by the 0x19 service of the diagnostic module will be automatically parsed in real time within DTC Analysis, as shown in Figure 14.

TSMaster DTC Analysis automatically parsing DTC information from Basic Diagnostic
Figure 14: Basic Diagnostic – DTC Analysis Automatically Parsing DTC Information

2.3.2 Operations for Reading DTC Information in the Database-Based Diagnostic Module

In the Database-based Diagnostic module, after loading the corresponding diagnostic database, the $19 ReadDTCInformation services are usually already pre-defined in the database. Therefore, you only need to select the corresponding $19 service in the Diagnostic Console and execute it. DTC Analysis will automatically parse the corresponding DTC information.

Operation path: DiagnosticDB → Diagnostic Console → Stored Data Transmission → $19 ReadDTCInformation.

Select the corresponding $19 service, right-click to execute, and view the request and response of the $19 service as well as the detailed DTC parsing in the [ISO15765-2] window, as shown in Figure 15.

Executing a $19 service in the TSMaster Database-Based Diagnostic console
Figure 15: Database-Based Diagnostic – Diagnostic Console – Executing $19 Service

At this point, the DTC information read by the $19 service is automatically parsed simultaneously in DTC Analysis, as shown in Figure 16.

TSMaster DTC Analysis automatically parsing DTC information from Database-Based Diagnostic
Figure 16: Database-Based Diagnostic – DTC Analysis Automatically Parsing DTC Information

Want to learn more about the TSMaster DTC Analysis and TSMaster’s other diagnostic capabilities, or need help with a specific workflow? Contact our support team or download the latest TSMaster build to get started.

Scroll to Top
Apply for TSMaster

Tosun offers a free, no-commitment 30-day trial of TSMaster.
Complete the form below to get your free software download link!