P0348

Camshaft Position Sensor A Circuit High Input (Bank 2)

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

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

What P0348 means

P0348 is the mirror image of P0347: rather than a stuck-low signal, the Bank 2 Camshaft Position Sensor "A" circuit is reporting a voltage that is permanently stuck above the high-state threshold. For a typical 5 V Hall-effect sensor the output should switch between approximately 0.3 V (low) and 4.7 V (high) as the reluctor ring teeth pass. P0348 is set when the output never drops — it remains high regardless of camshaft rotation — so the PCM cannot decode cam position.

A stuck-high condition most commonly points to a short to the reference voltage or battery voltage on the signal wire, or a sensor that has failed in the high-output state. It can also result from a missing or damaged reluctor ring that never interrupts the sensor's output, though in that case P0346 (rationality) may appear first. As with P0347, the engine may attempt to operate on crankshaft fallback data, but timing accuracy and fuel control are compromised.

Common causes

Most-frequently reported root causes when P0348 is logged.

  • 1
    Signal wire shorted to the 5 V reference supply or battery voltage, pulling the output permanently high
  • 2
    Faulty Bank 2 CMP sensor "A" with an internal short causing constant high-state output
  • 3
    Damaged reluctor (tone) ring with missing, bent, or heavily corroded teeth that prevent the sensor output from switching low
  • 4
    Corroded connector pins bridging the reference and signal circuits
  • 5
    Wiring harness damage where signal wire contacts the reference or power wire inside the loom
  • 6
    Sensor installed on wrong cam bank (a wiring swap can place a Bank 1 signal on the Bank 2 input)
  • 7
    PCM internal fault on the Bank 2 cam-input channel (diagnose last)

Symptoms drivers notice

Malfunction Indicator Lamp (MIL) illuminated
Rough idle and misfires on Bank 2 cylinders
Hard starting or extended crank time
Engine stalling at idle
Reduced power and acceleration hesitation
Increased fuel consumption and possible rich fuel trim on Bank 2

How to diagnose P0348

A typical diagnostic flow when this code is present.

  1. 1
    Retrieve all stored DTCs; misfire codes on Bank 2 cylinders and fuel trim codes strongly support the diagnosis
  2. 2
    With ignition on and sensor connected, measure signal wire voltage at the connector — a reading close to reference voltage (5 V) or battery voltage (12 V) that does not change with engine cranking confirms the stuck-high condition
  3. 3
    Disconnect the sensor and recheck signal wire voltage; if voltage remains near 5 V or 12 V with the sensor disconnected, the signal wire is shorted to a supply in the harness
  4. 4
    If voltage drops to 0 V when the sensor is disconnected, the sensor itself is internally shorted and should be replaced
  5. 5
    Inspect the reluctor ring on Bank 2 camshaft for missing teeth, heavy corrosion, or physical damage — use a borescope or remove the valve cover if necessary
  6. 6
    Check for wiring harness chafing where the CMP harness runs near hot or sharp engine components that could melt insulation and create a short to the reference wire
  7. 7
    Repair wiring shorts or replace sensor as indicated; clear codes and verify with a test drive confirming clean cam-signal switching on the scan tool

Related powertrain codes

Frequently asked questions

What is the key difference between P0347 (low) and P0348 (high)?

P0347 indicates the signal is stuck at the low (0 V) state, suggesting an open circuit or short to ground. P0348 indicates the signal is stuck at the high-voltage state, suggesting a short to the reference supply or battery voltage, or a sensor stuck in its open-collector high state. The distinction guides which half of the circuit to test first.

Can a damaged tone ring set P0348?

Yes. If the reluctor ring teeth are missing or the ring is severely corroded, the sensor's output may never be interrupted (never switched low), producing a permanently high signal. Inspect the reluctor ring if sensor and wiring tests are normal.

Will the engine run with P0348 active?

Usually, but with degraded performance. Most PCMs can substitute crankshaft position data to maintain fuel injection and ignition timing, but Bank 2 variable valve timing cannot function correctly, leading to rough running, reduced power, and increased emissions.

Disabling P0348 in software

RaceTune can permanently disable P0348 — 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.

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 P0348 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