P0016 on 2013-2016 Scion FR-S: Crank-Cam Correlation Causes and Fixes
On the 2013-2016 Scion FR-S, code P0016 is most often caused by low/dirty engine oil or a failing Bank 1 (passenger side) intake Oil Control Valve (OCV). Always check your oil first. If the oil is clean and at the correct level, the OCV is the next most likely culprit, costing around $90-$140 for an OEM part. On early 2013 models, a faulty ECU or outdated software can also be the cause after mechanical parts are ruled out.
- Always check your oil first. P0016 on an FR-S is very often caused by low, old, or incorrect (non 0W-20) engine oil.
- The Bank 1 (passenger side) intake Oil Control Valve (OCV) is the most likely part to fail. You can diagnose it for free by swapping it with the driver's side intake OCV and seeing if the code changes to P0018.
- Do not immediately replace the camshaft position sensor; it is usually just reporting the problem.
- If the OCV and oil are fine, the problem is likely a more serious mechanical issue like a failed cam sprocket or, on high-mileage cars, a stretched timing chain, requiring a much more involved repair.
What's Unique About the 2013-2016 Scion FR-S

The FA20 engine, co-developed with Subaru, uses an oil-pressure-driven Active Valve Control System (AVCS). This system is highly sensitive to oil level, viscosity, and cleanliness. A common failure point is the Oil Control Valve (OCV), which can leak internally and seep oil into the electrical connector, causing timing-related codes. Subaru issued a Technical Service Bulletin (TSB 02-170-17R) for a redesigned OCV to address this specific leak-down issue, which is a frequent cause of P0016 on this platform. On early 2013 models, there was also a known issue where the ECU itself could be faulty or require a software update to correct false P0016 triggers, sometimes even after mechanical repairs were performed. A critical issue on this platform is that the ECU can store incorrect 'learned values' for cam position, causing the P0016 code to persist even after the mechanical fault (like a bad sprocket) is fixed, often leading to an unnecessary ECU replacement.
Symptoms You May Notice
- Check Engine Light and Traction Control Light are illuminated
- Rough or unstable idle, sometimes with stalling
- Reduced engine power and sluggish acceleration
- Engine stalling, especially at low RPM or when stopping
- Decreased fuel economy
- Engine may crank but struggle to start
- Engine may enter 'limp mode' and refuse to rev past a certain RPM (e.g., 4000 RPM)
- Replacing the camshaft position sensor first. The sensor is usually just accurately reporting the timing problem, not causing it. Always diagnose the OCV and check oil condition before replacing sensors.
- Replacing the crankshaft position sensor. This sensor is very reliable on the FA20 and is almost never the cause of a P0016 code.
- Assuming a tune is the cause. While a bad tune can cause issues, many owners with stock vehicles experience P0016. Flashing back to a stock map is a valid diagnostic step, but the code often persists if there is an underlying mechanical or ECU hardware fault.
Most Likely Causes

