
Hiding Fault Codes: What Is Allowed and What Is Not
DTC Off explained: which fault codes can be disabled in software, when that makes sense, and why emission-related fault codes are off-limits.
October 25, 2026 by Leo Efimow
The engine warning light comes on, the fault memory shows a code, and the question follows quickly: "Can't you just switch it off?" Technically, the answer is almost always yes. Modern ECUs manage every diagnostic trouble code (DTC) through parameters, and those parameters can be changed. Whether that makes sense and is permitted depends entirely on which fault code is involved. In this article we show you how fault management in the ECU is structured, when disabling a code is legitimate, and where the line to emissions tampering runs.
How a fault code is created in the ECU
The engine ECU continuously monitors sensors, actuators and plausibility: does a sensor deliver a signal outside the expected range? Does an actuator respond as it should? Do two measured values match each other? Each of these checks has its own diagnostic function. If it fails, a fault code is stored in memory.
Behind every code there are several settings: whether the fault is checked at all, after how many drive cycles it is set, whether it activates the malfunction indicator lamp (MIL) and which substitute reaction follows, for example limp mode with reduced power. These are exactly the settings meant by DTC Off: a single diagnosis is deactivated or its reaction changed. The rest of the fault management stays untouched.
When DTC Off is legitimate
There are understandable cases where a fault code no longer describes a real defect, only a change to the vehicle that the ECU does not know about. Typical examples:

- Approved conversions: if a component is replaced as part of a registered conversion, or is legitimately omitted, the ECU still expects the original signal. One example is a retrofitted component with a parts certificate whose signal looks different from the stock part.
- Equipment differences: an ECU from another vehicle or another trim level checks functions that are not installed in the car at all.
- Motorsport vehicles: on a pure race car that no longer has road registration, comfort or series functions are omitted, and their diagnosis then runs into nothing.
What these cases have in common: the fault does not concern an emission-related component, and disabling it does not hide a defect that should be repaired.
Where the line is: emission fault codes
Exhaust aftertreatment is a completely different matter. On-board diagnostics (OBD) was introduced by law precisely to monitor these systems. Fault codes for the rear lambda sensor, the catalytic converter, the particulate filter, exhaust gas recirculation, the SCR system with AdBlue or secondary air injection are part of the type approval.
Suppressing these codes so that a removed or defective exhaust component no longer shows up is emissions tampering. It is not permitted on public roads, regardless of whether the component itself is still installed. Under EU type-approval rules (Regulation (EC) 715/2007), the ECU must not contain devices that reduce the effectiveness of the emission control system, and hidden fault detection falls into that category. In addition, the fault memory is read via the OBD interface during the emissions test. A vehicle whose emission diagnosis has been disabled no longer corresponds to its approved condition.
| Fault code concerns | Example | Classification |
|---|---|---|
| Non-emission component after an approved conversion | modified part with certificate | technically and legally justifiable |
| Equipment that is not installed | function missing in the car | justifiable |
| Rear lambda sensor, cat, DPF, OPF | removed or defective filter | emissions tampering |
| EGR, SCR/AdBlue, secondary air | disabled system | emissions tampering |
Why hiding is not repairing
Even apart from the legal position, a sober look pays off: a fault code is information. If you switch it off without knowing the cause, you lose that information. A sporadic boost fault can be a leaking hose, a rail pressure fault a weakening pump. Without diagnosis you keep driving until a small defect becomes a big one. That is why the workshop rule is: diagnose first, then repair, and only if the code demonstrably no longer describes a defect, think about disabling it.
The same applies to tuning. A clean calibration does not create new fault codes. If a fault appears after a flash, it is a sign that something does not fit: in the file, in the hardware or in the communication between ECUs. Hiding it does not solve the problem.
Three common misconceptions
"Clearing faults is the same as DTC Off." No. Clearing the fault memory with a diagnostic tool only removes the current entry. The diagnosis keeps running, and if the cause is still there, the code returns at the next test cycle. DTC Off, by contrast, changes the diagnosis itself. That is an intervention in the software.
"If the light is off, everything is fine." Not true either. Many faults are only stored as confirmed after several drive cycles, others only set a so-called readiness status. During the emissions test, the inspector does not just look at the warning light; the fault memory and readiness codes are read out.
"Limp mode can simply be switched off." Limp mode is a protective reaction. It reduces power because the ECU detects a condition in which full power could cause damage. Removing the protective reaction without knowing the cause just shifts the risk onto the hardware.
Legal framework for any software change
Independent of the individual fault code: any change to the engine software voids the operating permit unless it is assessed and registered. Our software functions are intended exclusively for motorsport. You will find the details in the motorsport notice. DTC Off is no exception.
Cost and process
For vehicles outside the BMW online flow, DTC Off can be booked as an option with the calibration: €25, provided your ECU family supports disabling individual codes. That is the case for practically all common families. The second step is what matters: you tell us which code is involved and why it occurs. Only then can we judge whether it is a non-emission-related code. For BMW, the configurator shows which extras are available for your ECU.
Conclusion
DTC Off is a tool for a narrow, clearly defined purpose: non-emission-related fault codes that, after an approved conversion or because of missing equipment, no longer describe a real defect. Fault codes of the exhaust aftertreatment (rear lambda, cat, DPF, OPF, EGR, SCR and secondary air) are not part of that; suppressing them is emissions tampering. If you are unsure which case applies to you, read out the fault memory first and send us the code. Then we talk about the cause before anyone talks about switching it off. More on the topic in the glossary under DTC.