Service Interaction Protocol
Diagnostic Session Control
Service Purpose
“DiagnosticSessionControl enables various diagnostic sessions in the server (ECU). The server always operates within exactly one session, defaulting to the Default Session (0x01) upon every reset event.”
Message Standards
10 0X50 0X 00 32 13 88Response Management
RESPONSE_SUPPRESSION_LOGIC
Active Bit 7 (0x80) detection. When present in the sub-function byte, the ECU enters Silent Mode for positive responses, optimizing packet throughput.
Request
10 01Response
50 01Suppression_Active
10 81! Critical: NRC 0x7F bypasses suppression logic and will always broadcast.
Session Selection
- Standard diagnostic operations
- DTC retrieval and clearing
- Basic identification
Protocol_Logic
10 01- Advanced service access
- I/O control operations
- Tester Present required
Protocol_Logic
10 03- Software update procedures
- Memory erase operations
- Bootloader access
Protocol_Logic
10 02- Airbag/ABS diagnostics
- Critical routine execution
- High-priority timing
Protocol_Logic
10 04Timing & S3 Timeout
Timing parameters define the window for server responses (P2) and client keep-alive signals (S3). When entering a non-default session, the S3 Server Timeout becomes active, requiring a Tester Present signal every 5000ms.
Operational Constraints
Transitioning between sessions triggers automatic resets of ECU security states and active diagnostic processes to ensure protocol integrity.
System_Subject | Transition_Logic | Constraint_Level |
|---|---|---|
| Security Access (0x27) | Force_Locked | Protocol Requirement |
| Active Downloads (0x34) | Purge_Buffer | Critical Fault |
| Diagnostic Routines (0x31) | Terminate_All | Safety Buffer |
| Communication (0x28) | Default_Mode | Reset Protocol |
Protocol Interaction
Protocol Transition Sequence
2 steps0x01Power-on default. No security required.
0x02Flash reprogramming; requires SecurityAccess.
0x03Advanced diagnostics. Most common non-default.
0x04ASIL-rated system isolation.
- Default → Programming
10 02 - Default → Extended
10 03 - Default → Safety
10 04 - Extended → Programming
10 02 - Any non-default → Default
10 01 / S3 timeout - Safety → Extended
10 030x22 - Programming → Programming
10 020x22 - Safety → Any other
10 xx0x22
Request Processing & Validation
50 0X + timing parameters. S3 timer starts for non-default sessions.Click any step to expand validation logic.
Service Requirements by Session
0x100x110x190x220x280x3ESecurity State Behavior
Security access (0x27) is session-specific. Changing sessions resets security, except when remaining in Extended Session.
| From Session | To Session | Command | Security Impact |
|---|---|---|---|
| DEFAULT | EXTENDED | 10 03 | No change (was locked) |
| EXTENDED | EXTENDED | 10 03 | ✓ PRESERVED |
| EXTENDED | DEFAULT | 10 01 | ❌ RESET (Locked) |
| EXTENDED | PROGRAMMING | 10 02 | ❌ RESET (Locked) |
| ANY | DEFAULT (Timeout) | Auto-reset | ❌ RESET (Locked) |
Common Workflow Patterns
Safest workflow. No session elevation or security unlock required. Suitable for field technicians reading vehicle health data.
10 01Enter Default SessionExplicit reset to known state
22 F1 90Read VINVehicle identification number
19 02 09Read Active DTCsstatusMask = 0x09
19 06 01Read DTC SnapshotsFreeze frame data
Negative Responses
EXCEPTION_MATRIX_V3
The requested session ID (subfunction value) is not valid or not supported by this ECU.
This negative response indicates a failure in processing the DiagnosticSessionControl request. Ensure all pre-conditions and active sessions match the requirements defined by ISO 14229.
Debugging & Troubleshooting
Click any issue card to reveal cause and fix.