P2954

Throttle/Pedal Position Sensor C Circuit Intermittent

P2954 is a generic OBD-II powertrain diagnostic trouble code: Throttle/Pedal Position Sensor C Circuit Intermittent. 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
P2954
Group
Powertrain
System
Powertrain
Severity
Warning (MIL on)
Need P2954 disabled?
RaceTune permanently disables any OBD-II trouble code on supported ECUs — for motorsport, off-road, and export use.

What P2954 means

P2954 is stored when the ECM detects an intermittent signal condition from throttle or pedal position sensor circuit C. On vehicles equipped with an electronic throttle control (ETC) system, multiple redundant sensor circuits monitor the accelerator pedal position (APP) or the throttle body position. Circuit C refers to the third signal circuit in the redundant sensing arrangement, which is used for cross-validation with circuits A and B.

An intermittent fault on circuit C suggests the signal is occasionally dropping out or producing a value that conflicts with the other sensor circuits, without remaining in the fault state long enough for the ECM to classify it as a continuous failure. This type of fault is commonly caused by connector pin fretting, a hairline break in the signal wiring, or an accelerator pedal position sensor that is beginning to fail internally while still producing occasional valid signals.

Because the ETC system relies on signal agreement between circuits for safety validation, any intermittent discrepancy between circuits can trigger a torque reduction or throttle-close safety response. Diagnosis requires live data monitoring across all APP sensor circuits simultaneously during a vibration or thermal wiggle test to catch the dropout event in progress.

Common causes

Most-frequently reported root causes when P2954 is logged.

  • 1
    Intermittent open or high-resistance connection in the APP or throttle sensor C signal wire.
  • 2
    Fretting corrosion on connector pins at the accelerator pedal module or throttle body.
  • 3
    Partially failed accelerator pedal position sensor with an intermittently dropping C-circuit output.
  • 4
    Wiring harness movement under the dashboard creating intermittent contact breaks.
  • 5
    Connector not fully seated or locking tab damaged at the pedal position sensor.
  • 6
    Moisture intrusion into the pedal sensor connector causing intermittent resistance changes.
  • 7
    Throttle body position sensor C track worn causing signal dropouts at certain positions.

Symptoms drivers notice

MIL illuminated with an intermittent complaint history.
Momentary hesitation or unexpected throttle reduction during acceleration.
Possible brief entry into reduced power or failsafe mode that clears on its own.
Scan tool may show occasional brief discrepancy between APP sensor circuits.
Driver may notice an occasional stumble or flat spot with no consistent trigger.

How to diagnose P2954

A typical diagnostic flow when this code is present.

  1. 1
    Retrieve all DTCs and check freeze-frame data; note conditions when the fault was recorded.
  2. 2
    Monitor all APP sensor or throttle sensor circuits simultaneously in live data mode.
  3. 3
    Perform a wiggle test on the harness, pedal sensor, and throttle body sensor connectors while watching for signal dropouts.
  4. 4
    Inspect connector pins at the accelerator pedal module and throttle body for fretting, corrosion, or damage.
  5. 5
    Check signal wire routing for pinch points or areas of abrasion under the dash or near moving components.
  6. 6
    Repair any wiring or connector faults found and retest under the same conditions.
  7. 7
    Replace the accelerator pedal position sensor or throttle body if the intermittent persists after wiring repairs.

Vehicles where we've handled P2954

Platforms in our catalogue with confirmed P2954 coverage.

BMW 320D
2016

Related powertrain codes

Frequently asked questions

Is P2954 dangerous?

An intermittent ETC sensor fault can cause momentary unintended power reductions; while typically brief, it should be investigated and repaired to ensure consistent throttle response.

Can a dirty throttle body cause P2954?

A dirty throttle body can affect the throttle position sensor reading, but P2954 is most commonly an electrical wiring or connector fault rather than a carbon buildup issue.

Why does the code keep coming back after I clear it?

Intermittent faults recur until the underlying cause is repaired; clearing codes without fixing the root cause provides only temporary relief.

Does P2954 affect all three sensor circuits?

No, P2954 is specific to circuit C; the other circuits may be functioning normally, which is why the ECM classifies it as intermittent rather than a complete sensor failure.

Disabling P2954 in software

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