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 →
🎬 Helpful Videos

OBD-II Code P2090: Exhaust Camshaft Actuator Control Circuit Low (Bank 1)

What P2090 means, why it triggers, and how to fix it like a pro

29 minutes to read
Most Likely Cause
Damaged Wiring, Connectors, or Circuit Shorts
Key Takeaways
  • Code P2090 indicates the exhaust ('B') camshaft actuator circuit on Bank 1 dropped below 9.0 volts, disabling variable valve timing and cutting fuel economy by 10-20%.
  • Low engine oil, a corroded wiring connector, or a failed $50-$150 VVT solenoid cause 90% of P2090 codes.
  • Swap the exhaust and intake solenoids to instantly diagnose the issue; if the code changes to P2088, the solenoid is definitively broken.
  • Driving with P2090 is safe for short trips, but ignoring it for over 6 months destroys the catalytic converter, adding up to $2,500 in repair costs.
P2090 means the Engine Control Module (ECM) detects low voltage in the electrical circuit for the 'B' (exhaust) camshaft position actuator on Bank 1. This prevents the actuator from adjusting the camshaft, hurting engine performance and fuel efficiency. The ECM triggers the code when voltage drops below a specific threshold (e.g., 9.0V) for several seconds.

What Does P2090 Mean?

A close-up of an exhaust camshaft actuator solenoid installed on an engine cylinder head.
The P2090 code specifically targets the 'B' (exhaust) camshaft actuator on Bank 1 of the engine.

P2090 means the Engine Control Module (ECM) detects low voltage in the electrical circuit for the 'B' (exhaust) camshaft position actuator on Bank 1. This prevents the actuator from adjusting the camshaft, hurting engine performance and fuel efficiency. The ECM triggers the code when voltage drops below a specific threshold (e.g., 9.0V) for several seconds.

Technical definition: The official SAE/OBD-II definition for P2090 is: 'B' Camshaft Position Actuator Control Circuit Low Bank 1. This indicates the ECM commanded the actuator to change the camshaft angle, but detected insufficient voltage in the control circuit to perform the action.

Can I Drive With P2090?

Yes, But With Caution. Yes, you can drive the vehicle short-term; this fault rarely causes immediate catastrophic engine damage. However, continued driving causes poor performance, rough idling, power loss, and a 10-20% drop in fuel economy. Ignoring the code for hundreds of miles stretches the timing chain or damages the catalytic converter from unburnt fuel, adding $800-$2500 to the repair bill, and guarantees a failed emissions test.

Common Causes

Side-by-side comparison of a clean, new VVT solenoid versus a failed solenoid covered in thick oil sludge and debris.
Comparison between a healthy VVT solenoid (left) and one failed due to oil sludge (right), a common cause of P2090.
  • Damaged Wiring, Connectors, or Circuit Shorts (Very Common) — The wiring harness or connector pins leading to the camshaft actuator solenoid degrade from engine heat, vibration, or oil leaks. Corrosion, loose connections, or a short to ground create high resistance, dropping circuit voltage and instantly triggering the code.
  • Faulty Camshaft Position Actuator Solenoid (VVT Solenoid/OCV) (Common) — The Variable Valve Timing (VVT) solenoid (or Oil Control Valve) is an electronic valve controlling oil flow. An internal failure, such as a burnt-out coil or seized piston, draws excessive current or creates a short, directly lowering the circuit's voltage.
  • Low or Dirty Engine Oil (Common) — The VVT system is hydraulic. Low or sludge-filled oil clogs the actuator or causes it to stick. This forces the solenoid to work harder, increasing electrical draw and triggering a low voltage condition.
  • Blown Fuse or Faulty Relay (Rare) — VVT actuators often share a power supply circuit with other components. A short in an unrelated part, like a fuel pump module, blows a shared fuse, cutting power to the camshaft actuator and triggering a low voltage code.
  • Stretched or Misaligned Timing Components (Less Common) — This code appears immediately after a timing chain or belt replacement if components are misaligned. A stretched timing chain forces the camshafts out of sync, causing the PCM to flag a control error as it struggles to compensate.
  • Weak Battery or Failing Alternator (Rare) — If the overall vehicle voltage drops below 12V while running, the ECM lacks the power to supply the actuator circuit, logging a low-voltage fault. This indicates a systemic charging issue rather than a localized VVT circuit problem.
  • Failing Powertrain Control Module (PCM) (Very Rare) — The internal circuit driver (MOSFET) inside the engine's computer that sends power to the actuator fails, providing insufficient voltage even when the wiring and actuator are perfect. This is the absolute last consideration.

Symptoms

