OBD codes / P0346

OBD-II trouble code

P0346

Serious

Camshaft Position Sensor A Circuit Range/Performance (Bank 2)

Treat P0346 with some urgency — it can cause stalling or hard starts, and if the underlying cause is genuine cam timing drift on Bank 2, continued driving can make an expensive problem worse. Careful trips to the shop are fine; get it diagnosed rather than just clearing it.

Diagnose P0346 on my car →Free · specific to your year, make & model

What this code means

P0346 concerns the camshaft position sensor on Bank 2 — which only exists on V-type and flat engines, on the bank opposite cylinder 1. Unlike the stuck-low or stuck-high circuit codes (P0347/P0348), a RANGE/PERFORMANCE code means the sensor is producing a signal, but one that doesn't make sense — erratic, noisy, or out of step with the crankshaft signal. That can be electrical (a chafed wire picking up interference, a marginal sensor, a bad connection) or mechanical: a damaged or misaligned cam reluctor, debris on the sensor tip, or genuine cam timing drift on that bank from a stretched chain or a stuck VVT phaser. Expect hard starting, rough running, or stalling; because the mechanical causes overlap with real timing problems, this code merits a proper diagnosis rather than automatic sensor replacement.

Stuck on code P0346?

Get our free guide: 10 OBD codes you can fix yourself — no shop required. Enter your email and we’ll send it over (and you can download it right now).

No spam. The guide downloads instantly after you submit.

Symptoms you might notice

  • Hard starting or extended cranking
  • Rough running, hesitation, or stalling
  • Reduced power
  • Check-engine light, sometimes with companion timing codes

What it costs to fix

Typical range: $80–$350 · about ~0.2–1 hrs of labor

If the cause is…PartLabor
Camshaft position sensor (Bank 2)$30$120~0.2–1 hrs
Wiring / connector repair$10$120~0.5–1.5 hrs

The sensor swap itself is cheap and quick. The caveat with a range/performance code is that if the real cause is mechanical — a damaged reluctor or actual cam timing drift — the repair is a different, larger job that varies too much to quote. Diagnose before parts-swapping.

The price swings on which cause it turns out to be — so confirm the cause before paying. Diagnose P0346 for my exact vehicle →

Frequently asked

How is P0346 different from P0347 and P0348?

P0347 and P0348 mean the Bank 2 cam sensor signal is flatlined low or high — almost always an electrical fault. P0346 means the signal exists but is implausible or erratic, which can be electrical OR mechanical, including a damaged reluctor or real cam timing drift on that bank.

Is P0346 just a bad sensor?

Often, but not reliably. Because a range/performance fault can also come from wiring interference, a damaged reluctor, or actual timing drift from a stretched chain or stuck phaser, it's worth having the signal scoped and the timing verified before buying the second sensor.

What does Bank 2 mean?

The cylinder bank that doesn't contain cylinder 1 — so this code only exists on V-type and flat engines. The equivalent code for Bank 1 range/performance is P0341.

Can I drive with P0346?

Cautiously and briefly — stalling and hard starting are the immediate risks. If the code keeps returning after a sensor replacement, stop driving on it and have the Bank 2 cam timing checked, since a mechanical cause can escalate.

Seeing P0346 on your car? Get a diagnosis specific to your exact year, make and model.

Diagnose P0346 for my vehicle

Related trouble codes

Don’t have a scanner yet? A ~$25 Bluetooth adapter reads codes like P0346 from your phone — see our honest guide to the best OBD2 Bluetooth adapters.

Generic OBD-II reference. Manufacturer-specific behavior varies — confirm with a scan tool and, for safety-related codes, a professional inspection.