Skip to Content
UDS Simulator 2.0 Released
Docs0x3E Tester Present

Service Interaction Protocol

Tester Present

0x3E
Protocol Identifier
A heartbeat signal sent by the tester to prevent the ECU from exiting the active diagnostic session due to timeout.
A Service Identifier (SID) is a single-byte value (0x00–0xFF) in position 0 of every UDS request frame. It specifies which diagnostic operation the client wishes the ECU to execute. The positive response echoes the SID with the high bit set (SID + 0x40).

HEARTBEAT

KEEPALIVE
Prevents the S3 timer from elapsing and dropping the secure session.

RESPONSE_BIT

SUB_FN_80
Commonly sent with the 'Suppress Positive Response' bit set to minimize bus load.

TIMEOUT_S3

5000ms
Default window before ECU reverts to Default Session (0x01).

Overview

ISO 14229-1

“The client sends a TesterPresent request to indicate to the server that the client is still connected… preventing the server from automatically returning to default session.”

info _entry

The ‘P3 Server’ Timer ECUs have a safety timer (typically 5000ms). If no diagnostic message is received within this window, the ECU assumes the tester has disconnected. It will:

  • Revert to Default Session (0x01).
  • Lock any unlocked security access.
  • Stop any active diagnostic routines.

Service 0x3E resets this timer.

This service is the heartbeat of the Diagnostic Session Control (0x10) ecosystem. Without it, advanced states cannot be maintained.

Default Behavior

In the Default Session (0x01), service 0x3E is supported but technically optional since no timeout reset is needed. However, in Extended (0x03) or Programming (0x02) sessions, the tester must send this message within the P3 (S3) timeout window (typically 5000ms) to prevent an automatic revert to Default Session.

Protocol Anatomy (Heartbeat)

◆ PROTOCOL ANATOMY

View
REQUEST_TX

0x3E TESTER PRESENT

RESPONSE_RX

0x3E RESPONSE

Workflow & Thinking

Workflow: Session Maintenance (S3 Timer)

6 steps
Tester
ECU
SID 0x3E Keep Alive Logic
Click to Enlarge

Visualizing the P3 Timer reset mechanism.

Negative Response Codes

Error_Catalog

Negative Response Codes

THREAT_LEVEL2 HIGH2 NRCs TOTAL
ISO_14229_ANNEX_ANRC_ENGINE_V2