A vehicle dashboard showing the check engine light illuminated while the engine is running.
An illuminated check engine light is the most common symptom, often accompanied by a rough or fluctuating idle.
  • Check Engine Light On — The Malfunction Indicator Lamp (MIL) illuminates on your dashboard.
  • Rough Engine Idle — The engine shakes, vibrates, or sounds uneven, and the RPMs fluctuate noticeably when the car is stopped.
  • Reduced Engine Power and Hesitation — Acceleration feels sluggish, and the car hesitates or stumbles, especially when first pressing the gas pedal or under load.
  • Worse Fuel Economy — Because the engine cannot optimize valve timing for efficiency, gas mileage drops by 10-20%.
  • Engine Stalling — The engine stalls completely, particularly at low RPMs such as when coming to a stop.
  • Rattling Noise on Startup — A failing actuator is associated with engine rattles, particularly on a cold start in some Honda and Toyota models.

Diagnostic Flowchart

Tap your situation to follow the diagnostic path that matches what you're seeing on this code.

What best describes your current situation with the P2090 code?
What kind of maintenance was recently performed on the vehicle?
→ Check the oil level to ensure it is not over/underfilled. Inspect the area around the oil filter and filler cap for bumped or disconnected sensors. The oil pressure sensor connector is a common culprit.
→ Return to the shop or re-inspect your work. The most likely cause is a connector that wasn't fully seated or was damaged during the repair. Verify the correct part was used if anything was replaced.
Which additional trouble codes are present on your code scanner?
→ Diagnose and fix the circuit code (P2090) first. An electrical fault preventing the solenoid from working causes a performance fault. If P2090 is fixed and P0014 remains, the issue is mechanical (phaser, timing).
→ Address P2090 as the likely cause of the misfires. Incorrect exhaust valve timing directly impacts combustion on that bank. Fixing the VVT circuit problem resolves the misfires.
Which specific vehicle make and engine are you currently diagnosing?
→ Strongly suspect clogged banjo bolt filters in the oil supply lines to the OCVs. Inspect and clean/remove these filters before spending money on new solenoids. 🎬 Watch: How to remove clogged Subaru banjo bolt screens This is a very common Subaru-specific failure.
→ This is a classic symptom of a failed VVT solenoid on this engine. Given the high failure rate, if the oil is clean and full, replacing the solenoid is a high-probability fix.
What were the results of your basic electrical circuit tests?
→ The solenoid coil is likely good. Focus on the wiring. Check for voltage at the harness connector with the key on (should be ~12V). If voltage is good, the problem is intermittent or a bad connection.
→ The solenoid has an internal electrical failure (open or shorted coil). Replace the solenoid. This is a definitive failure.
→ There is no power getting to the circuit. The problem is upstream. Check for blown fuses or faulty relays related to the VVT or ECM system.
→ Perform a 'swap test'. Move the suspect exhaust solenoid to the intake position and clear codes. If the code changes to P2088 (Intake Circuit Low), you have 100% confirmed the solenoid is the faulty component.

Common Fixes & Costs

  • Engine Oil and Filter Change — Parts: $30-$75, Labor: $50-$100, ~0.5 hr book time (DIY)
  • Replace Camshaft Position Actuator Solenoid — Parts: $40-$150 (Aftermarket), $100-$250 (OEM), Labor: $50-$150, ~0.8 hr book time (Intermediate)
    Chevrolet/GMC (2.4L Ecotec): OEM 12679100 (supersedes 12655421, 12646784) (Alt: Dorman 917-216, Standard Motor Products VVT199, Delphi VVS1755)
    Subaru (WRX FA20, Forester XT): OEM 10921AA241 or 10921AA23B (Alt: Denso (OEM supplier), Walker Products 720-001)
    BMW (N52/N54 Engines): OEM 11367585425 (Alt: Bosch (OEM supplier) 0232109064, Vaico V20-1327, Pierburg 7.06117.02.0)
  • Repair or Replace Wiring Connector — Parts: $15-$50, Labor: $75-$200, ~1 hr book time (Intermediate)
  • Clean or Replace VVT Banjo Bolt Filters — Parts: $5-$20, Labor: $100-$250, ~1.5 hr book time (Intermediate)
  • Replace Powertrain Control Module (PCM) — Parts: $600-$1200, Labor: $200-$300, ~1.5 hr book time (Professional)

Used vs. New Parts: Buying Guide

When a used part is worth it: For a common fix like the VVT solenoid, a used OEM part from a reputable salvage yard with a warranty is a cost-effective option, especially for older, high-mileage vehicles. It is preferable to a new, non-brand-name aftermarket part.

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

