Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All Articles →
🧭 Diagnostic Flowchart 🎬 Helpful Videos 🛍️ Shop This Part

P0122 on 1994-1998 Subaru Legacy: Throttle Position Sensor Circuit Low Input Causes and Fixes

This code almost always points to a faulty Throttle Position Sensor (TPS) or its wiring on your 1994-1998 Legacy. The ECU is seeing a voltage signal from the sensor that is lower than the expected 0.45-0.55V at idle. The most common fix is replacing the TPS and adjusting it correctly, a DIY-friendly job costing between $30 and $100 for the part. A corroded or damaged connector is the second most likely culprit.

17 minutes to read 1994-1998 Subaru Legacy
Most Likely Cause
Faulty Throttle Position Sensor (TPS)
Difficulty
2/5
Est. Time
1 hrs
DIY Doable?
✅ Yes
Shop Labor
$80 – $250
Parts Price
$30 – $100
⚠️ Drivable, but... — Driving is possible, but not recommended. You may experience engine stalling, hesitation, poor acceleration, and harsh automatic transmission shifting, which can be unsafe in traffic.
Key Takeaways
  • P0122 on a 90s Legacy means the Throttle Position Sensor's signal voltage is too low, often due to a worn-out sensor or frayed wiring.
  • The most likely cause is a failed TPS, followed by damaged wiring right at the connector, or an improper adjustment.
  • Diagnosis is straightforward with a multimeter to check for a smooth voltage sweep from a calibrated 0.45-0.55V at idle to ~4.5V at wide-open throttle.
  • When replacing the TPS, you MUST adjust the new sensor by rotating it to achieve the correct closed-throttle voltage to avoid idle, performance, and automatic transmission shifting issues.
  • This is a manageable DIY repair that can save significant money over shop labor.
The trouble code P0122 stands for "Throttle/Pedal Position Sensor/Switch 'A' Circuit Low Input". On your 1994-1998 Subaru Legacy, this means the Engine Control Module (ECM) has detected that the voltage signal from the Throttle Position Sensor (TPS) is below the normal operating range. The TPS tells the computer how far open the throttle plate is, which is crucial for calculating fuel delivery, ignition timing, and transmission shift points. A 'low input' code indicates the signal is weaker than it should be, often below the specified 0.45-0.55 volts at closed throttle.

What's Unique About the 1994-1998 Subaru Legacy

On the second-generation Legacy with the EJ22 engine, the throttle is operated by a mechanical cable, not drive-by-wire. This simplifies the system, focusing diagnosis on the TPS mounted directly to the throttle body, its wiring, and its adjustment. Owners report that the wiring connector to the TPS can become brittle and the wires can fray, causing an immediate P0122 code. Proper adjustment of the sensor after installation is critical; it must be rotated to achieve a specific voltage range (0.45-0.55V) at idle to prevent idling and drivability issues.

Symptoms You May Notice

  • Check Engine Light is on
  • Engine hesitates or stumbles during acceleration
  • Rough or unstable idle, sometimes hunting between 500 and 1500 RPM
  • Engine may stall, especially when coming to a stop or at idle
  • Poor fuel economy, potentially with a smell of raw fuel from the exhaust
  • Reduced engine power or sluggish throttle response
  • Harsh or delayed shifting on automatic transmission models
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the Idle Air Control (IAC) valve. While a bad IAC can cause idle problems, it will typically set its own code (like P0505) and will not set a P0122 code.
  • Replacing the Mass Airflow (MAF) sensor. A faulty MAF sensor will typically set its own specific trouble codes.

Most Likely Causes

  1. Faulty Throttle Position Sensor (TPS) 🔴 High Probability → Shop Fuel Injection Throttle Body The internal resistive strip of the sensor wears out over time, creating dead spots or a consistently low voltage output. After decades of use, failure is common.
    How to confirm: With the key on and engine off, use a multimeter to backprobe the TPS signal wire. The voltage should sweep smoothly from about 0.45-0.55V at closed throttle to ~4.5V at wide-open throttle. If the voltage is stuck low, drops out, or doesn't change, the sensor is bad.
    Typical fix: Replace the Throttle Position Sensor. Ensure the new sensor is properly adjusted to the correct voltage.
    Est. part cost: $30-$100
  2. Poor Electrical Connection or Damaged Wiring 🟡 Medium Probability After decades of heat cycles, the plastic connector and wiring insulation can become brittle and crack. Owners specifically report wires fraying down to a few strands right at the connector, causing a sudden P0122 code and high idle.
    How to confirm: Visually inspect the TPS connector and its wiring harness for cracks, corrosion, or frayed wires. Wiggle the connector with the engine running to see if the idle changes. Check for 5V reference and a good ground at the connector with a multimeter.
    Typical fix: Repair the damaged wiring or replace the connector pigtail, which can often be sourced from a junkyard.
    Est. part cost: $10-$25
  3. Incorrectly Adjusted Throttle Position Sensor ⚪ Low Probability → Shop Fuel Injection Throttle Body This typically only occurs if the sensor has been recently replaced or loosened without proper calibration. The sensor body has slotted mounting holes allowing it to be rotated to set the base voltage.
    How to confirm: Check the TPS signal voltage at closed throttle with a scan tool or multimeter. If it's significantly below the specified range of 0.45-0.55V, it needs adjustment.
    Typical fix: Loosen the TPS mounting screws and rotate the sensor until the closed-throttle voltage is within the manufacturer's specification (target ~0.5V). Then, retighten the screws.
    Est. part cost: $0

