P0017 on 2020-2022 Subaru Outback: Crank/Cam Correlation Causes & Fixes
For a 2020-2022 Subaru Outback, code P0017 is frequently caused by a software issue. The most common fix is an Engine Control Module (ECM) reprogram at a dealership, as specified in Subaru TSB #09-120-24R. Before pursuing costly repairs, check your engine oil level and condition, as low or dirty oil can also trigger this code.
- First, check your engine oil. Low or dirty oil is a simple but common cause for P0017.
- Do not immediately replace sensors. The most likely fix for a 2020-2022 Outback is a dealer-installed ECM software update per TSB #09-120-24R.
- If a software update and oil change don't fix the code, the next most probable cause is a faulty Bank 1 exhaust Oil Control Valve (OCV).
- This code indicates a timing correlation issue, not necessarily a bad sensor. Replacing sensors is unlikely to fix the problem.
What's Unique About the 2020-2022 Subaru OUTBACK
For this specific generation of Subaru Outback, the P0017 code is often not a sign of mechanical failure. Subaru has issued Technical Service Bulletins (TSBs) acknowledging that the code can be triggered by a software sensitivity issue within the Engine Control Module (ECM). Therefore, unlike on many other vehicles, the first step after checking the oil is often a trip to the dealer for a software update, not immediate parts replacement. This TSB, #09-120-24R, also covers codes P0016, P0018, and P0019.
Diagnostic Flowchart
Tap your situation to follow the diagnostic path that matches what you're seeing on this vehicle.
Symptoms You May Notice
- Check Engine Light is on
- Rough or unstable idle
- Reduced engine power and acceleration
- Poor fuel economy
- Engine may hesitate or stall
- Engine stumbles during a cold start
- Rattling sounds from the engine
- Replacing the camshaft position sensor first. A correlation code like P0017 indicates a timing *discrepancy* that both the cam and crank sensors are reporting correctly. The issue is usually the mechanical or hydraulic link between them 🎬 Watch: A helpful breakdown of common P0017 causes and fixes. (oil, OCV, phaser, chain), not the sensor itself.
Most Likely Causes
- Engine Control Module (ECM) Software Issue 🔴 High Probability → Shop Engine Control Module (ECM) Subaru issued TSBs #09-120-24 and the revised #09-120-24R specifically to address this code with a software update, indicating it's a known issue with overly sensitive diagnostic logic.
How to confirm: A Subaru dealership or a qualified shop with a Subaru Select Monitor (SSM) can check if the ECM has the latest software version by referencing the TSB.
Typical fix: Reprogramming the ECM with the updated software file provided by Subaru. This is a dealership-level service.
Est. part cost: $0 - Low or Dirty Engine Oil 🟡 Medium Probability The Variable Valve Timing (VVT) system, which controls camshaft timing, is hydraulically operated and highly sensitive to oil pressure and cleanliness. Sludge or metal shavings can clog passages and filter screens for the OCVs.
How to confirm: Check the engine oil dipstick for low level and inspect the oil's color and consistency on the dipstick or a paper towel. This should always be the first step.
Typical fix: Perform an oil and filter change using the manufacturer-specified oil viscosity (e.g., 0W-20 synthetic).
Est. part cost: $40-$80 - Faulty Oil Control Valve (OCV) 🟡 Medium Probability → Shop Engine Variable Valve Timing (VVT) Solenoid The OCV (also called a VVT solenoid) is a common failure point. It can get clogged with sludge or fail electrically, preventing proper oil flow to the camshaft phaser. Oil leaking into the electrical connector can also cause issues.
How to confirm: A mechanic can test the OCV's resistance with a multimeter or command it to activate with a scan tool to see if the engine's idle changes. A common DIY diagnostic is to swap the suspect OCV with an identical one from another position (e.g., the intake side or the opposite bank) and see if the code follows (e.g., changes to P0016 or P0019).
Typical fix: Replace the Bank 1 exhaust Oil Control Valve. This is often a simple DIY job, held in by a single 10mm bolt.
Est. part cost: $60-$120 - Faulty Camshaft Position Sensor ⚪ Low Probability → Shop Engine Camshaft Position Sensor
How to confirm: Test the sensor's signal with an oscilloscope or swap it with a known good sensor from another bank to see if the code changes. However, this is rarely the cause for a correlation code.
Typical fix: Replace the Bank 1 exhaust camshaft position sensor.
Est. part cost: $50-$100
Rare But Worth Checking
- Stretched Timing Chain or Worn Timing Components: → Shop Engine Timing Chain While less common on a newer vehicle, a stretched timing chain, worn guides, or a failing tensioner can cause a persistent P0017 code that doesn't resolve with other fixes. A stretched chain can cause rattling noises on startup and general engine inefficiency.
- Failed Camshaft Phaser/Sprocket: → Shop Engine Camshaft The VVT actuator (phaser) on the end of the camshaft can fail mechanically, getting stuck in one position or responding slowly. This is an expensive repair that usually requires removing the timing cover. In multiple owner forums, after an OCV replacement failed to fix P0017, the cam sprocket was identified as the next most likely cause.
Diagnosis Steps
- Check the engine oil level and condition. Top off or change the oil if it is low, old, or dirty. This is the first and most critical step.
- Connect an OBD-II scanner to check for other related trouble codes. Note if P0016, P0018, or P0019 are also present.
- Contact a Subaru dealership to verify if your vehicle's ECM has the latest software. If not, have it reprogrammed per TSB #09-120-24R.
- If the code persists, inspect the wiring and connector for the Bank 1 exhaust oil control valve for any damage, corrosion, or oil intrusion.
- Test the Bank 1 exhaust oil control valve (OCV). This can be done by checking its resistance or, more effectively, by swapping it with the intake OCV 🎬 Watch: Four simple DIY methods to troubleshoot the P0017 code. on the same bank to see if the code changes to P0016.
- Test the Bank 1 exhaust camshaft position sensor. This can be done by swapping it with another known-good sensor.
- If all the above steps fail to resolve the issue, a more in-depth mechanical inspection of the timing chain, tensioners, and camshaft phasers is required. This is best left to a professional with a Subaru-specific scan tool.
Parts You'll Likely Need
- Engine Control Module (ECM) Reprogram — Subaru has identified a software issue as a primary cause for this code on this vehicle, making an update the most likely required fix as per TSB #09-120-24R.
Trusted brands: Subaru (Dealership Service)
OEM price range: $100-$250
Aftermarket price range: N/A - Oil Control Valve / VVT Solenoid (Bank 1 Exhaust)
(OEM #10921AA23B)— This solenoid controls oil flow to the cam phaser and is a common failure point if the issue is not software-related. It can become clogged or fail electrically.
Trusted brands: Subaru OE (P/N: 10921AA23B), Denso, Hitachi
OEM price range: $90-$150
Aftermarket price range: $50-$100
Related Codes That Often Appear With This One
- P0016 — This is the correlation code for the intake camshaft on the same bank (Bank 1). If both appear, it could point to a larger issue on that bank, like a timing chain problem or an oil supply issue. The TSB for the ECM reprogram also covers this code.
- P0018 / P0019 — These are the equivalent correlation codes for Bank 2 (driver's side). Seeing codes for both banks simultaneously strongly suggests a systemic problem like low/dirty oil, a stretched timing chain, or the ECM software fault mentioned in TSB #09-120-24R.
Technical Service Bulletins (TSBs) & Recalls
- Bulletin #09-120-24R: Announces new reprogramming files for the ECM to remedy DTCs P0016, P0017, P0018, and P0019 due to overly sensitive diagnostic logic. Applies to 2020-22 Outback/Legacy 2.5L, among others.
- Bulletin #09-120-24: An earlier version of the bulletin announcing the ECM reprogramming files for the same set of codes.
- Bulletin #09-98-22: Addresses the same correlation codes (P0016-P0019) for the 2.4L Turbo engine found in the Subaru Ascent, confirming the issue exists across engine platforms.
Platform-Specific Known Issues
- The Engine Control Module (ECM) may have overly sensitive diagnostic logic, causing it to falsely trigger P0017. Subaru addressed this with updated software, as detailed in TSB #09-120-24R and #09-120-24.
Mechanic-Grade Diagnostic Values
- AVCS Target and Actual Advance/Retard Angle at Idle — expected: 0 degrees. Failure: Any value other than 0 degrees for either target or actual angle at a stable idle indicates a problem with the system's ability to return to the base position.
- Mode $06 AVCS Diagnostic Value — expected: Less than 1000. Failure: A value of 1000 or greater indicates a problem has been detected by the OBD-II system's non-continuous monitors for the AVCS system.
- Camshaft Position vs. Crankshaft Position (Live Data) — expected: Near 0° deviation at idle with OCV disconnected.. Failure: A deviation of approximately +/- 10° or a multiple thereof suggests the timing chain has slipped by one or more teeth, as Subaru cam sprockets have 36 teeth (10° per tooth).
Hidden / Shadow Codes Worth Checking
- Mode $06, MID:$35/$36, TID:$8B-$8E: This is not a traditional trouble code but rather raw data from the onboard diagnostic monitors for the AVCS system. A high value (≥1000) indicates a failure in the system's self-test, often before a persistent DTC is set. (see via Requires an advanced scan tool or a Subaru Select Monitor (SSM) capable of displaying Mode $06 data.)
Scan Tool Commands That Help
- Subaru Select Monitor (SSM) or equivalent: Current Data Display / Live Data Graphing — Used to monitor the 'AVCS target advance angle' versus the 'AVCS advance angle amount' in real-time. A discrepancy between the target and actual values while driving points to a hydraulic or mechanical issue.
- Subaru Select Monitor (SSM) or equivalent: Clear Memory / Reset ECU — After replacing a mechanical part like an OCV or timing component. Some technicians report this is more effective than a standard DTC clear for forcing the AVCS system to relearn its parameters from a clean slate.
- High-level bidirectional scan tool: VVT Actuator Bidirectional Test / OCV Duty Cycle Control — This command manually activates the Oil Control Valve (solenoid) to verify it clicks and operates. It helps distinguish a failed solenoid from a wiring issue or a mechanically stuck cam phaser.
Wiring & Ground Locations
- GE-1 — A main grounding bolt located on top of the engine.. A documented case on a 2021 Outback showed a loose 'GE-1' ground bolt caused widespread, nonsensical electrical faults, including 'Auto Stop/Start Disabled' and no-start conditions. Poor grounding can affect sensor readings and ECU operation, potentially triggering false correlation codes.
- Camshaft Position Sensor Connector (Bank 1) — On the front of the engine, connecting to the camshaft position sensor on the passenger side.. The connector itself can be a point of failure. Oil leaking into the connector can cause high resistance and an incorrect signal, leading to a P0017 code even if the sensor and OCV are good. The wiring diagram IDs for this circuit include E35 and E36.
- Main Engine Harness Grounds — Typically, there are multiple ground straps and terminals connecting the engine block and wiring harness to the chassis, often near the firewall on the passenger side.. All sensor signals, including those from the cam and crank sensors, rely on a stable ground reference to the ECM. Corroded or loose engine grounds can introduce noise and voltage offsets, corrupting these critical signals.
Real Owner Repair Stories
- Reddit user on r/Subaru_Outback (2021 Subaru Outback) — Car would fail to start intermittently, 'Auto Stop/Start Disabled' message, 'Visibility Disabled' message, flickering Vehicle Dynamics Control light.
❌ Tried (didn't work) Shop reset computer codes, Tightened ignition connections, Replaced the battery
✅ What actually fixed it A technician at the dealership found and tightened a loose grounding bolt identified as 'GE-1 on top of engine', which resolved all electronic issues. - YouTube video documentation (2018 Subaru Crosstrek with 215,000 miles) — P0017 code returned consistently after clearing, but the vehicle idled and drove fine.
❌ Tried (didn't work) Swapping the Bank 1 exhaust and intake OCV solenoids (the code did not move, ruling out the OCV itself).
✅ What actually fixed it The owner found that engine oil had leaked into the OCV's electrical connector, causing high resistance. The final fix was to clean the oil out of the connector and repair the wiring, not replace the OCV. - Reddit user on r/subaru (Subaru (model not specified, but FA/FB engine family)) — Persistent P0017 code, engine sounds like an 'old EJ motor' (implying a timing-related noise).
❌ Tried (didn't work) Going long on an oil change was the suspected trigger, Replacing all 4 oil control valves, Replacing the crankshaft position sensor, Verifying camshaft position sensors were working, Performing an idle relearn, Changing the oil
✅ What actually fixed it The user did not post a final resolution, but multiple experienced users in the comments stated that after replacing the OCVs, the next logical and most probable cause for a persistent P0017 is failed/stuck camshaft sprockets (phasers).
"I Checked Everything" — The Actual Cause
- In one documented case for a 2021 Outback, a series of bizarre and intermittent electrical faults that were initially blamed on a bad battery were ultimately traced to a single loose main engine ground bolt ('GE-1'), which was causing havoc with the car's electronics.
- For a similar Subaru engine, a persistent P0017 that did not resolve after swapping the OCV was found to be caused by engine oil that had seeped into the OCV's electrical connector, creating high resistance and a poor signal. The fix was cleaning the connector, not replacing the part.
OEM Part Supersession History
10921AA23A→10921AA23B— Manufacturer revision/update. The new part is the standard replacement.
Heads up: The new part number (10921AA23B) is backward compatible and is the correct service part.
Model Year Variations Within This Range
- 2020-2022: The primary variation for this specific year range is the known software issue in the Engine Control Module (ECM). TSB #09-120-24R was issued specifically for these model years (among others) to correct overly sensitive diagnostic logic that could falsely trigger P0017 and related codes. While mechanical causes are still possible, the first step for these specific years should be checking the software version.
Helpful Videos
Used OEM Parts in Stock
New Aftermarket Parts Available
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.
- Subaru OUTBACK:
- 🧭 Diagnostic Flowchart
- 🎬 Helpful Videos
- 🛍️ Shop This Part
- What's Unique About the 2020-2022 Subaru OUTBACK
- Symptoms You May Notice
- Most Likely Causes
- Rare But Worth Checking
- Diagnosis Steps
- Parts You'll Likely Need
- Related Codes That Often Appear With This One
- Technical Service Bulletins (TSBs) & Recalls
- Platform-Specific Known Issues
- Mechanic-Grade Diagnostic Values
- Hidden / Shadow Codes Worth Checking
- Scan Tool Commands That Help
- Wiring & Ground Locations
- Real Owner Repair Stories
- "I Checked Everything" — The Actual Cause
- OEM Part Supersession History
- Model Year Variations Within This Range
- 🎟️ Get 5% Off