Donor quality checklist:

  • Verify the part comes with at least a 30-90 day warranty.
  • Ensure the part number matches exactly, including any superseded numbers.
  • Visually inspect the part for corrosion, damage to the connector, or signs of heavy sludge.

Decision logic:

  • If The vehicle is under 100,000 miles and you plan to keep it long-term → Buy a new OEM or OEM-supplier (e.g., Bosch, Denso) part. The reliability is worth the extra cost.
  • If The vehicle is over 150,000 miles and the budget is the primary concern → A tested, used OEM solenoid is a reasonable choice. Avoid if the cost savings are less than 50% compared to a new part.
  • If The part is a cheap, unbranded aftermarket solenoid → Avoid. These have a high failure rate and are not worth the labor to install.

Warranty tradeoff: Used parts typically offer a 30-90 day part-only warranty. New aftermarket parts range from 1-year to lifetime warranties. New OEM parts usually carry a 1-year warranty.

Worst-case if a used part fails: $150-$300 if a used or cheap aftermarket solenoid fails shortly after installation, requiring repeat labor costs plus the price of another part.

What Happens If You Wait — Timeline

  1. 0-1 month: Check Engine Light is on. You notice a slight decrease in fuel economy or a slightly uneven idle when cold, but often there are no other perceivable symptoms. (MPG impact: 0-5%% · Added cost: $0-$25 in wasted fuel)
  2. 1-3 months: Symptoms become consistent. Rough idle is noticeable, acceleration feels sluggish, and the engine hesitates. Fuel economy loss is clear. (MPG impact: 10-20%% · Added cost: $50-$150 in wasted fuel)
  3. 3-6 months: The engine consistently runs with an improper air/fuel mixture due to incorrect valve timing. This puts significant thermal stress on the catalytic converter, causing it to degrade and lose efficiency. A P0420 code appears. (MPG impact: 15-25%% · Added cost: $1200-$2800 (Catalytic converter replacement is now likely needed))
  4. 6+ months: Catastrophic failure of the catalytic converter is imminent. Sustained inefficient operation increases engine sludge, which blocks oil passages. The constant struggle of the timing system to compensate puts additional stress on the timing chain and guides. (MPG impact: 20-30%% · Added cost: $1500-$4000+ (Catalytic converter plus potential timing component repairs))

Cost of Not Fixing It

  • 0-1 month: Noticeable drop in fuel economy (10-20%), rough idle, and sluggish acceleration. Failed emissions test. (Added cost: Negligible, other than increased fuel costs.)
  • 1-6 months: Incorrect valve timing leads to a richer fuel mixture, causing the catalytic converter to overheat and degrade. This triggers a P0420 (Catalyst System Efficiency Below Threshold) code. (Added cost: $1200-$2800 for catalytic converter replacement.)
  • 6+ months: Sustained poor combustion and timing increases engine sludge, carbon buildup on valves, and places extra stress on timing components. This accelerates timing chain wear. (Added cost: $1500-$3000+ for timing chain and component replacement.)

Diagnosis Steps