- Low, Dirty, or Incorrect Viscosity Engine Oil 🔴 High Probability The FA20's Dual AVCS (variable valve timing) system is hydraulic and extremely sensitive to oil pressure and cleanliness. The manufacturer specifies 0W-20 synthetic oil. Using a thicker oil like 5W-30 has been anecdotally linked to this code appearing.
How to confirm: Check the oil level on the dipstick. Examine the oil's color and condition. If it is below the full mark, black, or thick, this is the first item to address.
Typical fix: Perform an engine oil and filter change using a quality filter and the correct 0W-20 synthetic oil. Clear the codes and drive to see if the issue returns. Some owners have reported that non-OEM oil filters were suspected by dealers as a cause, though this is less likely than the oil itself.
Est. part cost: $40-$80 - Failing Intake Oil Control Valve (OCV) / VVT Solenoid (Bank 1) 🔴 High Probability The OCV can become clogged with sludge or fail electrically. A known issue is the internal seal failing, allowing oil to leak into the electrical connector, disrupting the signal as documented in Subaru TSB 02-170-17R. This wicking action can contaminate the wiring harness and, in severe cases, the ECU itself.
How to confirm: Unplug the electrical connector for the Bank 1 (passenger side) intake OCV (top, front of the engine). Check for oil inside the connector. A definitive test is to swap the Bank 1 intake OCV with the Bank 2 (driver's side) intake OCV. Clear codes and drive. If the code changes to P0018 (Bank 2 Correlation), the OCV is faulty.
Typical fix: Replace the faulty Oil Control Valve. 🎬 Watch: How to replace and upgrade your FA20 oil control valve. Many owners choose to replace them in pairs or all four at once as a preventative measure. The updated part is designed to prevent the internal leak.
Est. part cost: $90-$140 - Failing Camshaft Phaser / Sprocket 🟡 Medium Probability On higher-mileage vehicles or those with a history of poor oil maintenance, the internal locking pin or passages of the cam sprocket can fail or stick, preventing it from adjusting timing correctly. This can also happen on lower mileage cars, as documented by owners on forums.
How to confirm: This is diagnosed after ruling out oil issues, sensors, and OCVs. A professional diagnosis using a scan tool to monitor commanded vs. actual cam angle can reveal a lazy or non-responsive sprocket. Visual inspection often shows broken pieces on the back of the old sprocket upon removal. A key data point to check is the 'VVT Initial Position Learning Value'; if it is out of spec (e.g., Bank 1 intake min was 46, when spec is 52-72), it strongly points to the sprocket.
Typical fix: This is an engine-in repair that requires removing the timing cover, timing chain, and replacing the faulty cam sprocket. 🎬 See this walkthrough on replacing the intake VVT camshaft sprocket. It is a labor-intensive job, estimated at around 4.1 book hours. It is highly recommended to soak the new sprockets in oil overnight before installation to prevent them from sticking on startup.
Est. part cost: $150-$250 - Stretched Timing Chain or Failed Tensioner ⚪ Low Probability While the FA20 chains are generally robust, significant mileage (typically over 100k miles) can lead to stretch, or the hydraulic tensioner can weaken, causing enough slack to create a correlation fault.
How to confirm: This is typically diagnosed during the inspection for a failed cam sprocket. A visual inspection will show a loose chain or a fully extended tensioner. This is a diagnosis of exclusion after easier components are checked.
Typical fix: Replace the timing chains, guides, and tensioners. This is a major repair often done at the same time as cam sprocket replacement.
Est. part cost: $300-$500
Rare But Worth Checking
- Faulty Camshaft or Crankshaft Position Sensor: This is rarely the cause for a P0016 code, as a failed sensor will usually generate its own specific circuit code (e.g., P0340). However, an intermittent sensor can sometimes contribute to a correlation fault without a dedicated code. Swapping sensors between banks is a common diagnostic step to rule them out.
- Outdated or Faulty ECM Software/Hardware: On early 2013 models, some owners on forums reported that an ECU reflash to an updated software version (e.g., from A00C to B01C) resolved persistent timing codes. In other cases, after all mechanical parts were replaced, the P0016 code remained until the ECU itself was replaced. This is often due to 'burned-in' learned values in the old ECU that will not reset through normal procedures.
Diagnosis Steps

- Check engine oil level and condition. If low, dirty, or not 0W-20, perform an oil and filter change, clear the code, and test drive.
- Scan for any other DTCs. Codes for specific sensors (P0340, P0345) or OCV circuits (P0010) can provide valuable clues.
- Inspect the Bank 1 (passenger side) intake OCV connector for oil contamination. If oil is present, the OCV has a known internal leak and must be replaced per TSB 02-170-17R.
- If no oil is found, swap the Bank 1 intake OCV with the Bank 2 intake OCV. Clear codes and drive. If the code returns as P0018, the OCV you moved is confirmed faulty.
- If the code remains P0016 after the OCV swap, the issue is not the OCV. The next step is to swap the camshaft position sensors between banks to rule them out. If the code does not move, the sensors are likely good.
- If sensors and OCVs are confirmed good, use an advanced scan tool (like Techstream) to monitor AVCS commanded vs. actual angles and check the 'VVT Initial Position Learning Value'. If the value is out of spec (e.g., below 52 for intake), it points towards a mechanical sprocket issue.
- If mechanical/hydraulic issues are suspected, the next step is a mechanical inspection of the timing components, which requires removing the front timing cover. Check for a stretched chain, failed tensioner, or a damaged camshaft sprocket.
- For early 2013 models, if all mechanical components check out, investigate an ECU reflash or replacement as the final step.
Parts You'll Likely Need

- Engine Oil Control Valve (VVT Solenoid)
(OEM #SU003-07806 (Toyota/Scion), 10921AA231 / 10921AA241 (Subaru))— This is the most common mechanical failure for code P0016 on the FA20 engine, often due to internal clogging or seal failure leading to oil in the connector.
Trusted brands: Toyota/Scion (OEM), Subaru (OEM)
Related Codes That Often Appear With This One
- P0017 — This is the correlation code for the exhaust camshaft on the same bank (Bank 1). If seen with P0016, it could point to a more significant timing issue on that bank, like a jumped chain or a problem with the cam sprocket.
- P0018 / P0019 — These are the equivalent correlation codes for Bank 2 (driver's side). If you see codes for both banks, it strongly suggests a global issue like very low/poor oil, a stretched main timing chain, or a failing crankshaft reluctor wheel. If you swap a faulty Bank 1 OCV to Bank 2, the code will often change from P0016 to P0018, confirming the OCV is the problem.
Technical Service Bulletins (TSBs) & Recalls
- TSB 02-170-17R: Documents the redesigned Oil Control Valve (OCV) to fix an internal oil seal failure that causes oil to leak into the electrical connector. This is a primary cause of AVCS-related codes.
Platform-Specific Known Issues
- Early Model ECU Fault: A notable number of early 2013 model year FR-S and BRZ vehicles can have a persistent P0016 code that is not resolved by mechanical repairs. After replacing OCVs and even cam sprockets, the code may return immediately. The ultimate fix in these documented cases is often an ECU reflash to a newer software version or a complete replacement of the ECU.
- OCV Internal Oil Leak: The failure of the internal seal on the Oil Control Valves is a well-documented weak point, addressed by Subaru TSB 02-170-17R. Oil travels through the connector pins and wicks up the wiring harness, potentially contaminating it all the way to the main engine harness connector or the ECU itself, causing a range of electrical and timing faults.
- Cam Sprocket Failure: Beyond the more common OCV issue, the mechanical AVCS phaser (cam sprocket) itself can fail. This is a more involved and expensive repair. One YouTube technician video shows replacing both intake sprockets for P0016 and P0018 codes and recommends soaking the new parts in oil overnight to prevent sticking upon first start. Another owner on ft86club confirmed a bad sprocket by finding the 'learned value' for the intake cam was out of the manufacturer's specified range.
Mechanic-Grade Diagnostic Values

- VVT Initial Position Learning Value (Intake) — expected: Minimum: 52, Maximum: 72 (degrees). Failure: A value outside this range, such as 46 or 47.49, indicates a mechanical problem with the sprocket or that the ECU has stored an incorrect value.
- VVT Initial Position Learning Value (Exhaust) — expected: Minimum: 78, Maximum: 98 (degrees). Failure: A value outside this range indicates a mechanical problem with the sprocket or that the ECU has stored an incorrect value.
- Camshaft/Crankshaft Position Sensor Resistance — expected: Approximately 200 - 1000 Ohms (General specification, not FA20-specific).. Failure: A reading of zero ohms (short circuit) or infinite ohms (open circuit).
- Oil Control Valve (OCV) Solenoid Resistance — expected: 6.9 - 7.9 Ohms at 68°F (20°C). Failure: A resistance reading outside of this specific range indicates a faulty solenoid coil.
Scan Tool Commands That Help
- Toyota Techstream: Active Test: 'Control the Camshaft Timing Oil Control Valve' — Use this to command the OCV solenoid on and off to verify if the solenoid clicks and if the circuit is working, helping to isolate a faulty OCV from other issues.
- Toyota Techstream / Autel / Launch / Thinkdiag2: Read Data: 'VVT Initial Position Learning Value' — Use this after basic checks to see if the ECU's stored value for the cam's base position is out of the specified range. This is a key indicator of a mechanical sprocket fault or a 'burned-in' ECU value.
- Autel / Launch / Thinkdiag2: Special Function: 'Test Mode Change' > VVT Value Reset — This is a critical step AFTER replacing a faulty cam sprocket if the P0016 code persists. It resets the 'burned-in' incorrect values in the ECU, which can prevent the need for a costly ECU replacement. Requires putting the car in a special 'test mode' first. Note: Some sources claim this aftermarket method does not work for the BRZ/FR-S ECU.
Wiring & Ground Locations
- OCV Ground Solder Joint — Located within the main engine wiring harness, specifically in the section that rests on top of the coolant crossover pipe.. All four OCVs share a ground at this internal solder joint. If oil from a leaking OCV wicks up the harness to this point, it can degrade the connection, causing erratic OCV operation and triggering correlation codes. The harness may look oily externally in this area.
- Engine to Bulkhead Harness Connector — The main electrical connector joining the engine harness to the chassis (bulkhead) harness.. In severe cases of OCV oil leakage, the oil can travel the entire length of the engine harness and contaminate the pins in this connector, potentially shorting circuits and even allowing oil to enter the ECU.
Real Owner Repair Stories
- ft86club.com forum user (2013 Subaru BRZ) — P0018 code (Bank 2 equivalent of P0016).
❌ Tried (didn't work) Swapping OCVs between banks, Changing engine oil
✅ What actually fixed it The cam sprocket assembly was damaged, giving bad readings. After replacing the sprocket, the 'learning values' in the ECU were still off, so the ECU also had to be replaced to finally clear the code. - ft86club.com forum user (2013 Subaru BRZ) — Persistent P0018 code after professional sprocket replacement.
❌ Tried (didn't work) Replacing the Bank 2 intake camshaft sprocket.
✅ What actually fixed it The P0018 code remained because the ECU had a 'burned-in' out-of-tolerance value (47.49 deg). The owner swapped his ECU into a friend's identical car, let it run (which reset the learned values), and then reinstalled it in his own car. The code was gone and the issue was resolved without buying a new ECU. - Reddit user r/WRX (FA20-engine WRX (same engine family)) — P0018 code.
❌ Tried (didn't work) Engine oil change, Swapping cam position sensors between banks, Swapping OCVs between banks
✅ What actually fixed it A shop confirmed the VVT learned value was out of range. The owner replaced both intake cam sprockets, timing chains, and guides. Before installation, he soaked the new sprockets in oil overnight. After reassembly, he used an Autel scanner in 'test mode' to perform a VVT learned value reset, which successfully cleared the code without needing a new ECU.
"I Checked Everything" — The Actual Cause
- This code is not related to vacuum or EVAP leaks, so a smoke test is not a relevant diagnostic procedure. The equivalent pattern is 'all parts test good, but code remains.' This frequently occurs after a faulty cam sprocket is replaced. The new mechanical parts are perfect, but the code returns instantly because the ECU has 'burned-in' the old, out-of-spec cam position data and continues to flag it as a fault. The actual cause is no longer a mechanical part, but the stored data in the ECU, requiring a specific reset procedure or ECU replacement to fix.
When the Usual Fixes Don't Work
- A significant body of evidence from owner forums shows that simply replacing the identified faulty mechanical part (like the OCV or cam sprocket) is often not enough to fix a persistent P0016 code. In many cases, owners replaced the correct part only to have the code return immediately. The ultimate fix required an additional, less obvious step: either replacing the ECU because its learned cam position values were permanently 'burned-in,' or performing a special reset of these values by either swapping the ECU into another car temporarily or using an advanced scan tool function. This contradicts the standard repair methodology of 'replace the bad part and clear the codes.'
OEM Part Supersession History
10921AA220, 10921AA230→10921AA231— The updated part contains a redesigned internal oil seal to prevent engine oil from leaking past the seal and wicking into the electrical connector and wiring harness.
Model Year Variations Within This Range
- 2013: A specific TSB (S-SB-0013-14) exists for some 2013 models where the camshaft position sensor air gap may be incorrect. The fix may only require adding a shim to the sensor, not replacing the sensor itself.
- Early 2013: These models are more prone to needing an ECU software update to fix false or persistent timing codes. A common update path was from software ID 'A00C' to 'B01C' or later. In some cases, the ECU hardware itself was faulty and required replacement even after mechanical fixes.
Diagnostic Flowchart
Real Owner Stories
Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.
Scion FR-S FA20 — 60000 miles
Symptoms: Experienced a P0016 code. Swapped OCVs and checked data logs to diagnose the issue.
What fixed it: Concluded the cam sprocket was the issue after ruling out OCVs, noting that the ECU may also retain fault memory.
Source hint: https://www.ft86club.com/forums/showthread.php?t=118729
Early Model Scion FR-S FA20
Symptoms: Persistent P0016 code that would not go away after mechanical repairs.
What fixed it: Had cam gears replaced, and ultimately had multiple ECUs flashed or replaced to solve the underlying hardware/software fault on early models.
Source hint: https://www.ft86club.com/forums/showthread.php?t=61837
Scion FR-S FA20
Symptoms: P0016 code remained even after the dealer replaced timing components and cam gears.
What fixed it: The dealer recommended a $1900 ECU replacement after the initial $4700 mechanical repair failed to clear the code. Another user in the same thread fixed their identical issue by installing a $60 used ECU.
Cost: $60-$4700
Source hint: https://www.reddit.com/r/ft86/comments/wfkp0w/p0016_ecu_replacement/
Scion FR-S FA20
Symptoms: Triggered a P0016 code and needed to verify if the mechanical AVCS phaser was bad.
What fixed it: Confirmed a bad sprocket by using a scan tool to find the 'learned value' for the intake cam was out of the manufacturer's specified range.
Source hint: ft86club forum user cited in 'Cam Sprocket Failure' section
Related OBD-II Codes
Frequently Asked Questions
Does TSB 02-170-17R apply to my Scion FR-S for the P0016 code?
I have an early 2013 FR-S and already replaced the cam sprockets and OCVs, but P0016 came back. What's next?
Can using 5W-30 instead of 0W-20 oil cause a P0016 on the FA20 engine?
How can I test if my Bank 1 intake Oil Control Valve (OCV) is causing the P0016?
What scan tool data should I look at to diagnose a bad cam sprocket on my FR-S?
Is it necessary to soak the new cam sprockets in oil before installing them?
Helpful Videos
We Have This Part in Stock
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.
- Scion FR-S:
- 🎬 Helpful Videos
- 🛍️ Shop This Part
- What's Unique About the 2013-2016 Scion FR-S
- 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
- Scan Tool Commands That Help
- Wiring & Ground Locations
- Real Owner Repair Stories
- "I Checked Everything" — The Actual Cause
- When the Usual Fixes Don't Work
- OEM Part Supersession History
- Model Year Variations Within This Range
- Diagnostic Flowchart
- Real Owner Stories
- Scion FR-S FA20 — 60000 miles
- Early Model Scion FR-S FA20
- Scion FR-S FA20
- Scion FR-S FA20
- Related OBD-II Codes
- Frequently Asked Questions
- 🎟️ Get 5% Off