DID troubleshooting

UDS DID read failure

A requested Data Identifier does not return a positive response, returns an unexpected negative response, or produces data that cannot be decoded as expected. This guide narrows the failure across diagnostic data, ECU state, access conditions, transport, and implementation behavior.

Start the diagnostic workflow

Observable symptoms

What the failure can look like

Possible causes

Boundaries worth checking first

01

Incorrect or stale diagnostic data definition

The ODX or PDX definition may contain the wrong DID value, request structure, response length, encoding, session requirement, or access requirement. The request can therefore target the wrong data or decode a valid response incorrectly.

  • DID
  • UDS
  • ODX
02

The DID is unavailable in the current diagnostic session

The ECU's Diagnostic Communication Manager may restrict the DID to a particular diagnostic session. A request made before the required session transition can produce a negative response even when the DID is implemented.

  • DID
  • UDS
  • DCM
03

Security access or another prerequisite is missing

The ECU may protect the DID behind Security Access or require an earlier diagnostic operation. Without the required state, the ECU can reject the read while communication and DID addressing remain correct.

  • UDS
  • Diagnostic Session
  • Security Access
04

Request is sent to the wrong ECU or diagnostic address

A valid-looking request can reach a different ECU, an unintended diagnostic endpoint, or no intended endpoint at all. The resulting negative response, timeout, or unrelated data may resemble a DID implementation problem.

  • UDS
  • DoIP
05

Transport segmentation or timing is mishandled

A DID response that exceeds one transport message depends on correct ISO-TP handling, including segmentation and reassembly. Incorrect transport processing can cause an incomplete response, timeout, or decoding failure even when the ECU generated valid data.

  • UDS
  • ISO-TP
06

The ECU implementation does not match the diagnostic definition

The DCM or application-side DID handler may use a different length, encoding, availability rule, or data source than the ODX or PDX description. This can produce a valid response with unexpected content or a consistent negative response.

  • DID
  • ODX
  • DCM

Ordered investigation

Diagnostic workflow

  1. 01

    Capture one reproducible transaction

    Use the problem description and ECU to record the exact DID request, addressing context, diagnostic session, access sequence, complete response, timing, and expected value. This establishes whether the failure is a rejection, timeout, incomplete response, or decoding discrepancy.

    • DID
    • UDS
    • Diagnostic Session
  2. 02

    Classify the response before changing configuration

    Determine whether the ECU sends a positive response, a negative response, no response, or an incomplete response. This separates definition and ECU-policy investigation from addressing, timing, and transport investigation without assuming a root cause.

    • UDS
    • ISO-TP
    • DoIP
  3. 03

    Verify the diagnostic definition against the observed request

    Compare the requested DID, request bytes, expected response structure, data length, encoding, session requirement, and access requirement with the active ODX or PDX data. This can rule out a description mismatch but cannot by itself prove the ECU implementation is correct.

    • DID
    • UDS
    • ODX
  4. 04

    Reproduce the read across the required ECU states

    Repeat the request in the documented diagnostic session and, where specified, after the required Security Access or prerequisite sequence. Record which state changes the result; a change narrows the issue to ECU policy or request sequencing rather than basic DID addressing.

    • UDS
    • Diagnostic Session
    • Security Access
  5. 05

    Inspect addressing and transport behavior

    Confirm that the request reaches the intended ECU and that the complete response is received and reassembled according to the selected transport. For an IP-based path, inspect DoIP behavior; for a segmented path, inspect ISO-TP transaction continuity and timing.

    • UDS
    • ISO-TP
    • DoIP
  6. 06

    Compare ECU behavior with the diagnostic software interpretation

    Use a trace from the diagnostic application or an analysis environment to compare raw request and response content with the decoded result. If the raw response is consistent but the displayed value is not, focus on ODX or PDX interpretation and application decoding.

    • ODX
    • CANoe
    • CAPL
  7. 07

    Trace the ECU diagnostic path when external evidence is insufficient

    If the request, state, addressing, transport, and diagnostic data are consistent, inspect the DCM and the ECU data provider for DID availability, length, encoding, and runtime errors. This is the point at which ECU software evidence or supplier analysis may be required.

    • DID
    • DCM
    • UDS