A technician using a digital multimeter to test the electrical resistance of a camshaft actuator solenoid.
Testing the solenoid's internal resistance and circuit voltage is a critical step in diagnosing P2090.
  1. Check Engine Oil Level and Condition
    Before touching any tools, check your engine oil dipstick. Low or dirty oil is a primary cause of VVT problems. If the oil is low, top it off. If it is dark, sludgy, or past its service interval, an oil and filter change is your first diagnostic step.
    Tools: Rag or paper towel (Beginner)
  2. Visual Inspection of Wiring and Connectors
    Locate the 'B' (exhaust) camshaft position actuator solenoid on Bank 1. Carefully inspect the electrical connector and the visible wiring harness for corrosion, oil contamination, loose pins, burns, chafing, or brittle insulation.
    Tools: Flashlight, Mirror (Beginner)
  3. Check Fuses and Relays
    Consult your vehicle's owner's manual to locate all fuses related to the VVT system, camshaft sensors, or Engine Control Module. Visually inspect the fuses and test relevant relays to rule out a simple power supply issue shared across circuits.
    Tools: Owner's Manual, Fuse Puller (Beginner)
  4. Scan for Codes and Review Live Data
    Use an OBD-II scanner to confirm P2090 is present. View live data PIDs for 'Camshaft Actuator – Bank 1 – Voltage'. With the engine idling, a reading below 9.0V confirms a low circuit condition, whereas a healthy circuit reads between 9.5V and 12.5V. Observe 'Commanded vs. Actual' camshaft position PIDs; a persistent discrepancy points to a non-responsive system.
    Tools: Advanced OBD-II Scanner (Intermediate)
  5. Perform Solenoid Swap Test (If Applicable)
    On many engines, the intake and exhaust solenoids are identical. Swap the Bank 1 exhaust ('B') solenoid with the Bank 1 intake ('A') solenoid. Clear the codes and drive. If the fault code changes to P2088 ('A' Camshaft Position Actuator Control Circuit Low), the solenoid is faulty. If P2090 returns, the problem is in the wiring or PCM.
    Tools: Basic hand tools (e.g., 10mm socket) (Intermediate)
  6. Test the Actuator Solenoid's Resistance
    Disconnect the actuator's electrical connector. Use a multimeter set to Ohms (Ω) to measure the resistance between the two pins on the solenoid. Compare your reading to the manufacturer's specification (typically 7-15 Ohms). An infinite reading (OL) indicates an open circuit, while a reading under 5 Ohms indicates a short circuit. Any reading outside the specified range means the solenoid is bad.
    Tools: Multimeter, Service Manual (Intermediate)
  7. Test the Control Circuit Voltage and Ground
    With the solenoid disconnected and the ignition key 'On' (engine off), use a multimeter to test the harness-side connector. One pin must have a reference voltage, typically battery voltage (around 12.6V). The other is the control wire from the PCM. Check for voltage and test for a good ground. An absence of reference voltage points to a wiring, fuse, or relay issue upstream.
    Tools: Multimeter, Service Manual (Advanced)
  8. PRO TIP: Check for Clogged Banjo Bolt Filters (Subaru)
    On Subaru engines with AVCS, tiny mesh filters reside inside the banjo bolts supplying oil to the OCVs. These filters clog with sludge, starving the solenoid of oil pressure and causing performance codes. Before replacing a solenoid, remove and inspect these banjo bolts and clean or replace the filters.
    Tools: Socket set, New banjo bolt washers (Intermediate)
  9. PRO TIP: Analyze the Actuator Control Signal with an Oscilloscope
    For definitive diagnosis, use an oscilloscope to view the control signal. Back-probe the control wire at the actuator. You will see a square wave (PWM signal). A healthy signal shows clean transitions from 0V to battery voltage. A low voltage code shows a waveform with reduced amplitude (e.g., peaking at 6V instead of 12V), pointing directly to a wiring issue or a failing PCM driver.
    Tools: Oscilloscope, Back-probe kit, Service Manual (Professional)

When This Code Triggers (Freeze-Frame Conditions)

  • Engine Coolant Temp: 180-210°F (Fully warmed up)
  • RPM: 1200-2500 (Light acceleration or steady cruise)
  • Engine Load: 25-60% (The fault sets when the VVT system is commanded to make a significant timing adjustment under moderate load.)
  • Vehicle Speed: 20-55 mph (City or highway driving)

Related Codes

  • P0013 — This is the generic OBD-II code for 'B' Camshaft Position - Actuator Circuit (Bank 1). P2090 is a more specific version, explicitly indicating a 'low voltage' condition. P0013 is a broader fault meaning an open, short, or general electrical malfunction.
  • P2088 — This is the identical fault, but for the 'A' (intake) camshaft on Bank 1. The components are often physically identical. Swapping the intake and exhaust solenoids is a great diagnostic trick; if the code changes from P2090 to P2088, the solenoid is confirmed faulty.
  • P2094 — This code is for 'B' Camshaft Position Actuator Control Circuit Low Bank 2. This indicates the same low voltage problem but on the exhaust camshaft of the opposite engine bank (on V6/V8 engines).
  • P0011 / P0014 — These are performance codes for 'Camshaft Position - Timing Over-Advanced or System Performance'. The circuit code (P2090) indicates an electrical problem preventing control, while the performance code (P0011/P0014) indicates the mechanical timing is consequently incorrect. Fix the circuit code first.
  • Misfire Codes (P0300-P0308) — Incorrect camshaft timing severely disrupts the combustion process, leading to intermittent or constant engine misfires on the affected cylinder bank. If you have P2090 along with a P0301-P0304, fixing the P2090 fault resolves the misfire.

Climate & Environmental Factors

  • Cold Weather: Low ambient temperatures increase the viscosity (thickness) of engine oil. This puts extra strain on the VVT system during cold starts, causing sluggish solenoid operation and triggering codes. Using the manufacturer-specified oil weight is critical.
  • High Humidity / Salty Climates: Moisture and salt in the air accelerate corrosion on electrical connectors, pins, and wiring harnesses. Since a voltage drop from high resistance is a primary cause of P2090, vehicles in these climates are highly susceptible to this code.

How to Talk to a Mechanic About This Code

