Skip to content
Skip to content

OBD-II Code · Sensors

P0031

O2 Heater Control Circuit Low (B1S1)

Severity

low

Lowest on our scale. Fix it when convenient.

Can you drive it

Only if running normally

A short trip to a shop may be reasonable if the light is steady and the car runs normally. Stop safely for a flashing light, severe shaking, overheating, loss of power, or another urgent warning. The code alone cannot confirm safety.

Indicative cost (USD)

$150–$350

Varies by vehicle, diagnosis, parts, and local labor. This is not a repair quote.

Heater control voltage low.

How a shop works this

Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed.

  1. Note every code that is set, not just this one.

    Codes that appear together usually narrow the cause faster than any one of them read alone.

  2. Read the freeze frame — the conditions the fault was recorded under.

    Cold or warm, idle or load, road speed and engine speed. A fault that only appears cold is a different fault from one that only appears under load, even with the same code on the scanner.

  3. Confirm the fault is current rather than history.

    Clear the code and see whether it returns under those same conditions. A code that does not come back may have been logged during a repair, a flat battery, or a bad connection that has since been disturbed.

  4. Then work the likely-causes list in the order shown.

    That order is what a shop checks first for this code — wiring and connections before the component they run to, because a connector costs nothing to inspect and is a common answer.

If the code comes back after a repair, the underlying fault is still there. That is the point to bring in a scanner with live data and freeze-frame, or a shop that has one.

Common symptoms

  • Check engine light

Likely causes

  • Short to groundMost common
  • Blown fuse
Read the full diagnostic procedureP0031 means the PCM is seeing the heater control circuit pulled low — either the ground-side driver is shorted to ground, the heater element itself i…

P0031 means the PCM is seeing the heater control circuit pulled low — either the ground-side driver is shorted to ground, the heater element itself is shorted internally, or the supply voltage has collapsed. The PCM expects to see voltage rise on the control pin when it commands the driver off; if it stays near zero, the code sets.

Cheapest-first

  1. disconnect the sensor and ohm the heater pins at the sensor — narrowband should read 2-10 ohms cold, wideband 1-3 ohms cold.
  2. A reading below 1 ohm on a narrowband or below 0.5 ohm on a wideband indicates an internally shorted heater.
  3. With the sensor disconnected, key-on, the harness-side control pin should float near 12V on most platforms; if it sits at zero with the sensor unplugged, the harness is shorted to ground between the connector and the PCM. Verify the supply-side fuse and confirm 12V at the B+ pin key-on.
  4. Scope the ground-side: duty cycle pinned at 100% with low voltage confirms a wiring short rather than a driver failure.
  5. The expensive misdiagnosis is condemning the PCM for a driver fault when the real cause is a melted harness against the exhaust — always unplug and re-test the harness in isolation before any module work.
Vehicle-specific patternsGM 5.3L LS trucks (Silverado/Tahoe/Yukon 2007-2014) routinely set P0031 when the upstream harness melts onto the manifold and shorts heater control t…

GM 5.3L LS trucks (Silverado/Tahoe/Yukon 2007-2014) routinely set P0031 when the upstream harness melts onto the manifold and shorts heater control to ground — covered under GM TSB PIT5358. Toyota 2GR-FE (Camry/Avalon/Sienna 2007-2012) wideband AFR sensors fail internally with a shorted heater, drawing excess current; Denso 234-9051 replacement is the fix. Subaru EJ25 (Forester/Outback/Legacy 2005-2012) front O2 sensors short internally with age, often after a misfire event cooks the element. Nissan VQ35DE (Altima/Maxima/Murano 2002-2008) sees harness chafe at the bracket near the bellhousing causing intermittent P0031.

Estimated repair$120 to $400.

Look up another code

P0031 — frequently asked

What does a P0031 code mean?

Heater control voltage low.

What causes a P0031 code?

Common causes: Short to ground; Blown fuse.

What are the symptoms of a P0031 code?

Typical symptoms: Check engine light.

Is it safe to drive with a P0031 code?

Only if running normally. A short trip to a shop may be reasonable if the light is steady and the car runs normally. Stop safely for a flashing light, severe shaking, overheating, loss of power, or another urgent warning. The code alone cannot confirm safety. Estimated repair: $150-$350.

How do I diagnose a P0031 code?

Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed. 1. Note every code that is set, not just this one. 2. Read the freeze frame — the conditions the fault was recorded under. 3. Confirm the fault is current rather than history. 4. Then work the likely-causes list in the order shown.

More free tools

See all 9 tools