LANE PILOT

Field note

Toyota odometer over OBD: DID 0103 and where it answers

A 2018 Camry answered 22 0103 with 02 00 E2 36 and the dash read 57,910 miles. What each byte means, and which older Toyotas refuse the request.

By Reed, a technician with 17 years in the bay ·

2018 Toyota Camry · 2017 Toyota Prius · 2017 Toyota Camry Hybrid · 2021 Toyota Prius · 2015 Toyota Corolla · 2015 Toyota Prius · 2013 Toyota Highlander · 2012 Lexus ES 350

Odometer mileage is not part of the classic OBD-II data set, so a scan tool that shows it on a Toyota is asking a specific module a manufacturer-specific question. Which question works depends on the car's generation. This note covers what eight Toyota and Lexus vehicles actually answered in a working bay, including the ones that said no.

The request that matched the dash

On a 2018 Toyota Camry (TNGA platform, US market), the scan sent a UDS ReadDataByIdentifier request for DID 0103 to the modules at addresses 700 and 701. Both answered the same way. The reply from 708:

TX  700  22 01 03
RX  708  07 62 01 03 02 00 E2 36
BytesMeaning
07ISO-TP single frame, 7 bytes follow
62Positive response to service 22
01 03The DID, echoed back
02Format byte, not part of the number
00 E2 36The counter

0x00E236 is 57,910. The dash read 57,910 miles. That is a match to the mile, so on this car the counter is the three bytes after the format byte, in miles.

Two wrong ways to read the same bytes

Both of these were tried before the dash settled it:

That is what happened on the Camry: the 33.6 million km read was thrown away without a log line, and the record showed no mileage while both modules were answering. The rule that came out of it: when a decode fails a plausibility check, log the raw bytes instead of discarding them. A rejected value with its payload attached is evidence. A blank field is not.

Miles or kilometers?

The evidence car is a US-market Camry and the counter matched miles. We have not captured a kilometer-market TNGA car against its dash, so we cannot say whether the unit follows the market. Until one is checked, treat the unit as unconfirmed outside the US.

A 2017 Prius (XW50, the first TNGA car) also answered DID 0103, at address 700, and Lane Pilot read 28,914 miles from it. Nobody checked that dash, so it counts as a reading, not a verification.

Other Toyotas: different request, different answer

The scan asks for the standard odometer PID A6 first and only tries a manufacturer request when that fails. Older, pre-TNGA generations answered different requests, or none, and on the 2015 Corolla the TNGA addresses did not answer at all. What each car answered:

VehicleRequestSent toAnswer
2017 Camry Hybrid21 28Engine computer (7E0)Counter read as 182,046 km (dash not recorded)
2021 PriusMode 01 PID A6Broadcast167,983.3 km from the standard odometer PID, so no manufacturer request was sent (dash not recorded)
2013 Highlander21 28Engine computer (7E0)Negative response 12: not supported
2013 Highlander22 01 03Combination meter (7C0)Negative response 11: service not supported
2015 Corolla21 28Engine computer (7E0)Negative response 12
2015 Corolla22 01 03700, 701, 7D2, 747No data from any of them
2015 Corolla21 A7Combination meter (7C0)61 A7 C0: one data byte
2015 Prius21 28Engine computer (7E0)Negative response 12
2015 Prius21 A7Combination meter (7C0)61 A7 C0: one data byte
2012 Lexus ES 35021 28Engine computer (7E0)Negative response 12

Two things stand out:

What to take from this

  1. On a 2018 Camry, 22 01 03 to 700 returns a format byte 02 and a three-byte mile counter, verified against the dash.
  2. Do not fold the format byte into the number. Both wrong framings above look reasonable until you compare them to the cluster.
  3. A negative response is an answer. 11 means the module does not offer the service at all; 12 means it does not support that particular request. Neither one means "try another guess".
  4. When a tool cannot read the mileage, it should say so. Lane Pilot leaves the field empty on these cars rather than filling it with a number the bytes do not support.

If you have a kilometer-market TNGA car on a lift and can photograph its dash next to a 22 01 03 reply, that is the capture that would settle the unit question.

More field notes