Sessions
UDS operates through diagnostic sessions, which are states in which the ECU operates to perform specific diagnostic or service functions. Each session provides a different level of access to the ECU’s functionality. The ECU starts in a default session, but diagnostic tools can request transitions to other sessions to perform specialized operations.
Types of UDS Sessions
Default Session (0x01), class
ApplicationDefaultSession
.Description: This is the basic session active upon ECU startup.
Functionality: Limited diagnostic services are available, primarily for querying information (e.g., ID requests, DTCs).
Typical Use Cases: Basic diagnostics, reading fault codes.
Programming Session (0x02), class
ProgrammingSession
.Description: Used for reprogramming the ECU firmware.
Functionality: Enables downloading new software or calibration data into the ECU.
Typical Use Cases: ECU flashing, firmware updates.
Extended Diagnostic Session (0x03), class
ApplicationExtendedSession
.Description: Provides enhanced diagnostic functionality beyond the default session.
Functionality: Includes advanced capabilities like actuator testing, detailed fault code analysis, and special function testing.
Typical Use Cases: In-depth diagnostics, calibration, and testing.