Say this: "I have a P2090 code and I'd like to schedule a diagnostic. I want to make sure the technician tests the basics - wiring, solenoid resistance, and power at the connector - before recommending a part. Can you confirm your diagnostic process for electrical codes like this?"

This signals you understand P2090 is a circuit code and that the most common causes are electrical, not a major mechanical failure. It directs the shop to perform a proper diagnosis instead of just replacing the most likely part (the solenoid), saving you money if the problem is just a bad wire.

Avoid saying:

  • 'My check engine light is on, can you look at it?'
  • 'My car is running rough, just fix whatever is wrong.'
  • 'I think I need a new camshaft sensor.'

Questions to ask before authorizing the repair:

  • What were the specific voltage and resistance readings you got from the solenoid and its circuit?
  • Did you check for power and ground at the harness connector? What were the results?
  • Can you show me the damaged wire or corroded connector if that's the issue?
  • What is the warranty on the recommended part and the labor?

Where to Take It: Dealer vs Independent vs Chain

  • Dealer: A safe but expensive choice. Best if you suspect a complex issue like a PCM or have warranty coverage.
    Best for: Vehicles still under a powertrain or emissions warranty., Complex electrical issues on German brands (BMW, Audi) where specific fuse/relay knowledge is key., If a PCM replacement and programming is required.
    Downsides: Highest labor rates, typically 1.5-2x more than an independent shop., Often recommends replacing an entire assembly when only a small component has failed. (Typical cost: +50% vs. baseline)
  • Independent Shop: Best fit for most situations. An experienced independent technician diagnoses and repairs a P2090 circuit fault efficiently and cost-effectively.
    Best for: Most out-of-warranty vehicles., Common codes like P2090 with well-known fixes on popular makes (GM, Ford, Subaru)., Cost-conscious owners who want a good balance of expertise and value.
    Downsides: Quality and diagnostic capabilities vary greatly. Vet shops by looking for ASE certifications and good reviews. (Typical cost: +0% vs. baseline)
  • Chain Shop: Acceptable only for an oil change. AVOID for diagnosing the actual P2090 electrical fault, as misdiagnosis is highly likely.
    Best for: The first diagnostic step: an oil and filter change., Checking or replacing a battery if you suspect a systemic low voltage issue.
    Downsides: Technicians often lack the in-depth electrical diagnostic skills for circuit testing., High pressure to upsell services; often recommends replacing parts without proper diagnosis. (Typical cost: -10% vs. baseline)

When to Walk Away From the Repair

If the estimated repair cost exceeds 40-50% of the car's private-party value (from a source like Kelley Blue Book), seriously consider selling or trading in the vehicle instead of repairing it.

  • Car worth $5000, fix is $450: Fix it. This is a standard repair cost and is well below the threshold.
  • Car worth $4000, fix is $1500: Borderline. The repair cost is approaching 40% of the car's value. Get a second opinion to confirm a costly diagnosis (like a PCM) before proceeding.
  • Car worth $2500, fix is $1500: Walk away. The repair cost is over 50% of the vehicle's value. It is not a sound financial decision.

What Scan Tool You Need for This Code

A handheld OBD-II scan tool connected to a vehicle showing diagnostic trouble codes.
A scan tool with live data capabilities allows you to monitor the commanded vs. actual camshaft position in real-time.

Minimum: A code reader that displays live sensor data. For P2090, you need to see PIDs like 'Commanded vs. Actual Camshaft Position' and ideally the circuit voltage.

A $20 code reader only tells you that code P2090 is present. It cannot show you the live data needed to determine if the problem is the solenoid, the wiring, or the computer, meaning you will be replacing parts based on a guess.

Budget: BlueDriver Pro Scan Tool (~$100) — Connects to your phone and displays live data streams, including camshaft and engine timing PIDs. This is enough to see if the system is responding to commands, which helps narrow down the problem before paying for a professional diagnosis.

Mid-range: Foxwell NT510 Elite (~$190) — Offers bidirectional control, allowing you to command the VVT solenoid to activate directly from the scanner. This is a powerful diagnostic step: if you command the solenoid and nothing happens, you then test the wiring to confirm if the fault is the part or the circuit.

Professional: Autel MaxiCOM MK808S (~$450) — Provides full bidirectional control, comprehensive live data graphing, and special functions. It runs active tests on the entire VVT system and offers OE-level diagnostics that pinpoint the exact point of failure in the circuit, saving significant time and preventing misdiagnosis.

Rent vs buy: For P2090, the free rental scanners at auto parts stores are often too basic. If you plan to do more than just read the code, buying a budget pick like the BlueDriver is a worthwhile investment for any DIYer.

