P0391: Cam Position Sensor B Range/Performance Bank 2

Which Scanner Is Right for Your Vehicle? Let Us Help →

P0391 Code: Camshaft Position Sensor B Circuit Range/Performance (Bank 2)

P0391 Code: Camshaft Position Sensor B Circuit Range/Performance (Bank 2)

Quick answer

Code P0391 is “Camshaft Position Sensor ‘B’ Circuit Range/Performance (Bank 2).” The ECM has decided the Bank 2 cam “B” signal is present but erratic, intermittent or out of its expected range when checked against the crankshaft. (Note: P0391 is the range/performance code — the “circuit low” version is P0394.) Common causes are a failing sensor, low or dirty oil affecting VVT timing, or a wiring/connector fault.

How seriousMedium–High. Unreliable cam timing can bring misfires, limp mode and, in VVT engines, timing problems.
OK to drive?Short-term usually, but diagnose soon — misfires and timing faults can worsen.
Most common fixCorrect oil level/condition, repair the connector/wiring, or replace the sensor or VVT solenoid.
Typical cost$150–$400 for the sensor or VVT solenoid; far more if timing components are involved.

The P0391 trouble code points to an erratic or out-of-range signal from the Bank 2 camshaft position sensor “B”, which the ECM relies on to time the engine. This guide covers the symptoms, causes and fixes for P0391, and shows where live data on a scan tool like the iCarsoft CR Max P reveals whether the signal or the actual cam timing is at fault.

1What Does the P0391 Code Mean?

P0391 is a generic powertrain DTC set when the ECM finds the Bank 2 camshaft “B” signal is present but erratic, intermittent or out of range when correlated with the crankshaft. Sensor “B” is the exhaust camshaft sensor; Bank 2 is the bank without cylinder #1. Importantly, P0391 is the range/performance fault — not “circuit low,” which is P0394 — so on VVT engines it can also point to actual cam-timing drift, not just the sensor.

P0391 camshaft position sensor B signal diagram The Bank 2 camshaft turns past camshaft position sensor B, which sends a pulsing signal to the ECM; the ECM compares it against the crankshaft reference. P0391 is an erratic or out-of-range sensor B signal. How a P0391 happens Camshaft position sensor B signal on Bank 2 ECM / PCM compares cam vs crank P0391 fault zone signal erratic / out of range Camshaft B (Bank 2) CMP Sensor B Crankshaft / CKP (reference) cam signal crank reference Faulty cam-signal circuit Sensor the ECM reads cam timing from
How a P0391 forms — the ECM sees an erratic or out-of-range Bank 2 camshaft position sensor B signal when it checks cam against crank.

2Symptoms of the P0391 Code

  • Check engine light on.
  • Rough or fluctuating idle.
  • Intermittent misfire on Bank 2, especially under light load.
  • Hesitation or stumble during initial acceleration.
  • Loss of power or reduced throttle response.
  • Limp mode limiting engine speed.
  • Reduced fuel economy.

3Common Causes of the P0391 Code

  • Failing camshaft position sensor “B” (Bank 2) producing an erratic signal.
  • Low or dirty oil / a sticking VVT (cam phaser) solenoid causing real cam-timing drift.
  • Wiring or connector faults — frayed, corroded or oil-contaminated.
  • Stretched timing chain, worn guides or a failing tensioner.
  • Damaged or contaminated reluctor / tone ring.
  • Weak battery or failing alternator giving inconsistent voltage.
  • ECM fault or software issue (rare — verify mechanical and electrical first).

4How Serious Is P0391? Can You Keep Driving?

Don't leave P0391 too long. A range/performance fault means the Bank 2 cam timing correlation is unreliable, which can trigger misfires, drivability problems and limp mode — and on VVT engines it can flag underlying oil or timing issues. It's usually drivable short-term, but diagnose it soon, because misfires and timing faults can worsen and risk engine damage.

5How to Diagnose the P0391 Code

The goal is to separate a bad signal from actual cam-timing drift:

  • Read codes and freeze-frame with a scan tool such as the iCarsoft CR Max P; note any VVT, misfire or correlation codes.
  • Watch live data: compare camshaft “B” (Bank 2) against the crankshaft for dropouts or erratic readings at idle and on a brief rev.
  • Check engine oil level and condition first — low or dirty oil is a frequent VVT-related cause.
  • Inspect and back-probe the CMP-B connector and harness; wiggle-test for intermittents.
  • If the signal is clean, look at timing-chain stretch via the cam/crank correlation data.
Camshaft position sensor B circuit diagram for P0391 Bank 2 diagnosis
The camshaft position sensor B circuit — a clean connector, intact wiring and good oil-fed VVT timing are what keep this signal in range.

