The OBD2 scanner is the second most important tool after the paint thickness gauge. It reads error codes from the car’s computer, shows the real diagnostic state, something you can’t see with the eye. And just like with the gauge: the market is full of traps. Sellers push €400-800 devices “for professionals”, while 95% of cases you’ll solve with a €15 adapter.
Here’s the practical guide: what to buy, which app, what you actually detect, what you don’t.
What is OBD2 and what it reads
OBD2 (On-Board Diagnostics 2) is a diagnostic standard mandatory in cars sold in the EU since 2001 (petrol) and 2004 (diesel). Every car from those years has an OBD2 port, usually under the steering column on the left, sometimes by the seat or in the glovebox.
What you’ll learn through OBD2:
1. Active error codes (DTC, Diagnostic Trouble Codes)
A code like P0420 (catalyst efficiency below threshold) or P0301 (cylinder 1 misfire). These codes trigger the engine light (“check engine”). A seller who “resets codes in the morning” leaves a trace, see below.
2. Error history (Pending DTC + Permanent DTC)
- Pending = error detected once, not yet confirmed. Appears on first occurrence, disappears if the error doesn’t repeat.
- Permanent = error detected multiple times. You cannot clear it with a standard OBD2, only the ECU removes it after self-verifying the issue is gone.
Permanent DTC = the strongest signal of fraud. The seller cleared the light, but the history stays in the computer.
3. Readiness Monitors (emissions status)
The car’s computer checks 8-11 subsystems (catalyst, lambda sensors, evaporative, EGR, etc.). Each has a status:
- Ready = test performed, OK.
- Not Ready = test hasn’t been run since the last reset.
Fraud signal: if the seller claims “car runs perfectly, just had a fresh service” but the emissions status shows all Not Ready = codes were cleared in the last few days, the car hasn’t had time to run tests again.
4. Live Data (real-time data)
The computer transmits in real time:
- Engine RPM
- Engine temperature and intake air temperature
- Manifold pressure (MAP)
- Mass airflow (MAF)
- Fuel trims (Long Term + Short Term Fuel Trim)
- Lambda sensor signals (pre and post catalyst)
- EGR, turbo, throttle position state
That’s how you catch problems error codes don’t show yet, e.g. a worn lambda sensor not yet throwing a DTC, but the signal is sluggish.
5. Freeze Frame
Parameters frozen at the moment the error occurred, engine temperature, RPM, speed, AFR. Helps diagnose whether the error happened on a hot or cold engine, in motion or idling.
What to buy by budget
Budget under €20, sufficient for 95% of cases
ELM327 V2.1 Bluetooth, €8-20.
This is the industry standard. A matchbox-sized adapter, plugs into the OBD2 port, connects to your phone via Bluetooth. Works with every car from 2001 onwards.
What to buy specifically:
- Bluetooth 4.0/5.0 version (BLE) if iPhone, because standard BT on iPhone doesn’t connect to OBD2 (Apple requires BLE or WiFi).
- Bluetooth 2.0/3.0 version (Classic) for Android.
- Vgate iCar Pro or OBDLink LX, €20-40, better stability, genuine ELM327 chip.
Avoid:
- “ELM327 V1.5” adapter for €5, fake chip version, in 50% of cases won’t read advanced data (live data, freeze frame).
- Multi-protocol adapters with USB cable (popular 2015-2018), most no longer work with current smartphones.
Budget €30-80, for side income / hobby
Vgate iCar Pro Bluetooth 4.0, €35-50.
More stable BLE connection, auto-sleep (doesn’t drain the battery if left in the car). Genuine ELM327 V2.2 chip.
OBDLink MX+, €80-110, if you want “premium”. WiFi + BT, compatible with all smartphones, works with OBDwiz for PC. Longer range, no pairing issues.
Budget €250+, Launch X431, Autel
Launch X431 PRO MINI, €350-650. Autel MaxiCOM MK808, €400-700.
Workshop-class kit with its own tablet, software for hundreds of brands, ECU programming, adaptations, service resets.
Is it worth it? For 99% of inspections no. Same data as ELM327 + Car Scanner for consumer cars. Makes sense only if:
- You specialise in American cars (Tesla, Ford F-150), Launch handles proprietary modules better.
- You inspect trucks / vans.
- You’re a workshop (BMW service reset, DSG adaptations, module coding).
Which app to use
The adapter is 20% of the value. The app is 80%. The same ELM327 with different apps reads completely different data.
Top picks
Car Scanner ELM OBD2 (iOS + Android), free, freemium.
- Most popular in Europe (200k+ downloads).
- Works with every ELM327.
- Brand-specific databases (BMW, Mercedes, VW, Audi, Skoda, Renault, Citroen, Peugeot, Volvo, Honda, Toyota, Nissan), you buy “extensions” for €2-5, read extended codes beyond OBD2 standard.
- Live data with nice graphs.
- Freeze frame, readiness monitors, IO control (with extension cars).
Free version suffices for basic inspection, error codes, emissions status, freeze frame.
Torque Pro (Android), €5 one-off.
- Android classic, well-proven.
- Best live data graphs.
- Community plugins (BMW, Honda, Volvo).
- No iOS (key for iPhone users).
OBDLink (iOS + Android), free with OBDLink adapter.
- Best for beginners (intuitive UI).
- Requires OBDLink adapter (~€80).
- Professional PDF reports from diagnostics.
Avoid
- “Carista”, good for coding (VAG, BMW, Toyota), weak for diagnostics (code clearing). Paid €40/year.
- Heavily paid apps, if an app costs €25+, check Car Scanner first. In 95% of cases it does the same for free.
What you actually check in 5 minutes
OBD2 inspection workflow:
Step 1: plug in pre-visit
The seller opens the car. The first thing you do before walking around, plug in the adapter to OBD2 and launch the app.
Step 2: check error codes
In Car Scanner / Torque open “Trouble Codes” (DTC). Three lists:
- Confirmed DTC, active codes (cause engine light).
- Pending DTC, under verification.
- Permanent DTC, unclearable, history.
Strongest signal: no Confirmed DTC, no Pending DTC, but Permanent DTC present = seller cleared the light before the visit.
Step 3: readiness monitors
In “Emission Readiness” or “Inspection Mode”. Status of 8-11 tests.
- All Ready = car has driven min. 50-100 km since last reset.
- 5+ Not Ready = codes cleared in the last few days.
- All Not Ready = fresh reset.
After clearing codes the ECU needs 100-200 km of normal driving to re-run all tests. If “car drives daily” yet Not Ready, the seller is lying.
Step 4: live data during cold start
Start the car cold. In the app open Live Data, add parameters:
- Coolant Temp, starts at ~10-15°C, rises to 85-95°C in 5-10 minutes.
- Long Term Fuel Trim, should be -10% to +10%. Above +15% = mixture too lean (MAF problems, intake leak).
- Short Term Fuel Trim, fluctuates with every throttle push, but returns near 0%.
- O2 Sensor B1S1 voltage, should swing 0.1V to 0.9V at 1-2 Hz.
Slow O2 sensor + Long Term Fuel Trim >15% = lambda sensor worn, €60-110 repair.
Step 5: freeze frame and history
Check “Freeze Frame Data”, parameters at the moment of the last error. If the seller cleared codes, freeze frame stays. Shows under what conditions the error happened.
What OBD2 does NOT detect
Important limitations:
1. Engine mechanics
OBD2 reads electronics and sensors. Mechanical problems:
- Blown gaskets, worn timing chain, worn bearings.
- Dual-mass flywheel, wheel bearings.
- Transmission, suspension.
All invisible to OBD2. You check by ear and eye, startup, test drive.
2. Crash history
OBD2 doesn’t tell you the car was in a crash. Sometimes you see airbag codes (if the seller forgot to clear), but that’s an exception.
3. Rolled-back odometer
OBD2 reads the current mileage from ECU. If the workshop rolled back both the cluster and ECU, OBD2 shows the false mileage.
Exception: in newer cars (VAG from 2014, BMW from 2015) mileage is stored in multiple modules (ECU, ABS, climate, instrument cluster). A pro scanner (Launch X431) can read each separately, differences reveal rollback. ELM327 can’t.
4. Corrosion, repaint, tyres, brakes
Everything visual. OBD2 = pure electronics.
Typical error codes, what they mean
The most common codes you’ll see at inspections:
| Code | Meaning | Repair cost |
|---|---|---|
| P0420 | Catalyst efficiency below threshold | €180-700 (catalyst) |
| P0171/P0174 | Mixture too lean (bank 1/bank 2) | €45-350 (MAF, intake leak) |
| P0300-P0308 | Misfire cylinder X | €110-700 (plugs, coils, injectors) |
| P0700 | Auto transmission issue | €350-3500 (mechatronic, clutches) |
| P0341 | Camshaft sensor | €45-110 (sensor) |
| P0507 | Idle speed unstable | €70-350 (throttle, EGR) |
| P0455 | Evap system leak | €25-110 (gasket, cap) |
| U0xxx | CAN module communication lost | €110-700 (module, CAN wire) |
| B0001-B0028 | Airbag system | €230-1200, RED FLAG |
B codes (Body) for airbags = strongest signal of crash history. If you see B0001 or similar, the car had airbag deployment the seller didn’t disclose.
FAQ
Will ELM327 work with every car?
With 95% of cars from 2001+. Exceptions:
- Tesla, uses proprietary CAN, not standard OBD2. Requires Tesla Service Mode or Scan My Tesla with specific adapters.
- Some EV/PHEV, Mitsubishi Outlander PHEV, Toyota Prius, have OBD2 limitations.
- Pre-2001 cars (petrol), pre-2004 (diesel), use OBD1, ELM327 won’t work.
Can I clear error codes with ELM327?
Yes. But careful, clearing codes also clears readiness monitors. At MOT/TÜV your car with “Not Ready” status won’t pass emissions. Don’t clear codes on your own car within 2 weeks of inspection.
Can a seller clear codes without leaving a trace?
With standard tools, no. Permanent DTC stays until the ECU itself verifies the issue is gone (50-200 km of driving without recurrence). Professional tools (Launch X431 with special modes) can do a bit more, but that’s advanced.
Will OBD2 detect a snapped timing belt?
Indirectly. Snapped belt → engine doesn’t run → no OBD2 communication → adapter won’t connect. If OBD2 connects but engine won’t start = different problem (not the belt).
How long does a full OBD2 diagnostic take?
5-8 minutes. Plug in, read DTC, check readiness, check freeze frame, watch live data during startup. In a planned inspection it’s the step between visual check and test drive.
Summary
Buy ELM327 Bluetooth (BLE for iPhone) for €10-20. Add Car Scanner (free) or Torque Pro (€5, Android). In 5 minutes at inspection you catch:
- Active and historic error codes.
- Emissions status (whether the seller cleared the light).
- Live data during cold start (lambda sensors, fuel trim).
- Freeze frame from the last error.
Don’t buy Launch X431 or Autel at the start, those are workshop investments, not inspector tools.
Related articles:
- Paint thickness gauge guide, second essential tool.
- Inspector tool kit, full shopping list.
- How to inspect a used car, step by step.
Download MotoPPI on the App Store, check the car before driving out for the inspection. Save time and a mechanic visit.