How to Clear the Code After You Fix It

  1. Use an OBD-II scan tool to clear the P2090 code.
  2. Perform a complete OBD-II drive cycle to allow readiness monitors to run.
  3. Reconnect the battery (this clears codes but also resets all vehicle memory and readiness monitors).

Drive cycle (~30 minutes): A general drive cycle includes a cold start (engine temp below 122°F), a 2-3 minute idle, 10-15 minutes of mixed city/highway driving including steady cruising (e.g., 55 mph for 3-5 minutes) and coasting decelerations, followed by another idle period.

Readiness monitors affected: Catalyst Monitor, Evaporative System Monitor, Oxygen Sensor Monitor

Before emissions retest: drive at least 100 miles to fully set monitors.

Watch out for:

  • Clearing the code with a scanner without performing a drive cycle results in a 'Not Ready' status at an emissions test.
  • If the underlying electrical fault isn't fixed, the code returns as soon as the ECM re-tests the circuit, often within minutes of starting the engine.
  • Disconnecting the battery clears codes but erases adaptive memory for the transmission and fuel trims, causing temporary poor performance.

Will This Fail Emissions / State Inspection?

Yes — this code typically fails an OBD-II emissions inspection.

  • California: An active P2090 code is an automatic failure for a smog check. After repair, a full OBD-II drive cycle must be completed to set all readiness monitors before the vehicle can be re-tested.
  • New York: The NYS DMV vehicle inspection includes an OBD-II scan. A check engine light with code P2090 results in an immediate emissions failure.
  • Texas: In the 17 counties requiring emissions testing, an active P2090 code causes the vehicle to fail the OBD-II portion of the inspection. The check engine light must be off and readiness monitors must be set to 'Ready'.