Rare But Worth Checking

  • Dirty or Sticking Throttle Body: → Shop Fuel Injection Throttle Body While less common for a 'low input' code, excessive carbon buildup can prevent the throttle plate from closing completely. If a previous owner adjusted the TPS to compensate for a sticking plate, cleaning it may cause the idle position to become too low, triggering the code. Cleaning is good preventative maintenance.
  • Faulty Engine Control Module (ECM): This is very rare. The ECM should only be considered a potential cause after all other possibilities (sensor, wiring, adjustment) have been thoroughly ruled out.

Diagnosis Steps

  1. Read the code with an OBD-II scanner to confirm P0122 is present. Note any other codes, especially P1700 on automatic models.
  2. Visually inspect the Throttle Position Sensor, its electrical connector, and the wiring harness. Pay close attention to the wires entering the back of the connector for fraying or damage.
  3. With the ignition ON and engine OFF, use a multimeter to test the TPS connector. You should find a 5-volt reference wire, a ground wire, and a signal wire.
  4. Backprobe the signal wire. At closed throttle, the voltage should be between 0.45 and 0.55 volts. Many DIY mechanics aim for 0.5V exactly.
  5. Slowly open the throttle by hand. The voltage should increase smoothly and linearly to about 4.5 volts at wide-open throttle. Any dropouts, spikes, or dead spots indicate a faulty sensor.
  6. If the sensor tests good but the code persists, check for a poor ground or intermittent short in the wiring harness. Wiggle the harness while monitoring voltage to see if it fluctuates.
  7. If a new sensor is installed, it must be adjusted. Loosen the screws, connect the multimeter to the signal wire, and rotate the sensor until the closed-throttle voltage is within the 0.45-0.55V spec before tightening the screws.