Verification gates

Technical checks

Compare the requested DID with the active definition

Read the DID value and request structure from the active ODX or PDX data and compare them byte-for-byte with the transmitted diagnostic request.

Expected

The transmitted request addresses the intended DID and matches the active diagnostic definition.

If failed

A mismatch points to stale, incorrect, or incorrectly selected ODX or PDX data; correct the diagnostic data source before changing ECU behavior.

Record the complete ECU response

Capture the full response transaction, including any negative response, response timing, and all segmented transport messages when applicable.

Expected

The response is complete, associated with the request, and contains either the expected DID data or an interpretable negative response.

If failed

A missing or incomplete transaction directs investigation toward addressing, timing, ISO-TP, or DoIP handling rather than DID decoding alone.

Verify the diagnostic session

Read the current Diagnostic Session state and compare it with the session required for the DID in the ODX or PDX definition.

Expected

The ECU is in the required diagnostic session before the DID request is sent.

If failed

A session mismatch can explain an otherwise valid request being rejected; verify the session transition and its timing.

Verify Security Access prerequisites

Compare the requested DID's documented access requirement with the recorded Security Access sequence and resulting ECU state.

Expected

The ECU is in the access state required to read the DID, or the DID is documented as unrestricted.

If failed

A missing or unsuccessful access sequence points to diagnostic flow or ECU authorization handling; do not infer that the DID itself is absent.

Check DID response length and encoding

Compare the received DID data length, byte order, encoding, scaling, and value range with the ODX or PDX definition.

Expected

The response conforms to the defined length and decoding rules and produces a plausible engineering value.

If failed

A mismatch points to diagnostic-data interpretation or ECU DID implementation; preserve the raw response for comparison.

Check transport continuity

For a segmented response, compare the received transport sequence with the expected ISO-TP reassembly and check whether the transaction terminates cleanly.

Expected

All response segments arrive in order and reassemble into one complete diagnostic response.

If failed

Missing, reordered, or malformed transport data points to transport configuration, timing, addressing, or interface handling.

From evidence to action

Resolution paths

Correct the diagnostic data source

Update or select the ODX or PDX data that matches the ECU software and DID variant. Validate the request, session requirements, access requirements, response length, and decoding against a captured transaction.

Correct diagnostic sequencing

Make the diagnostic application enter the required Diagnostic Session and complete any documented Security Access prerequisite before reading the DID. Preserve the response evidence to confirm that the sequence changes the result.

Correct addressing or transport handling

Fix the selected ECU endpoint, transport configuration, timeout handling, or ISO-TP or DoIP processing when the trace shows that the request or complete response is not reaching the intended interpretation path.

Correct application-side DID handling

If the ECU receives the correct request but returns an inconsistent response, inspect the DCM integration and DID data provider for availability, length, encoding, and runtime behavior. A software correction may require an ECU build and regression testing.

FAQ

Questions that shape the investigation

Does a negative response prove that the DID is not implemented?
No. It may instead indicate an incorrect diagnostic session, missing Security Access, an invalid request definition, an addressing error, or an ECU policy condition. Compare the response with the active ODX or PDX data and the recorded ECU state.
How can a positive response still represent a DID read failure?
The read can still fail at the interpretation layer if the response length, encoding, byte order, scaling, or value range differs from the diagnostic definition. Preserve and inspect the raw response before changing the ECU request.
What should be checked first when the DID request times out?
First determine whether the request reaches the intended ECU and whether any response begins. Then inspect the selected transport, timing, and addressing. A timeout does not by itself distinguish an unavailable DID from a communication-path problem.
Why compare ODX and PDX data with the trace?
The trace shows what was transmitted and received, while ODX or PDX defines how that transaction should be constructed and decoded. Comparing both can expose a version, variant, request, length, or interpretation mismatch.
When is ECU software investigation justified?
It is justified after the request, diagnostic data, session, access state, addressing, and transport behavior are consistent but the ECU response remains unavailable or inconsistent. The DCM and the DID data provider then need evidence-based review.

Diagnostic support

Discuss a DID Project

Need focused support for a reproducible DID read failure? Provide the diagnostic data and observed transaction for an evidence-based engineering analysis.