Most Commonly Affected Vehicles

  • Chevrolet / GMC Equinox, Terrain, Cruze, HHR (2010-2017) — Extremely common on models with the 2.4L Ecotec engine. The intake and exhaust solenoids are easily accessible on top of the engine and are a frequent failure point, often causing stalling. The solenoids were updated multiple times; using the latest part number is required.
  • Subaru Impreza WRX/STI, Forester, Legacy (2008-2021) — P2090 and related AVCS codes are common. The cause is often a failing Oil Control Valve (OCV) or clogged banjo bolt filters that restrict oil flow. Owners often replace all four OCVs as preventative maintenance.
  • BMW X3, 3-Series, 5-Series (2007-2013) — On N52/N54 engines, this code is caused by the solenoid (VANOS solenoid) or wiring. In a documented case on a 2007-2010 X3, P2090 was caused by a blown fuse for the fuel pump module, which shared a circuit with the VVT actuators.
  • Mazda 3, 6, CX-5 (2014-2018) — Owners report the intermittent appearance of code P2090 on SkyActiv engines. The cause is often related to wiring or the oil control valve itself. Check for Technical Service Bulletins (TSBs) related to VVT operation.
  • Cadillac SRX, ATS (2010-2016) — The Cadillac SRX with the 3.0L or 3.6L V6 commonly experiences this code, directly related to the same solenoid and wiring issues as their Chevrolet counterparts.
  • Hyundai / Kia Sonata, Optima, Santa Fe, Sorento (2011-2019) — VVT system faults are frequent on the 2.4L GDI engines. While performance codes are more common, circuit codes like P2090 occur due to failing solenoids or sludge buildup from oil consumption issues.
  • Ford F-150, Edge, Explorer, Focus (2011-2018) — On engines like the 5.0L V8 and EcoBoost V6, the VCT (Ford's term for VVT) solenoids are a known failure item. P2090 points to the exhaust solenoid on Bank 1. A relearn procedure is required after replacement.
  • Honda Accord, CR-V, Civic Si (2008-2015) — While more known for the VTC actuator rattle (a mechanical issue), Honda's K-series engines log circuit codes. The issue is often the VTC oil control solenoid valve, which is separate from the actuator gear. Always use OEM parts for Honda VTC components.

Manufacturer-Specific Notes

  • General Motors (Chevrolet, GMC, Cadillac): On GM's 2.4L Ecotec engines, the intake (P2088) and exhaust (P2090) solenoids fail frequently, causing stalling at idle. They are visually distinct: the intake solenoid has a gray or light-colored connector, while the exhaust solenoid has a black connector. They are not interchangeable.
  • Subaru: Subaru's AVCS system uses small, thimble-shaped filters inside the banjo bolts for the oil feed lines to the OCVs. These filters are a major failure point and clog with debris, causing a wide range of AVCS codes. Many experienced technicians recommend removing them entirely during reassembly if oil is kept clean.
  • Ford: After replacing a VCT solenoid or the entire transmission on many modern Fords, a 'Transmission Characterization Update' and 'Transmission Adaptive Tables Relearn' procedure is required using a diagnostic tool like FORScan. Failing to do this results in erratic VCT operation.
  • Honda: On K-series engines, do not confuse the VTC Oil Control Solenoid (which causes circuit codes) with the VTC Actuator (which causes the famous startup rattle). They are separate components. When replacing either, use only OEM Honda parts, as aftermarket versions fail prematurely.
  • BMW: BMW issued a limited warranty extension for the VANOS adjustment units (the mechanical gears) to 10 years/unlimited mileage on many popular 2000s-2010s models with N51/N52 engines. While this doesn't cover the solenoid itself, mechanical VANOS gear issues cause a variety of timing-related fault codes.

Real Owner Stories

2014 Subaru WRX at 92K miles - A Misdiagnosis Story

Owner experienced recurring timing-related codes (P0021, then P0011) after a dealer engine rebuild. The dealer replaced multiple timing components on Bank 2, but the code returned.

What they tried:

  1. Dealer replaced multiple timing components under warranty, but the code persisted.
  2. Dealer quoted $2900 to tear down the cylinder head, suspecting a deeper mechanical issue.
  3. Owner, suspecting a known Subaru issue, decided to self-diagnose.

Outcome: The owner found the banjo bolt filter for the Bank 2 AVCS oil line was clogged and had been sucked into the oil passage. After removing it, the P0021 code was resolved. Months later, a P0011 code appeared for Bank 1, and the owner found the same issue with the other banjo bolt filter, resolving the problem by removing it.

Lesson: On Subaru models, always suspect clogged banjo bolt filters for any AVCS/VVT codes (like P2090, P0011, P0021). This is a well-documented issue that is often overlooked by shops, and inspecting them saves thousands in misdiagnosis.

2012 Chevy Equinox at 115K miles - The Classic Solenoid Failure

Vehicle began to idle very roughly and frequently stalled when coming to a stop. The check engine light came on with code P2090.

What they tried:

  1. Checked engine oil level, which was full and clean.
  2. Visually inspected the wiring connector for the exhaust VVT solenoid (black connector on the 2.4L Ecotec) and found no visible damage.

Outcome: Given the high failure rate of these specific solenoids on GM 2.4L engines, the owner replaced the exhaust camshaft position actuator solenoid (Part #12679100). The repair took 20 minutes and cost about $50 for an OEM part. This immediately fixed the rough idle and stalling, and the code did not return.

Lesson: For vehicles like the Chevy Equinox with the 2.4L engine, P2090 is most commonly a direct failure of the solenoid itself. It is an inexpensive and accessible part, making it a logical and high-probability fix after checking the oil.

2008 BMW 328i (E90) at 130K miles - The Unusual Electrical Cause

Car developed a rough idle and the check engine light came on. Scan revealed VANOS-related codes, including a circuit low code equivalent to P2090.

What they tried:

  1. Swapped the intake and exhaust VANOS solenoids. The code did not follow the solenoid, indicating the solenoid was likely good.
  2. Cleaned both solenoids and their electrical connectors, but the fault for the exhaust circuit persisted.

Outcome: After consulting forums, the owner checked the engine electronics box (E-Box) under the hood and found a blown 30A fuse that powers the VANOS system. Replacing the fuse resolved the code.

Lesson: Do not assume the most expensive part is the cause. On complex vehicles like BMWs, circuit codes are caused by hidden fuses or shared power sources. Always test the circuit for power before replacing solenoids or the PCM.

How to Prevent This Code From Triggering

  • Use high-quality full synthetic oil that meets manufacturer specifications (Every oil change) — Full synthetic oil is more resistant to breakdown and sludge formation, which is a primary cause of VVT solenoid and actuator failure. Clean oil ensures proper hydraulic pressure for the VVT system to operate.
  • Adhere to severe service oil change intervals (Every 3,000-5,000 miles) — If you do a lot of short-trip, stop-and-go driving, your engine fails to reach full operating temperature, leading to condensation and contaminant buildup in the oil, accelerating sludge formation.
  • For Subaru turbo models (pre-~2009), proactively remove banjo bolt filters (During next major service (e.g., timing belt change)) — These tiny filters were designed to catch manufacturing debris but clog over time, starving the AVCS system of oil. Removing them is a widely accepted preventative measure to avoid future codes and potential turbo failure.
  • Clean electrical connectors for VVT solenoids (Every 30,000 miles or during tune-ups) — The P2090 code is a circuit fault. Periodically disconnecting, spraying with electrical contact cleaner, and reconnecting the solenoid connectors prevents corrosion and high resistance from building up, especially in humid climates.

Frequently Asked Questions

What are common misdiagnosis mistakes for P2090?

The most common mistake is immediately replacing the camshaft actuator solenoid without testing the circuit. Technicians often overlook simple causes like a blown fuse on a shared circuit, a poor ground connection, or clogged oil passages. Always test the wiring and power supply first.

My car has P2090 but runs fine. Can I ignore it?

You must not ignore it. Even without noticeable symptoms, the VVT system stops adjusting as intended, leading to decreased fuel efficiency and a failed emissions test. The underlying electrical issue also worsens suddenly, potentially leaving you stranded.

What is the 'B' camshaft and 'Bank 1'?

'Bank 1' is the side of the engine containing cylinder #1. 'B' universally refers to the exhaust camshaft, which controls the valves letting exhaust gases out. Conversely, 'A' refers to the intake camshaft.

Can I fix P2090 myself?

Yes, many common causes are highly DIY-friendly. Checking the oil, inspecting fuses, and cleaning the actuator connector are simple first steps. Replacing the actuator solenoid itself is an intermediate-level job requiring basic hand tools.

Will an oil change definitely fix a P2090 code?

An oil change resolves the issue only if low or sludgy oil prevents proper hydraulic function. If the cause is a failed solenoid, a bad wire, or a blown fuse, an oil change will not fix the code.

Is the camshaft position SENSOR the same as the ACTUATOR solenoid?

No, they are different parts working together. The sensor reads the camshaft's position, while the actuator (solenoid) physically changes the camshaft's timing. P2090 specifically points to the actuator's control circuit, not the sensor.

How much does it cost for a mechanic to diagnose this code?

Most repair shops charge a diagnostic fee ranging from $125 to $185 to identify the root cause. This fee covers the first hour of labor and is usually credited toward the final repair cost.

What does a VVT solenoid PWM signal look like?

It is a digital square wave signal. The PCM rapidly switches the circuit between ground (0V) and battery voltage (12V) to control the solenoid's position. A 'low circuit' code triggers when this waveform has a lower-than-expected voltage peak.

Key Takeaways

  • Code P2090 indicates the exhaust ('B') camshaft actuator circuit on Bank 1 dropped below 9.0 volts, disabling variable valve timing and cutting fuel economy by 10-20%.
  • Low engine oil, a corroded wiring connector, or a failed $50-$150 VVT solenoid cause 90% of P2090 codes.
  • Swap the exhaust and intake solenoids to instantly diagnose the issue; if the code changes to P2088, the solenoid is definitively broken.
  • Driving with P2090 is safe for short trips, but ignoring it for over 6 months destroys the catalytic converter, adding up to $2,500 in repair costs.
Simple Tests - Camshaft Position Actuator Solenoids - Chevy Holden Ecotec Engine - Problem Fixed
Simple Tests - Camshaft Position Actuator Solenoids - Chevy Holden Ecotec Engine - Problem Fixed
Solution!  Subaru P2088 P2090 P2092 P2094 Diagnosis and Repair
Solution! Subaru P2088 P2090 P2092 P2094 Diagnosis and Repair
How to replace BMW Vanos Solenoid
How to replace BMW Vanos Solenoid
Replacing BMW Vanos Solenoids [DIY]
Replacing BMW Vanos Solenoids [DIY]
BMW Vanos Solenoids DIY!
BMW Vanos Solenoids DIY!
diy BMW Vanos Solenoid Replacement and Cleaning
diy BMW Vanos Solenoid Replacement and Cleaning
How To Change Your VANOS Solenoids -- BMW E90 Maintenance -- Part 2
How To Change Your VANOS Solenoids -- BMW E90 Maintenance -- Part 2
Subaru Banjo Bolt Filter Removal - Turbo Line - Ej255/Ej257 - STI/WRX
Subaru Banjo Bolt Filter Removal - Turbo Line - Ej255/Ej257 - STI/WRX
Oil Change Tips and Banjo Bolts
Oil Change Tips and Banjo Bolts
Subaru Turbo / AVCS Union Screws
Subaru Turbo / AVCS Union Screws
Subaru  Service series Part 12 AVCS banjo bolt screen removal 2004 see description TSB SVTWRC
Subaru Service series Part 12 AVCS banjo bolt screen removal 2004 see description TSB SVTWRC
This Tiny Filter Can Ruin Your STI... REMOVE THIS NOW!
This Tiny Filter Can Ruin Your STI... REMOVE THIS NOW!
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 Jul 21, 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.

In this article
🎬 Helpful Videos
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