Parts You'll Likely Need

  • Throttle Position Sensor (OEM #22633AA140) — This is the most frequent point of failure for a P0122 code due to internal wear.
    Trusted brands: Hitachi, Denso, Standard Motor Products, Genuine Subaru
    OEM price range: $80-$120
    Aftermarket price range: $30-$70

Related Codes That Often Appear With This One

  • P1700 — On automatic transmission models, this code can appear with TPS codes. P1700 indicates a Throttle Position Sensor circuit malfunction reported by the Transmission Control Module (TCM), as the TCM also uses TPS data to control shift points and line pressure. An incorrect TPS signal can cause harsh shifting.
  • 31 — On early models within this range (approx. 1994-1995), this is the OBD-I equivalent code for a Throttle Position Sensor fault. It can be retrieved by connecting diagnostic connectors under the driver's side dash and counting the flashes of the Check Engine Light.

Platform-Specific Known Issues

  • Wiring Failure at the Connector: A user on LegacyGT.com reported chasing an idling problem which turned into a P0122 code after they repaired the TPS connector. They found one of the wires had frayed down to only 3-4 strands. After replacing the connector with one from a junkyard, the code appeared, indicating the importance of a solid connection and proper adjustment post-repair.
  • Incorrect Adjustment Causes Multiple Codes: A 2CarPros.com forum thread details a user who accidentally removed their TPS and then experienced P0122 and P1700 codes upon reinstallation. This led to a low, rough idle in gear and harsh transmission shifting. The fix was to properly adjust the sensor with a multimeter to restore the correct idle voltage, which resolved both the engine and transmission controller complaints.

Mechanic-Grade Diagnostic Values

  • TPS Resistance (across specified pins) — expected: 3.0 to 7.0 kΩ (between pins 2 and 4 on a 4-pin sensor).. Failure: A reading significantly outside this range indicates a faulty sensor.
  • TPS Reference Voltage at Connector — expected: Approx. 5.0V DC.. Failure: No voltage or significantly high voltage (e.g., 5.7V was measured in one case) could indicate an ECU or wiring issue.
  • ECU Live Data (via Subaru Select Monitor) — expected: Throttle Opening Angle Sensor voltage should be 0.45 - 0.55V at idle.. Failure: Voltage below 0.45V at idle will trigger P0122.

Hidden / Shadow Codes Worth Checking

  • 31: This is the OBD-I trouble code for a Throttle Position Sensor circuit fault. It serves the same purpose as P0122. (see via On early models (approx. 1994-1995), this can be read by connecting the black "Read Memory" connectors located under the driver's side of the dashboard and observing the long and short flashes of the Check Engine Light.)

Scan Tool Commands That Help

  • Subaru Select Monitor (SSM1): Current Data Display for Engine Control System — This function is used to view the live TPS voltage signal as seen by the ECU. It is essential for accurately adjusting a new or existing TPS to the correct idle voltage (0.45-0.55V) after installation or loosening the screws.

Wiring & Ground Locations

  • Engine Control Module (ECM/ECU) — Located on the passenger side, under the carpet in the footwell, against the firewall.. The ECM provides the 5V reference and ground to the TPS and interprets the return signal. All wiring for the TPS ultimately terminates here, making it a central point for advanced continuity and voltage checks.
  • Transmission Control Module (TCM) — Located under the driver's side dashboard, often described as being behind the brake pedal near the steering column.. On automatic models, the TCM also receives the TPS signal to control transmission behavior. A faulty signal can cause both P0122 (from the ECM) and P1700 (from the TCM).
  • TPS Connector Pinout — On the throttle body.. Some models in this year range may use a 4-pin TPS sensor, but the vehicle's wiring harness may only have 3 wires, leaving one pin on the sensor unused. This is critical to know when testing pins to avoid confusion.

Real Owner Repair Stories

  • LegacyGT.com user 'subikid90' (1997 Legacy GT) — Wacky, inconsistent idle.
    ❌ Tried (didn't work) Identified a frayed wire on the TPS connector plug., Replaced the plug with a used one from a junkyard EJ22 Legacy using butt connectors.
    ✅ What actually fixed it This repair attempt actually CAUSED the P0122 code to appear with a very high idle (1800 RPM). The user noted a slight resistance difference between the original and donor TPS (74.5 ohms vs 84.7 ohms) and a high reference voltage (5.7V). The story highlights that even a seemingly correct repair can fail due to poor splicing or the need for precise re-adjustment, making the code appear when it wasn't present before.

OEM Part Supersession History

  • 22633AA14022633AA210 — Standard part revision/update by the manufacturer.
    Heads up: No known incompatibilities; 22633AA210 is considered a direct replacement for 22633AA140.
  • N/AN/A — Cross-reference
    Heads up: Other part numbers that may cross-reference include 1985001121, 8945287114, 1985001131, TH294, and TH436. Always verify fitment with the specific vehicle before purchasing.

Model Year Variations Within This Range

  • 1997-1998: The EJ22E engine was updated with higher compression pistons and single exhaust port cylinder heads, compared to the dual-port heads on 1995-1996 models. While the core engine block is similar, these changes may correspond with slight sensor and wiring differences.
  • 1994-1998: Early models in this range may use a 4-wire TPS that includes an integrated idle switch, while later models may use a simpler 3-wire sensor. It is critical to verify the pin count on the existing sensor before ordering a replacement.

Diagnostic Flowchart

Other Known Issues on This Vehicle

Issues unrelated to this code that are worth knowing about as an owner of this generation:

  • Head Gasket Seepage 🟡 Low — The EJ22 is known for being far more reliable regarding head gaskets than its 2.5L (EJ25) counterpart. However, after 20+ years, minor external oil or coolant seepage from the head gaskets can occur but rarely leads to catastrophic failure.
  • Oil Separator Plate Leak 🟠 Medium — The original plastic oil separator plate on the back of the engine becomes brittle and cracks over time, causing a significant oil leak often mistaken for a rear main seal leak. Onset is common on high-mileage vehicles. (Ref: An updated metal plate is the standard repair, but no official recall was issued.)
  • Valve Cover Gasket Leaks 🟡 Low — The rubber valve cover gaskets and spark plug tube seals become hard and brittle with age, leading to oil leaks onto the exhaust manifold, which can cause a burning oil smell. This is a very common maintenance item.
  • Rust in Rear Quarter Panels and Subframe 🔴 High — In regions that use road salt, these vehicles are highly susceptible to rust, particularly in the rear wheel arches and around the rear subframe mounting points. This can become a structural safety issue if not addressed.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: A used part is a smart choice for the wiring connector pigtail, as these are often unavailable new and a junkyard part is a perfect source. A complete used throttle body assembly can also be cost-effective if the original is physically damaged.

Donor-vehicle mileage cap: roughly under 100000 miles for the part to have meaningful remaining life.

What to inspect on the donor part:

  • For a connector pigtail, ensure the plastic is not brittle and the locking tab is intact.
  • Gently bend the wires at the base of the connector to check for cracking insulation.
  • For a throttle body, check for smooth operation of the throttle plate and minimal carbon buildup.

OEM-only on this vehicle (don't cheap out):

  • While not strictly 'OEM-only', the Throttle Position Sensor (TPS) itself is a sensitive electronic part. Forum users strongly advise against the cheapest no-name aftermarket sensors, as they can cause persistent issues.

Aftermarket brands forum-validated for this vehicle:

  • Hitachi (often the Original Equipment supplier for Subaru)
  • Standard Motor Products (SMP)
  • NGK/NTK
  • Beck/Arnley

Brands owners have reported issues with on this vehicle:

  • Generic 'value' or store brands are often reported to have lower quality control and may fail prematurely or not perform to OEM specifications for this critical sensor.

Real Owner Stories

Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.

1997 Legacy GT EJ22

Symptoms: Initially had a 'wacky idle' due to a wire on the TPS sensor plug falling apart (down to 3-4 strands). After replacing the plug and sensor, the P0122 code appeared and the car would not idle under 1800 RPM, eventually dropping to 1400 RPM after a long drive.

What fixed it: The owner had to address the wiring repair and properly adjust the sensor position to resolve the high idle and code.

Source hint: LegacyGT.com: [https://www.legacygt.com/topic/118719-tps-sensorp0122/]

2003 Subaru Legacy (EJ-series)

Symptoms: Experienced P0122 and P1700 codes after removing and reinstalling the TPS. Symptoms included a low, rough idle while in gear and harsh transmission shifting.

What fixed it: Properly adjusting the sensor with a multimeter to restore the correct idle voltage, which resolved both the engine and transmission controller complaints.

Source hint: 2CarPros.com: [https://www.2carpros.com/questions/subaru-legacy-2003-subaru-legacy-tps-reset-codes-p0122-and-p1700]

Frequently Asked Questions

What is the correct voltage setting for the TPS on my 1994-1998 Subaru Legacy EJ22?
The Throttle Position Sensor should be adjusted so that the signal wire reads between 0.45V and 0.55V at closed throttle. Many owners aim for exactly 0.5V to ensure a stable idle and proper throttle response.
Why is my automatic transmission shifting harshly along with the P0122 code?
On automatic models, the transmission controller relies on the TPS signal. If the sensor is faulty or incorrectly adjusted, it can trigger a P1700 code and cause harsh or delayed shifting.
Can I use a TPS from a different Subaru model to fix my P0122?
Yes, the 1995-1998 Subaru Impreza with the 2.2L engine uses the same EJ22 engine and electronics, including the TPS, making it a compatible donor for parts like the sensor or connector pigtail.
My TPS wiring is frayed at the connector; do I have to replace the whole harness?
No, you can replace just the connector pigtail. Owners have successfully sourced these from junkyard vehicles (such as other EJ22 Legacys) and spliced them in using butt connectors and heat shrink.
I just replaced my TPS but now my idle is stuck at 1800 RPM. What went wrong?
This is likely due to the sensor not being properly calibrated. The TPS has slotted mounting holes; you must loosen the screws and rotate the sensor until the voltage is within the 0.45-0.55V range at closed throttle.
Is there a TSB for the oil leaks I'm seeing on my EJ22 while diagnosing this code?
While there is no official recall, there is a known issue with the plastic oil separator plate. The standard repair is to install an updated metal plate to resolve significant leaks at the back of the engine.
P0122 Code: Throttle Position Sensor Low Input – Causes & Diagnosis
P0122 Code: Throttle Position Sensor Low Input – Causes & Diagnosis
How to Properly Calibrate Throttle Position Sensor Subaru EJ25: VW Subaru Conversion Tech Tip 007
How to Properly Calibrate Throttle Position Sensor Subaru EJ25: VW Subaru Conversion Tech Tip 007
Causes and Fixes P0122 Code: Throttle Position Sensor/Switch A Circuit Low
Causes and Fixes P0122 Code: Throttle Position Sensor/Switch A Circuit Low
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated May 30, 2026

The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.

Year Coverage
This article covers the OBD-II Code P0122 (Deep Dive) for:
  • Subaru Legacy: 19941995199619971998
In this article
🧭 Diagnostic Flowchart
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part