Complete DTC Guide for 3 Series, 5 Series, C-Class, E-Class and More
Knowing your BMW and Mercedes-Benz error codes helps diagnose faults accurately on 3 Series, 5 Series, C-Class, E-Class and all models.
Premium brand diagnosis is where workshop knowledge earns its value. BMW and Mercedes vehicles are expensive to own, expensive to repair, and — critically — they generate expensive misdiagnoses when mechanics treat codes as parts orders rather than starting points for investigation.
The diagnostic architecture on these vehicles is deep. BMW’s ISTA (Integrated Service Technical Application) and Mercedes-Benz’s Xentry/DAS give the OEM dealer full access to every control module, guided fault tree, and adaptation procedure. Professional aftermarket tools like Autel MaxiSys Ultra and iCarsoft get you 80–90% of the way there. A generic OBD2 scanner shows you the surface layer only.
This guide covers BMW’s N-series and B-series engines (3 Series, 5 Series, X-series), the M-series petrol and diesel lineup common in UK and US markets, and Mercedes-Benz W204/W205 C-Class, W212/W213 E-Class, and GLC platforms. For India readers, the 3 Series, 5 Series, and C-Class are the most common workshop platforms.
Platform Overview
BMW Engine Families:
- N20 / N26 (320i, 420i, 520i, X1 28i): 2.0T, timing chain issue (critical — see below)
- N52 / N53 (318i/320i older, 523i): Straight-six NA — simpler and extremely reliable
- N54 / N55 (335i, 535i, X5 35i): 3.0T twin-turbo / single-turbo — high performance, specific faults
- N63 (550i, 650i, 750i, X5 50i): 4.4T twin-turbo V8 — complex, known cooling issues
- N47 / N57 (diesel 3-series, 5-series, X3, X5): 2.0–3.0 diesel, timing chain on N47
- B46 / B48 (current G-series — 320i, 520i newer): Updated 2.0T platform
Mercedes-Benz Engine Families:
- M274 / M264: 2.0T inline-4 — C-Class, E-Class, GLC petrol
- M276: 3.0 V6 naturally aspirated or biturbo — E-Class, GLE
- M157 / M177: AMG V8 biturbo
- OM651: 2.1 diesel — C-Class, E-Class diesel (UK market especially)
- OM654: 2.0 diesel — current generation C-Class and E-Class diesel
ECUs: BMW uses Bosch MSS/MSD and Siemens/Delphi depending on series. Mercedes uses Bosch ME9, ME17, and proprietary systems. Both require manufacturer-specific scanner protocols for meaningful diagnosis beyond basic P-codes.
BMW — Complete DTC Code List
N-Series Petrol Engine Codes
| Code | Description | BMW Platform Notes |
|---|---|---|
| P0011 | Camshaft Timing Over-Advanced B1 | VANOS solenoid or oil condition |
| P0012 | Camshaft Timing Over-Retarded B1 | VANOS piston |
| P0013 | VVT Oil Control Valve B2 | Exhaust VANOS — V6 and V8 |
| P0014 | Camshaft Timing Over-Advanced B2 | B2 VANOS |
| P0016 | Cam/Crank Correlation | N20: timing chain — serious (see below) |
| P0100 | MAF Circuit Malfunction | MAF contamination — N52/N55 |
| P0171 | System Too Lean Bank 1 | Cracked intake boot, VANOS, or MAF — N52 |
| P0174 | System Too Lean Bank 2 | V6/V8: bank 2 lean |
| P0234 | Turbocharger Overboost | Charge pressure control — N54/N55 |
| P0299 | Turbocharger Underboost | Boost leak — DV solenoid on N54/N55 |
| P0300 | Random Misfire | Plugs, coils — N54 known coil failure |
| P0301–P0306 | Misfire Cylinder 1–6 | Straight-six goes to P0306 |
| P0335 | CKP Sensor Circuit | CKP sensor or flywheel |
| P0340 | CMP Sensor Circuit | CMP sensor |
| P0420 | Catalyst Efficiency B1 | O2 sensor or cat |
| P0430 | Catalyst Efficiency B2 | V6/V8 bank 2 |
| P0441 | EVAP Purge Performance | Purge valve |
| P0455 | EVAP Large Leak | Fuel cap or hose |
| P0560 | System Voltage | Battery or alternator |
| P0604 | Internal Control Module RAM | ECU fault — check battery first |
BMW Manufacturer-Specific and DME Codes
| Code | Description | Notes |
|---|---|---|
| 2A82 | VANOS Solenoid Intake (N-series) | Oil sludge on OCV screen — oil change history critical |
| 2A87 | VANOS Solenoid Exhaust | Same — exhaust side |
| 2AAA | Charge Air Cooler Thermostat | Thermostat performance |
| 29DC | High Pressure Fuel Pump | HPFP performance — N54/N55 |
| 29E2 | Injector Cylinder 1 | Injector fault |
| 2C57 | Charge Air Temperature Sensor | Intercooler temp sensor |
| 2FBD | Oil Level Plausibility | Oil level sensor signal |
| 480A | IBS (Intelligent Battery Sensor) | Battery monitoring — after battery replacement |
| 002808 | Charge Air Pressure | Boost pressure control |
BMW N47 Diesel Codes (2.0 TDI)
| Code | Description | Notes |
|---|---|---|
| P0087 | Fuel Rail Pressure Low | Fuel filter, SCV |
| P0380 | Glow Plug Circuit | Glow plugs — common on older N47 |
| P0401 | EGR Flow Insufficient | EGR carbon buildup |
| P0404 | EGR Circuit Range | EGR actuator |
| P003A | VGT Position | VGT actuator or sticky vanes |
| P2002 | DPF Efficiency | DPF soot load |
| P2033 | EGT Sensor | DPF temperature sensor |
| P20EE | SCR NOx Efficiency | AdBlue system |
| P2BAD | Reductant Level Low | DEF tank |
The N20 Timing Chain — BMW’s Most Serious Known Fault
The BMW N20 engine (used in 316i, 320i, 420i, 520i, X1 28i, and more from 2011–2017) has a documented timing chain defect on early production units.
The N20 uses a timing chain positioned at the back of the engine — near the firewall — rather than the front. This makes inspection and replacement significantly more involved and expensive. The chain tensioner on early N20 units was insufficient to maintain adequate chain tension, particularly during cold starts with thick oil.
When the chain stretches or the tensioner fails, you see:
- P0016 (cam/crank correlation)
- Rattling noise on cold start (first few seconds)
- Rough idle until warm
- In severe cases, the engine begins misfiring as cam timing shifts
This is not a monitor-and-wait situation. A jumped timing chain on the N20 causes valve-to-piston contact. This is an engine-ending event.
Affected vehicles: BMW N20 engines produced approximately 2011–2015. If you’re buying a used 2012–2015 316i, 320i, or X1 28i, verify the timing chain service history and listen for cold-start rattle. BMW issued a service bulletin and covered some vehicles under warranty in certain markets.
The N47 diesel has a similar timing chain issue and similar advice applies.
VANOS — BMW’s Variable Valve Timing System
BMW’s VANOS (Variable Nockenwellen Steuerung) is the equivalent of Toyota’s VVT-i and Honda’s i-VTEC. It’s oil-pressure actuated, uses solenoids (Oil Control Valves) to direct pressure to cam phasers, and is acutely sensitive to oil condition.
Codes 2A82 (intake VANOS solenoid) and 2A87 (exhaust VANOS solenoid) are the most common VANOS-related fault codes. Before replacing VANOS solenoids:
- Check oil level and condition — VANOS is the first system to degrade with dirty oil
- Clean the VANOS solenoid screens — tiny mesh filters that catch sludge. They’re inexpensive to replace
- Test solenoid resistance — inlet solenoids typically 6–10 ohms
- Check oil pressure at idle and at 3,000 RPM with a gauge — low pressure means pump wear
BMW specifies oil change intervals of 15,000 km for most markets. In Indian conditions (heat, stop-and-go, potential cold season in northern cities), 10,000 km intervals are more appropriate for N-series engines. The maintenance cost of correct service intervals is a fraction of VANOS repair costs.
N54 / N55 Turbocharged Engines — Common Faults
The N54 (twin turbo) and N55 (single twin-scroll turbo) 3.0T engines in the 335i, 535i, and X5 35i are some of the most capable but also most fault-prone BMW engines in terms of maintenance cost.
Boost leaks and P0299: The N54 has a notoriously complex boost path with multiple turbo-to-intercooler connections, charge pipes, and Blow-Off Valve (BOV) connections. Age and heat causes the plastic charge pipes to crack. P0299 (underboost) is almost always a boost leak — scan tool live data showing turbo wastegate position at maximum and boost still not reaching target confirms this. Inspect all charge pipes and connections.
Injector failure on N54: The N54 uses high-pressure piezoelectric injectors that fail more frequently than most. P0301–P0306 (cylinder misfires) on an N54 with good plugs and coils is often an injector. BMW dealerships perform injector fault analysis using ISTA to identify the specific failing cylinder and confirm via contribution tests.
Walnut blast on direct injection: The N54, N55, and N20 all use direct injection without port injection. Intake valve carbon buildup is inevitable. Walnut blast cleaning every 80,000–100,000 km is preventive maintenance, not optional.
Mercedes-Benz — Complete DTC Code List
M274 / M264 Petrol Engine Codes (C-Class, E-Class, GLC)
| Code | Description | Mercedes Notes |
|---|---|---|
| P0011 | Camshaft Timing Over-Advanced | Cam phaser or VVT oil pressure |
| P0016 | Cam/Crank Correlation | Timing chain — M274 known issue on high mileage |
| P0087 | Fuel Rail Pressure Low | HPFP performance — M274 2.0T |
| P0088 | Rail Pressure High | Rail pressure regulation |
| P0101 | MAF Range/Performance | MAF sensor |
| P0128 | Coolant Below Thermostat Temp | Thermostat stuck open — W204/W212 |
| P0171 | System Too Lean B1 | Boost leak, MAF, or secondary air |
| P0234 | Turbocharger Overboost | Boost control |
| P0299 | Turbocharger Underboost | Boost leak |
| P0300 | Random Misfire | Plugs, coils |
| P0340 | CMP Sensor Circuit | CMP sensor — M272 V6 |
| P0420 | Catalyst Efficiency | O2 sensor or cat |
| P0441 | EVAP Purge | N80 valve |
| P0449 | EVAP Vent Solenoid | Canister vent — W204/W212 common |
| P0541 | Intake Air Temp Sensor | IAT circuit |
| P0562 | System Voltage Low | Battery or alternator |
| P0700 | Transmission Control | 7G-Tronic or 9G-Tronic gearbox fault |
Mercedes Manufacturer-Specific Codes
| Code | Description | Notes |
|---|---|---|
| P1403 | EGR System | EGR performance — diesel |
| P1475 | Fan Control Circuit | Cooling fan |
| P1588 | Oxygen Sensor Heating | Heater circuit |
| B1000 | Control Unit (general) | Module communication |
| C1100 | ABS Wheel Speed Signal | Wheel speed sensor |
OM651 / OM654 Diesel Codes (UK and India C-Class, E-Class diesel)
| Code | Description | Notes |
|---|---|---|
| P0087 | Fuel Rail Pressure Low | Fuel filter — 30,000 km change |
| P0380 | Glow Plug Circuit | Glow plugs |
| P0401 | EGR Flow Insufficient | EGR carbon — OM651 is prone to this |
| P0404 | EGR Circuit Range | EGR actuator |
| P003A | VGT Position | Variable geometry turbo |
| P2002 | DPF Efficiency | DPF soot load (Euro 5/6) |
| P20EE | SCR NOx Efficiency | AdBlue — Euro 6 |
| P2BAD | Reductant Level Low | DEF tank |
| P11DC | NOx Sensor Upstream | Pre-SCR sensor |
Mercedes OM651 EGR — The UK Diesel Workshop’s Daily Fault
The 2.1 OM651 diesel engine is fitted to the W204 C-Class, W212 E-Class, Vito, and Sprinter — all extremely common in UK workshop traffic.
P0401 (EGR flow insufficient) on the OM651 in UK city driving is essentially a scheduled maintenance item. The EGR cooler and valve accumulate carbon deposits rapidly in stop-start traffic. Symptoms: P0401 code, rough cold idle, reduced power, visible black smoke on acceleration.
The OM651 EGR system has two EGR coolers (high and low pressure) — both need to be assessed. EGR cleaning is effective at moderate buildup levels. At high buildup, the cooler itself may be blocked — at which point replacement is needed.
Mercedes issued several technical service bulletins for OM651 EGR performance. UK owners on high-mileage W204 and W212 should treat EGR service as part of the scheduled maintenance plan, not a breakdown repair.
Battery Replacement — The Hidden Complication on Both Brands
This catches people off guard: replacing the battery on a modern BMW or Mercedes is not a plug-and-swap operation.
BMW: New batteries must be registered to the ECU using BMW-compatible software (ISTA or compatible aftermarket tool like the iCarsoft BMM II). Without registration, the IBS continues charging based on the old battery’s characteristics — overcharging a new battery and reducing its lifespan. Code 480A (IBS fault) commonly appears after unregistered battery replacement.
Mercedes: Battery replacement on current C-Class and E-Class requires adaptation of the IBS and throttle body relearn. Some features (power windows, sunroof) may need to be re-initialised after power loss.
If your workshop doesn’t mention battery registration when changing your BMW or Mercedes battery — ask. It’s a five-minute procedure that protects a significant investment.
Story From the Workshop: The 520d That Was a Thermostat
A 2014 BMW 520d F10 came in from a Hyderabad IT professional — bought recently from a used car dealer. Engine warning light on. Code: P0128 (coolant temperature below thermostat regulating temperature). Dealer had told him the ECU needed replacement. Quote: ₹85,000.
I ran the engine to operating temperature and watched live coolant temperature data on my iCarsoft BMM II. After 15 minutes of driving, coolant was stabilising at 68°C. BMW’s N47 diesel thermostat is designed to hold temperature at 87°C. The thermostat was stuck partially open.
Thermostat replacement on the N47 F10: ₹3,400 for a genuine BMW thermostat, 2.5 hours labour.
Total: ₹7,200 all in. Car returned to full operating temperature within two days. P0128 has not returned.
An ECU does not cause P0128. A thermostat causes P0128. But if you don’t know that, and you trust the wrong source, you pay ₹85,000 for nothing.
FAQ
My BMW 320i N20 has a cold start rattle — should I worry?
Yes. Cold start rattle on the N20 is the timing chain tensioner failing to maintain tension on cold, thick oil. This is the early warning sign before P0016 appears. Get the timing chain inspected immediately. Driving an N20 with a cold start rattle hoping it will resolve itself is a risk — a jumped chain causes catastrophic engine damage.
What scanner do I need for BMW and Mercedes diagnosis at home?
For basic P-codes, any OBD2 scanner works. For BMW-specific codes and VANOS actuator tests, the iCarsoft BMM II is purpose-built for BMW and gives solid manufacturer depth under ₹8,000. For Mercedes, the iCarsoft MB II is the equivalent. If you want one tool that covers both brands plus VAG and others, the Autel MaxiCOM MK808 is the best all-rounder at workshop level. Full OEM-equivalent depth (ISTA for BMW, Xentry for Mercedes) requires professional subscription tools.
My Mercedes C-Class W204 shows P0449 EVAP vent solenoid — is this serious?
P0449 on the W204 is common and not immediately dangerous to drive with. The EVAP vent solenoid controls canister venting — a failure causes fuel vapour management issues and emissions test failure. It does not affect drivability noticeably. The solenoid itself is an inexpensive part; the labour to access it varies by model.
BMW shows P0171 and P0174 (both banks lean) — what’s the cause on a straight-six?
Both-bank lean on a straight-six N52 or N55 points to a common intake issue — cracked intake boot (the rubber coupling between the airbox and throttle body), or a large vacuum leak affecting both banks equally. The N52 has a notorious reputation for cracking intake boots on the lower hose section. Inspect all rubber intake components for cracks, especially at clamp points.
Is it worth buying a high-mileage BMW or Mercedes for workshops to service?
High-mileage premium vehicles can be good value if maintained correctly — BMW’s N52 and Mercedes’ older M272 V6 are genuinely durable with correct service histories. The risk with high-mileage examples is deferred maintenance that’s been hidden — VANOS issues, timing chain wear, EGR carbon, DPF condition. A pre-purchase inspection with a professional scanner and live data analysis is money well spent on any premium vehicle over 100,000 km.
The Verdict
BMW and Mercedes fault codes are where workshop knowledge commands real value. The codes are a starting point — the real diagnosis comes from live data, actuation tests, and knowing which platforms have which known failure modes.
The N20 timing chain is the code that can’t wait. VANOS codes need oil system attention before solenoid replacement. P0171/P0174 on a BMW is almost always an air leak. OM651 EGR codes are a maintenance issue, not a breakdown failure.
Invest in the right tool for these platforms. A generic scanner will show you the code. A professional scanner with BMW or Mercedes manufacturer protocol will show you why.
Babuu has been working in automotive electronics since 2002 and opened HT ECM Solutions in Bachupally, Hyderabad in 2017 — a professional ECU repair and vehicle diagnostics workshop specialising in premium brand diagnosis and programming.
Related reads:
- Volkswagen and Skoda Error Codes — Complete Guide
- Car Error Codes by Brand — All Makes Compared
- ECU/PCM Programming Tools — Professional Guide
- DPF Diagnostic Tools — What Fleet Owners Need to Know
- How to Read Live Data on Your OBD2 Scanner
The Autel MaxiSys MS906 is the tool we recommend for reading and clearing these BMW & Mercedes-Benz fault codes. It supports all standard OBD2 protocols used by BMW & Mercedes-Benz vehicles and provides full system diagnostics.