P0038

HO2S Heater Control Circuit High (Bank 1 Sensor 2)

P0038 is a generic OBD-II powertrain diagnostic trouble code: HO2S Heater Control Circuit High (Bank 1 Sensor 2). It is logged by the engine control unit when the powertrain monitor detects that a specific fault threshold has been exceeded — typically resulting in the malfunction-indicator lamp (MIL / check-engine light) being illuminated.

Code
P0038
Group
Powertrain
System
Powertrain
Severity
Warning (MIL on)
Need P0038 disabled?
RaceTune permanently disables any OBD-II trouble code on supported ECUs — for motorsport, off-road, and export use.

What P0038 means

P0038 is stored when the PCM detects that the heater control circuit for Bank 1, Sensor 2 — the downstream (post-catalyst) oxygen sensor on the cylinder-1 side — is carrying abnormally high voltage or current. The heater element warms the sensor to operating temperature to ensure accurate converter-efficiency readings; the PCM commands the element via either a ground-side driver or a controlled supply, then monitors the circuit state continuously.

A "High" circuit condition indicates that measured voltage or current on the heater circuit is exceeding the manufacturer's upper calibration limit. This typically results from a short to battery voltage on the control wire, an internally shorted heater element with very low resistance drawing excessive current, or a stuck-closed heater relay. Heat damage to wiring near the catalyst is a particularly common root cause for this sensor position.

The fault rarely causes obvious drivability changes since the downstream sensor does not directly control fuel delivery. The MIL will illuminate, catalyst monitoring will be affected, and the abnormal electrical condition may over time degrade the wiring or PCM driver if left unaddressed.

Common causes

Most-frequently reported root causes when P0038 is logged.

  • 1
    Failed internal heater element with abnormally low resistance causing excess current draw.
  • 2
    Short to battery voltage on the heater control wire within the harness.
  • 3
    Heat-damaged wiring near the catalytic converter bridging the control line to a 12 V supply.
  • 4
    Faulty heater relay welded closed, continuously energising the heater circuit beyond normal duty cycle.
  • 5
    Damaged connector with adjacent pins bridged to a battery-voltage source.
  • 6
    PCM heater output driver failure holding the control circuit at high voltage.
  • 7
    Corroded connector creating an unintended electrical path between heater and supply wiring.

Symptoms drivers notice

Malfunction indicator lamp (MIL / Check Engine Light) is illuminated.
No significant drivability issues in most cases, as Sensor 2 does not govern fuel trim.
Catalyst efficiency monitor (P0420) may be suppressed or set concurrently.
Possible smell of burning insulation near the downstream sensor harness in severe short-to-voltage cases.
Possible failed emissions inspection due to the active MIL.

How to diagnose P0038

A typical diagnostic flow when this code is present.

  1. 1
    Connect a scan tool, read all stored DTCs, and note any accompanying P0420 or other oxygen sensor codes that may be related.
  2. 2
    Inspect the Bank 1 Sensor 2 harness from the sensor (downstream of the catalytic converter) back toward the firewall for heat damage, melted insulation, and contact with exhaust components.
  3. 3
    Check the heater relay and fuse; a relay that cannot open will hold the heater energised continuously, producing a high-current or high-voltage condition.
  4. 4
    With the sensor unplugged and ignition on / engine off, measure voltage on the heater control pin at the harness connector; on a ground-controlled system it should be near 0 V when the PCM commands heater off.
  5. 5
    Measure heater element resistance directly at the sensor's heater pins; resistance substantially below the normal range (typical: 4–30 Ω) suggests an internally shorted element.
  6. 6
    If the harness and relay are sound, replace the Bank 1 Sensor 2 oxygen sensor, clear the code, and verify the heater monitor passes on a complete drive cycle.
  7. 7
    If the fault persists after sensor replacement, inspect the PCM driver circuit per the vehicle service manual for a shorted internal driver stage.

Vehicles where we've handled P0038

Platforms in our catalogue with confirmed P0038 coverage.

BMW 320D
2016

Related powertrain codes

Frequently asked questions

What is the difference between P0037 (Low) and P0038 (High) for Sensor 2?

P0037 means the Sensor 2 heater circuit is below minimum threshold — open wire, short to ground, or blown fuse. P0038 means it is above maximum threshold — short to battery voltage, stuck relay, or internally shorted element drawing excessive current.

Why does the downstream sensor need a heater at all?

The post-catalyst sensor runs cooler than the upstream sensor because exhaust gas has given up heat energy to the catalyst. A heater element ensures it reaches the minimum ~300 °C needed for accurate electrochemical oxygen measurement, enabling the PCM to run the catalyst efficiency monitor on every trip.

Can I drive with P0038 present?

Generally yes, as the downstream sensor does not affect fuel delivery. However, the abnormal electrical condition can stress harness wiring and the PCM driver over time, and the active MIL will suppress other readiness monitors. Fix it within a reasonable time.

Is wiring damage near the catalytic converter common for P0038?

Yes. The Bank 1 Sensor 2 harness runs close to the catalytic converter, which operates at extremely high temperatures. Even minor contact between the harness and the converter body can melt insulation and create a short to nearby voltage sources, making this a frequent real-world trigger for P0038.

Disabling P0038 in software

RaceTune can permanently disable P0038 — and any other OBD-II diagnostic trouble code — on every ECU family we support. The monitor is disabled inside the ECU itself, so the fault stops being logged: the warning light stays off and the engine never enters limp mode for this code. The change is tied to your exact software version.

Permanent
The monitor is disabled in the ECU itself — not just cleared. It cannot return.
Tailored to your file
Each patch is matched to your specific software version — never a one-size-fits-all file.
Reversible
The original file is always preserved. Reflash the stock to return the ECU to factory state.

ECUs with a P0038 disable in our catalogue

Confirmed coverage from our recipe database — we support many more families. Upload your file and our identifier will match it automatically.

  • Bosch EDC17C50 verified 1 software version

Software modifications affect emissions compliance and are not road-legal in many jurisdictions. RaceTune service files are intended for motorsport, off-road, and export use.

Got P0038 in your scan?

Upload your ECU file — we'll identify the exact software version and confirm whether a disable is available for your car.

Upload your file