Was this article helpful?
Mode 09 — the OBD service that knows things the odometer does not
The ninth OBD-II service returns the VIN stored inside the control module, the calibration version, and its checksum. Three fields that catch a swapped module, a reflashed ECU, and a mismatch with the paperwork.
Most people use two OBD-II services: Mode 03 to read codes and Mode 01 to watch live data. Mode 09 gets ignored, even though it answers the question “is this actually the car it is being sold as”.
Mode 09 is called Vehicle Information, and it does not describe condition. It describes identity: which vehicle this is, which module controls it, and which version of software is inside that module.
What it returns
| Field | What it is | Why it matters |
|---|---|---|
| VIN | Identification number stored in the module | Compare against the body and the paperwork |
| CALID | Calibration identifier — the firmware version | See whether it is factory |
| CVN | Calibration checksum | See whether the contents changed |
| ECU Name | Name of the control module | Know which module you are talking to |
| IPT | In-use performance counters | Judge how often the tests actually run |
Not every car supports all five. VIN and CALID are almost always present on vehicles built after 2008, CVN less often, and the performance counters least often of all.
The module’s VIN against the body’s VIN
The simplest and most useful application. The VIN the module returns lives in its own memory — and travels with the module when it is transplanted, unless the replacement was properly adapted to the car.
So a mismatch means exactly one thing: this module came out of a different vehicle.
That is not a catastrophe by itself. Modules get replaced after failures, after impacts, after thefts. But it is always a fact the seller did not mention, and a reason to establish the circumstances — especially if other modules disagree too, at which point the picture adds up to a major repair. That exact scenario is covered in the article on rebuilt salvage cars.
What the VIN encodes and how to read one by hand is in its own guide.
CALID: the firmware version
CALID is a string the manufacturer assigns to a specific version of the control software. It changes when the factory issues an update, and it changes when the calibration is replaced with a non-original one.
Two practical uses:
- Checking for updates. Manufacturers issue service campaigns that fix known defects purely in software. Knowing the CALID tells you whether this car received them.
- Checking for intervention. A CALID that does not exist in the list of factory versions for the model speaks for itself.
CVN: the checksum
CVN is a number the module computes from its own contents using a defined algorithm. The meaning is the same as any file checksum: one byte changes, the result changes.
The field exists precisely so that an inspector can confirm the emissions control software has not been substituted. That makes the CALID + CVN pair the standard way to establish that a reflash happened.
An honest limitation: some tuning solutions have learned to return the factory values on request. So a matching CVN does not prove the calibration is stock, while a mismatching one does prove it is not. An asymmetry worth remembering. The indirect signs that close this gap are collected in the article on detecting an ECU remap.
ECU Name: who is answering
The simplest field — a text name for the module. Useful when several modules on the bus respond to requests and you need to know which one you are talking to: engine, transmission, or hybrid control.
In-use performance counters
The least known part of Mode 09 is In-use Performance Tracking. These are counter pairs for each monitored system: how many times the conditions for a test were met, and how many times the test actually ran.
The practical value: they show whether the systems are genuinely being tested. A monitor sitting at “complete” with a zero completion counter is a reason to ask how that result was obtained.
This complements the readiness monitors rather than replacing them; the monitors themselves are covered separately.
Why the field comes back empty
An empty Mode 09 response is not always a sign of trouble. Causes, in descending order of frequency:
- The car predates roughly 2008 — the service was not mandatory yet.
- The manufacturer supports only some fields. Very common: VIN present, CVN absent.
- A cheap adapter cannot handle multi-frame responses. The VIN does not fit in a single frame and arrives in several; budget counterfeits trip over this. The signs of such an adapter are in their own article.
- The request went to the wrong module.
If the VIN will not read on a 2015 car, the adapter is the first suspect, not the vehicle.
Where this fits
Mode 09 takes under a minute and delivers something no other service can: confirmation that the modules belong to this car and that the software inside them is what the factory installed.
In the general used-car inspection order it sits after the module roll call and before the test drive — see the 20-minute protocol.
Download the app — Mode 09 is read with an ELM327 adapter over Bluetooth SPP on Android.
Comments …
Loading…