Complete DTC Guide for Nexon, Harrier, Scorpio, Bolero and More
Knowing your Tata and Mahindra error codes helps you diagnose faults faster on Nexon, Harrier, Scorpio, XUV and all other models.
Tata and Mahindra are India’s home brands, and in my workshop they represent some of the most varied diagnostic work I do. From the 2002-era Mahindra Bolero MDI engine to the 2023 Tata Punch with its BS6 Revotron petrol — the spread of platforms, ECUs, and emission systems is enormous.
What makes these brands interesting from a diagnostic standpoint is the transition happening right now. Pre-BS6 Tata and Mahindra vehicles used relatively simple ECUs and emission systems. Post-April 2020, both brands jumped to BS6 with DPF, SCR, and complex aftertreatment systems that many mechanics — and most generic OBD2 scanners — aren’t equipped to handle.
This guide covers both eras. Legacy diesel codes that you’ll still see on high-mileage fleet vehicles, and the new BS6-era fault codes that are becoming increasingly common.
Platform Overview
Tata Motors:
- Revotron 1.2T petrol (Tiago, Tigor, Punch, Nexon): Bosch ME17 ECU
- Revotorq 1.05 / 1.5 diesel (pre-BS6 Nexon, Tiago, Tigor): Delphi DCM ECU
- Kryotec 2.0 diesel (Harrier, Safari BS6): Bosch EDC17 with DPF and SCR
- mHawk / mHawk150 diesel (older Nexon, Hexa): Earlier Bosch EDC
- Commercial vehicles (Ace, Super Ace, Ultra, Prima, LPT series): Cummins ISB/ISF or Tata’s own turbo diesel with various ECU suppliers
Mahindra:
- mHawk 1.5 / 2.2 diesel (Scorpio N, Bolero Neo, XUV300, XUV700): Bosch EDC17
- mStallion 1.5T / 2.0T petrol (XUV700, Thar petrol): Bosch ME17
- 2.5 MDI diesel (older Bolero, Scorpio pre-2014): Older Bosch EDC with simpler management
- 3.0 mCR / Di-CRDe (older Scorpio, Xylo, TUV300): Transition-era CRDI
- Pik Up / fleet vehicles: Often Mahindra Furio/Blazo with BS6 Cummins or mPower engines
Tata Motors — Complete DTC Code List
Petrol Engine Codes (Revotron / Zest / Bolt)
| Code | Description | Notes for Tata Petrol |
|---|---|---|
| P0030 | O2 Sensor Heater Circuit B1S1 | Upstream lambda — Revotron common after 60,000 km |
| P0036 | O2 Sensor Heater Circuit B1S2 | Downstream lambda |
| P0100 | MAF Circuit Malfunction | MAF sensor or intake leak |
| P0107 | MAP Sensor Low | Intake hose or MAP sensor |
| P0120 | TPS Circuit Malfunction | Throttle body — Revotron 1.2T |
| P0171 | System Too Lean | Vacuum leak or MAF — check boost hose on turbo |
| P0172 | System Too Rich | Injector leak or O2 sensor |
| P0234 | Turbocharger Overboost | Boost leak — wastegate or boost control solenoid |
| P0299 | Turbocharger Underboost | Boost leak — check intercooler hose on Nexon 1.2T |
| P0300 | Random Misfire | Plugs, coils — 30,000 km service |
| P0335 | CKP Sensor Circuit | CKP sensor or ring |
| P0340 | CMP Sensor Circuit | CMP sensor |
| P0420 | Catalyst Efficiency Low | Cat or downstream O2 |
| P0455 | EVAP Large Leak | Fuel cap, purge valve |
Diesel Engine Codes (Revotorq / Kryotec — Pre and Post BS6)
| Code | Description | Tata Diesel Notes |
|---|---|---|
| P0087 | Fuel Rail Pressure Low | Fuel filter — 15,000 km change on diesel |
| P0088 | Fuel Rail Pressure High | Rail pressure solenoid |
| P0089 | Fuel Pressure Regulator | Pressure regulator valve |
| P0191 | Rail Pressure Sensor Range | Sensor or actual pressure issue |
| P0193 | Rail Pressure Sensor High | Sensor wiring or short |
| P0380 | Glow Plug Circuit | Glow plugs — check individual resistance |
| P0400 | EGR Flow Malfunction | EGR valve — carbon buildup |
| P0401 | EGR Flow Insufficient | EGR passage blocked — very common post-80,000 km |
| P0403 | EGR Circuit | EGR solenoid or actuator |
| P0404 | EGR Circuit Range/Performance | EGR actuator position sensor |
| P0487 | EGR Throttle Position Sensor | EGR throttle — Kryotec 2.0 |
| P0562 | System Voltage Low | Battery or alternator |
| P0600 | Serial Communication Link | ECU communication fault |
| P2002 | DPF Efficiency Below Threshold | DPF clogged or sensor fault (BS6) |
| P2003 | DPF Efficiency Too High | DPF sensor fault |
| P2033 | Exhaust Gas Temperature Sensor | EGT sensor circuit — DPF system |
| P2080 | EGT Sensor 1 Range/Performance | Post-DPF temperature sensor |
| P20EE | SCR NOx Catalyst Efficiency | SCR system underperformance (BS6) |
| P2BAD | Reductant Level Low | AdBlue/DEF tank low |
| P2BAF | Reductant Quality Sensor | DEF quality or sensor fault |
| P203B | Reductant Level Sensor | DEF level sensor |
| P11DC | NOx Sensor Upstream | NOx sensor before SCR |
| P11DD | NOx Sensor Downstream | NOx sensor after SCR |
Commercial Vehicle Codes (Ace / Ultra / Prima)
| Code | Description | Notes |
|---|---|---|
| P0087 | Fuel Rail Pressure Low | Filter and lift pump — fleet vehicles need strict service |
| P0192 | Rail Pressure Sensor Low | Sensor or wiring |
| P0251 | Injection Pump Metering | Injection pump fuel metering unit |
| P0380 | Glow Plug Circuit | Critical for cold-start reliability in north India |
| P0540 | Intake Air Heater Circuit | Air heater relay — cold start aid |
| P0602 | ECU Programming Error | ECU not programmed — seen after replacement |
| P1633 | Engine Torque Limit Active | Limp mode protection active |
| U0100 | Lost Communication with ECM | CAN bus — harness damage common in commercial fleet |
Mahindra — Complete DTC Code List
Mahindra Diesel Codes (Scorpio mHawk, Bolero MDI & Di-CRDe)
| Code | Description | Mahindra Notes |
|---|---|---|
| P0087 | Fuel Rail Pressure Low | Clogged filter or failing lift pump |
| P0088 | Fuel Rail Pressure High | Pressure regulator |
| P0089 | Fuel Pressure Regulator | Pressure regulator on high-pressure pump |
| P0191 | Rail Pressure Sensor Range | Common on mHawk — sensor first |
| P0192 | Rail Pressure Sensor Low | Wiring or sensor |
| P0251 | Injection Pump Fuel Metering | Older MDI platform metering unit |
| P0380 | Glow Plug Circuit | Very common on older Bolero and Scorpio |
| P0381 | Glow Plug Indicator Lamp | Lamp circuit fault |
| P0401 | EGR Flow Insufficient | EGR cleaning needed — especially Bolero fleet |
| P0404 | EGR Circuit Range | EGR actuator or position sensor |
| P0406 | EGR Position Sensor High | EGR sensor |
| P0563 | System Voltage High | Overcharging — check voltage regulator |
| P0602 | ECU Programming Error | After ECU swap |
| P0605 | Internal Control Module ROM | ECU internal fault |
| P0700 | Transmission Control | Automatic gearbox (Scorpio N auto, XUV series) |
| P0715 | Input Shaft Speed Sensor | ATF condition, sensor |
| P2002 | DPF Efficiency (BS6) | DPF soot load high or sensor |
| P20EE | SCR NOx Catalyst Efficiency | SCR underperformance (BS6 mHawk) |
| P2BAD | Reductant Level Low | DEF/AdBlue low |
Petrol Codes (mStallion — XUV700, Thar)
| Code | Description | Notes |
|---|---|---|
| P0016 | Cam/Crank Correlation | Timing chain on turbo petrol |
| P0171 | System Lean | MAF or boost leak |
| P0234 | Turbocharger Overboost | Wastegate actuator |
| P0299 | Turbocharger Underboost | Boost leak — intercooler connections |
| P0300–P0304 | Misfire | Plugs, coils |
| P0340 | CMP Sensor | CMP sensor |
| P1529 | Immobiliser Communication | After battery disconnection |
The BS6 Aftertreatment System — What You Need to Know
This is where most small workshops in India are getting caught out right now.
BS6 Tata and Mahindra diesel vehicles (2020 onwards) have a full emissions aftertreatment stack:
- DPF (Diesel Particulate Filter) — traps soot
- DOC (Diesel Oxidation Catalyst) — oxidises HC and CO
- SCR (Selective Catalytic Reduction) — uses AdBlue/DEF to reduce NOx
- Multiple EGT sensors — monitor temperatures across the system
- NOx sensors upstream and downstream of SCR
These systems generate codes that most basic OBD2 scanners display but cannot interpret in full detail. P2002 (DPF efficiency) on a Kryotec 2.0 Harrier, for example, needs:
- DPF soot load percentage from live data (not just the code)
- EGT sensor readings across the system
- DPF differential pressure reading
- Regeneration history
A generic scanner shows you P2002. A professional scanner with Tata manufacturer coverage — something like the Autel MaxiCOM MK808 — shows you all of the above — and the difference between “this DPF needs a regeneration cycle” versus “this DPF needs physical cleaning” versus “the differential pressure sensor is lying to you.”
For DEF/AdBlue codes (P2BAD — reductant level low), always check actual DEF level in the tank before scanning further. Low-quality DEF (diluted or wrong concentration) causes P20EE (SCR efficiency) and can damage the SCR catalyst if run for extended periods.
Story From the Floor: The Harrier That Was Limp Three Times
A 2021 Tata Harrier 2.0 diesel came in from a Hyderabad fleet operator — SUV used for corporate cab service. Went into limp mode three separate times in two months. The driver described it as sudden power loss on the highway, speed limited to 60 km/h, warning light on.
Each time, the local workshop cleared P2002 and it ran fine for two to three weeks before repeating.
When it came to me, I connected my Launch X431 CRP429C and pulled full DPF data. Soot load was at 78% when it arrived — well above the regeneration trigger threshold of ~45%. The DPF was never successfully completing a regen cycle because the vehicle was used predominantly in city traffic at low speed, with short trips. A DPF regeneration needs sustained highway-speed driving at temperature.
I performed a forced regeneration, verified the EGT sensors were reading correctly, and gave the fleet manager a brief education: this vehicle needs a minimum 40-minute highway run every week. DPF-equipped vehicles are not suited to pure city cab use without a regen management protocol.
The Harrier hasn’t been back since, and the fleet operator now has a weekly “DPF run” in their vehicle schedule.
Same code — P2002 — three times. The fix was not a part. It was operational knowledge.
FAQ
My old Bolero (pre-2014) shows P0380 — are glow plugs expensive?
Glow plugs on the older MDI and Di series engines are inexpensive — ₹300–600 per plug for quality OEM equivalent parts. Test each plug individually with a multimeter (they should show near-zero resistance, not open circuit). Replace only the failed ones. A glow plug controller (GPCM) fault (P0670) is separate — check the relay and fuses first before replacing the module.
My Nexon BS6 petrol shows P0299 underboost — is the turbo dead?
Not necessarily. P0299 on the Revotron 1.2T is most commonly a boost leak — cracked intercooler pipe or loose hose clamp. The pipes on early BS6 Nexon units are known to loosen under heat cycling. Check all boost path connections before assuming turbo failure.
Can I delete the DPF on a BS6 Tata diesel?
DPF deletion on BS6 vehicles is illegal in India and will cause the vehicle to fail the BS6 emission certification check. More practically, after DPF removal the ECU generates persistent fault codes that put the vehicle in limp mode because the EGT and differential pressure sensor readings no longer make sense to the ECU. Proper BS6 DPF management (cleaning, forced regen) is the legal and practical path.
My XUV700 diesel shows P20EE — SCR efficiency — what does it mean?
First check your AdBlue/DEF tank level and quality. If the DEF is low or has been refilled with poor quality fluid, P20EE follows. Top up with quality DEF, run a complete drive cycle, and rescan. If it persists with good DEF levels, the NOx sensors or the SCR catalyst itself need attention.
My Mahindra Scorpio shows U0100 — is the ECU dead?
U0100 (lost communication with ECM) is almost always a CAN bus fault rather than ECU failure. Check the OBD2 port for bent pins. Inspect the CAN bus harness — on Scorpio, the harness near the firewall is a known chafe point. Measure CAN bus resistance (should be 60 ohms between CAN-H and CAN-L). ECU failure causing U0100 is rare.
The Verdict
Tata and Mahindra have come a long way. The BS6-era vehicles are genuinely sophisticated, and the fault codes they generate reflect that complexity.
The challenge for Indian workshops is catching up to the aftertreatment system knowledge that European markets have had since Euro 5/6. DPF, SCR, DEF — these aren’t going away. If you own or service BS6 Tata or Mahindra diesels, invest in understanding the full exhaust aftertreatment system alongside your OBD2 scanner.
Pre-BS6, the rules are simpler: clean EGR, maintain glow plugs, watch fuel system pressure. Good, honest mechanical work covers most faults.
Babuu has been working in automotive electronics since 2002 and opened HT ECM Solutions in Bachupally, Hyderabad in 2017 — a professional ECU repair, DPF cleaning, and vehicle diagnostics workshop.
Related reads:
- Maruti Suzuki Error Codes — Complete DTC Guide
- DPF Diagnostic Tools — What Fleet Owners Need to Know
- Car Error Codes by Brand — All Makes Compared
- Best OBD2 Scanners for Indian Cars
- How to Read Live Data on Your OBD2 Scanner
The Launch CRP129E is the tool we recommend for reading and clearing these Tata & Mahindra fault codes. It supports all standard OBD2 protocols used by Tata & Mahindra vehicles and provides full system diagnostics.