Skip to content
Skip to content

OBD-II Code

P1009

Severity

Not yet reviewed

Nobody on our side has assessed this code yet, so we are not going to guess at how serious it is.

Can you drive it

We cannot say

Treat it as unknown until a shop reads it with live data. If the check-engine light is FLASHING, stop driving as soon as it is safe to — that means an active misfire, whatever the code.

Indicative cost (USD)

$80–$2,200

From this code's diagnostic notes. Varies by vehicle, diagnosis, parts, and local labor. This is not a repair quote.

$80 (oil change + OCV screen clean DIY) to $2,200 (full VVT phaser + timing chain service on transverse Skyactiv CX-5).

P1009 on Mazda Skyactiv-G is a VVT (Variable Valve Timing) oil control solenoid code — the ECU detected that the VVT phaser on the intake (or exhaust on dual-VVT applications) failed to respond to commanded oil flow within the expected window.

How a shop works this

Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed.

  1. Note every code that is set, not just this one.

    Codes that appear together usually narrow the cause faster than any one of them read alone.

  2. Read the freeze frame — the conditions the fault was recorded under.

    Cold or warm, idle or load, road speed and engine speed. A fault that only appears cold is a different fault from one that only appears under load, even with the same code on the scanner.

  3. Confirm the fault is current rather than history.

    Clear the code and see whether it returns under those same conditions. A code that does not come back may have been logged during a repair, a flat battery, or a bad connection that has since been disturbed.

  4. Then follow the diagnostic notes further down this page, in the order they are written.

    They are written in the order a shop works this code, cheapest checks first. Where they name a component, inspect its wiring and connector before replacing it.

If the code comes back after a repair, the underlying fault is still there. That is the point to bring in a scanner with live data and freeze-frame, or a shop that has one.

Read the full diagnostic procedureP1009 on Mazda Skyactiv-G is a VVT (Variable Valve Timing) oil control solenoid code — the ECU detected that the VVT phaser on the intake (or exhaust…

P1009 on Mazda Skyactiv-G is a VVT (Variable Valve Timing) oil control solenoid code — the ECU detected that the VVT phaser on the intake (or exhaust on dual-VVT applications) failed to respond to commanded oil flow within the expected window. Skyactiv-G uses hydraulic VVT actuators controlled by oil control valves (OCVs) similar in concept to Subaru AVCS, but Mazda's implementation runs at the highest mechanical compression ratio in production (13:1 or 14:1 depending on market) and is sensitive to oil pressure, viscosity, and cleanliness.

Cheapest-first ladder

  1. Oil first. Skyactiv-G specs 0W-20 synthetic and is intolerant of long oil change intervals — Mazda's recommended interval is 7,500 miles but practical experience says 5,000 for VVT health. Black or overdue oil is the #1 cause of P1009 on Skyactiv platforms. Change with the correct viscosity and a real Mazda or premium aftermarket filter.
  2. Scan live data: commanded VVT angle vs. actual at warm idle. Skyactiv-G OCVs operate on a 0-100% duty cycle with intake cam advance from 0 to about 50 degrees; actual should track commanded within 3 degrees at idle and 5 degrees under load.
  3. Resistance-check the OCV: typical Skyactiv-G OCV winding measures 6-8 ohms cold (verify with Mazda service literature for your specific engine and year). Out-of-spec means replace.
  4. Pull the OCV and inspect the inline oil screen, identical pattern to Subaru AVCS — the screen clogs with varnish from extended oil change intervals and starves the phaser of oil pressure. Clean with brake cleaner.
  5. Most expensive: VVT phaser/cam sprocket assembly itself, which requires timing chain removal on Skyactiv-G ($1,200-$2,000 in labor on a transverse Skyactiv). Don't replace the OCV before checking the oil and screen — Skyactiv-G is more oil-sensitive than the Subaru EJ-series and 70% of P1009 cases clear with a fresh oil change plus screen clean.
Vehicle-specific patterns2014-2018 Mazda CX-5 with Skyactiv-G 2.0L and 2.5L is the volume P1009 platform — the OCV oil screen clogs at 80,000-110,000 miles on owners who foll…
  • 2014-2018Mazda CX-5 with Skyactiv-G 2.0L and 2.5L is the volume P1009 platform — the OCV oil screen clogs at 80,000-110,000 miles on owners who follow Mazda's 7,500-mile interval; shops that recommend 5,000-mile intervals see this code far less.
  • 2014-2019Mazda3 and 2014-2021 Mazda6 with Skyactiv-G 2.0L/2.5L follow the same pattern.
  • 2013-2016CX-9 with the 3.7L Duratec (pre-Skyactiv 2.5T) throws P1009 less often but the diagnostic is similar.
  • 2016+MX-5 Miata ND with Skyactiv-G 2.0L sees P1009 occasionally on tracked cars where high-rpm operation accelerates OCV wear; track-day owners should shorten oil intervals to 3,000 miles.

Estimated repair$80 (oil change + OCV screen clean DIY) to $2,200 (full VVT phaser + timing chain service on transverse Skyactiv CX-5).

Look up another code

More free tools

See all 9 tools