6Steps to Fix the P0391 Error Code

  1. Verify and correct engine oil level and condition; change oil and filter if dirty.
  2. Inspect and clean or repair the CMP-B (Bank 2) connector and wiring; fix any oil leak feeding the connector.
  3. Replace the camshaft position sensor “B” if the signal is erratic and the wiring checks good.
  4. Test and clean or replace the Bank 2 VVT / cam-phaser solenoid if cam timing is drifting.
  5. Inspect the timing chain, guides and tensioner if cam-crank correlation is off.
  6. Clear codes and confirm a stable, correlated cam-B signal in live data.
  7. Road-test to verify the misfire / limp-mode symptoms are gone.

7Why the Cam Signal Matters

The camshaft position sensor tells the ECM where the valves are so it can time fuel and spark — and on VVT engines, so it can verify the cam phasers are where it commanded. When the Bank 2 cam signal reads erratically, the ECM can't trust that timing, so it pulls back into a safe mode. A healthy sensor, clean wiring and good oil pressure are what keep that timing reference accurate.

8Which iCarsoft Tool to Use

The iCarsoft CR Max P is well suited to a P0391. Its live data lets you watch the cam-B-versus-crank correlation, and on supported vehicles its bi-directional VVT actuation test confirms whether the cam phaser responds — so you can tell an electrical/sensor fault from actual mechanical timing drift.

With CAN-FD support and coverage for 58 vehicle makes, it also confirms the cam signal reads cleanly again after the repair.

iCarsoft CR Max P scan tool for P0391 camshaft position sensor diagnosis

Recommended for P0391

iCarsoft CR Max P

Pro bi-directional scan tool with live cam/crank correlation, VVT actuation tests, CAN-FD and full-system diagnostics across 58 car brands — to confirm a P0391 fix.

$599.99 · was $819.99 · lifelong free updates

Shop CR Max P See full specs

9P0391 Repair Cost

Cost depends on whether it's the sensor, the VVT solenoid, oil or timing components. Typical ranges (parts + labor):

P0391 repair cost ranges Typical P0391 repair costs in US dollars, parts plus labor: diagnostic $75 to $150, camshaft sensor $150 to $350, VVT solenoid $150 to $400, oil and filter change $40 to $100, timing chain repair $600 to $1800. P0391 — typical repair cost Parts + labor, US dollars · general estimates Diagnostic (scan) Cam sensor replace VVT solenoid Oil & filter change Timing chain repair $75–$150 $150–$350 $150–$400 $40–$100 $600–$1,800 $0$600$1,200$1,800
Typical P0391 repair costs (parts + labor). A sensor or VVT solenoid is moderate; timing-component repair is the costly outlier.
Repair Typical cost
Diagnostic (scan) $75–$150
Camshaft sensor (Bank 2) replacement $150–$350
VVT / cam-phaser solenoid $150–$400
Oil & filter change $40–$100
Timing chain / tensioner / guides $600–$1,800

These are general estimates — get a quote once the specific cause is confirmed.

10Prevention & Regular Maintenance

  • Change oil at the recommended interval with the correct grade — VVT depends on clean oil pressure.
  • Address low-oil or oil-leak issues quickly to protect cam phasers and sensors.
  • Use OEM-quality sensors and VVT solenoids when replacing.
  • Keep the battery and charging system healthy to avoid voltage-induced false readings.
  • Inspect timing components per the maintenance schedule on higher-mileage engines.

12P0391 — Frequently Asked Questions

Is P0391 the same as “circuit low”?

No — P0391 is officially “range/performance (Bank 2).” The “circuit low” code is P0394 and “circuit high” is P0393.

Can I keep driving with P0391?

Usually short-term, but misfires, limp mode and possible timing damage mean you should diagnose it soon.

Could low oil really cause this?

Yes — VVT cam phasers use oil pressure, so low or dirty oil is a very common trigger on these engines.

Is it the sensor or the timing chain?

Both are possible. Live-data cam-crank correlation tells you whether it's an electrical/sensor issue or actual mechanical timing drift.

How do I reset the P0391 code?

Repair the root cause first, then clear the code with a scan tool such as the iCarsoft CR Max P and verify a stable cam signal in live data.

Mike Donovan
Diagnostic Engineer · iCarsoft · Engine performance, fuel, ignition & O2

Mike works on engine-management faults — fuel trims, ignition, oxygen sensors and the cam and crank position signals that keep combustion timed — including range/performance faults like P0391. Definitions here are checked against SAE J2012 and public OBD references, and the guide is updated as reader feedback comes in. More guides from Mike Donovan →

13References

Leave a comment

Please note: comments must be approved before they are published.