OBD-II trouble code
P0028: Intake Valve Control Solenoid Circuit Range/Performance (Bank 2)
SAE J2012: intake valve control solenoid circuit range/performance, bank 2. In the 2006 Subaru Legacy GD(H4SO U5) file, P0028 says to use the P0026 valve-lift diagnosis. It is the other bank's intake valve-lift solenoid and oil-pressure switch on that engine. It is not a bank 2 cam-phaser code and it is not a fuel-trim code in that document.
Quick facts
- System
- Powertrain
- Category
- Ignition / Engine Timing
- Severity
- Medium severity
- Drivable
- Usually safe to drive short-term
- Repair cost range
- $180 – $870 (variable valve timing control solenoid replacement)
- DIY difficulty
- Intermediate DIY
Browse every code in P0001–P0099, or start from the full code library.
What does P0028 mean?
Bank 2 is the bank that does not contain cylinder 1. The solenoid is the intake valve-control solenoid on that bank. On the 2006 Legacy H4SO, the criteria file points P0028 at the same valve-lift test as P0026: high mode is large duty and the oil-pressure switch OFF, low mode is minimum duty and the switch ON. Low NG is duty at or above 62% with the switch ON. High NG is duty below 33% with the switch OFF. Enable conditions include battery at least 10.9 V, at least 6 seconds after start, and engine oil temperature at least 15°C (59°F). The file does not describe a fuel trim, a lean code that arrives first, or a bank that is fed last by the oil galleries.
Access is whatever this engine's intake plumbing requires. There is no sourced rule that bank 2 is the rear bank of a transverse V, or that it carries a labor premium. Read the diagram, find cylinder 1, and the other bank is bank 2.
If this engine is not that Legacy, the 62% and 33% figures do not travel with the code. Hyundai TSB 09-EM-002 does not list P0028. A cam-phaser oil-control solenoid on another engine is diagnosed from that engine's book, under this SAE title only when the book uses it.
Common causes
- The bank 2 intake valve-lift connector unplugged, corroded, or shorted, on the Legacy layout
- Duty and switch state disagreeing on the P0026 criteria the Legacy file tells you to use for P0028
- The oil-pressure switch for that bank stuck ON or OFF while duty is in the opposite mode
- Oil temperature below 15°C, so the Legacy enable is not met and a later failure gets misread
- On a non-Subaru engine, the intake oil-control solenoid that engine's chart assigns to bank 2
- A bank 1 part installed on bank 2 because the diagram was not checked
Symptoms
- Check engine light with P0028
- Bank 2 valve lift not changing mode on a 2006 Legacy H4SO, with bank 1 behaving
- The same duty-versus-switch failure as P0026, on the other bank
- No fuel-trim code required by the Legacy file
- The code stored only after oil temperature reaches the enable
- A part ordered for bank 1 that does not clear a bank 2 result
Diagnostic steps
- 1.On a 2006 Legacy H4SO, follow the file's instruction to use the P0026 valve-lift diagnosis, and perform it on bank 2. Compare duty with that bank's oil-pressure switch. Do not add a fuel-trim check the file does not contain.
- 2.Mark cylinder 1, then mark the other bank, before you unplug a solenoid. The 62% and 33% thresholds and the 15°C oil-temperature enable stay on that Subaru file.
- 3.Ignition off. Inspect the bank 2 connector. The Legacy criteria that were read do not include a coil-ohm spec. If your engine's procedure has one, use that number only.
- 4.Bring the engine into the enable window before you decide the solenoid passed. On the Legacy file that is oil temperature at least 15°C, battery at least 10.9 V, and valve-lift control operating.
- 5.Replace the bank 2 solenoid or switch the failed side of the criteria names. A cam phaser, an oil pump, and a timing chain are not parts in that valve-lift file. No labor adder for bank 2 was found.
- 6.Clear P0028 and run bank 2's test in the enable window. A passenger reads duty and the switch if you confirm it on the road, or record the trace.
Repair cost
$180 – $870 (variable valve timing control solenoid replacement)
RepairPal's VVT control solenoid average is $469–$594, updated 3 September 2026, with a 2010 Ford Fusion example at $179–$239 and a 2015 Porsche Cayman example at $687–$870. $180–$870 rounds that set and is scoped to the solenoid job. The 2006 Legacy bank 2 valve-lift solenoid was not given its own line, and no source added labor for bank 2. RepairPal's oil-pump and timing-chain figures are not this Subaru test. An oil change at $160–$188 is not a step in the Legacy criteria. The actuator average of $1,094–$1,425 stays outside the pair.
Estimate your repair
Run the numbers for your vehicle
Open the Repair Cost Estimator with vvt solenoid replacement preselected. Adjust labor rate and vehicle category to fit your situation.
Related repairs
DIY vs shop
This is an intermediate DIY job. It usually involves diagnostic steps, specialty parts, and some careful work in tight spaces. If you have the tools and a service manual or trustworthy video for your specific vehicle, it is achievable in a weekend. Otherwise, a competent independent shop will be faster.