OBD-II trouble code
P0028: Intake Valve Control Solenoid Circuit Range/Performance (Bank 2)
The intake camshaft phaser on Bank 2 is not tracking its commanded position. Because intake cam timing sets how much air the cylinders actually take in, this code very often announces itself as a one-bank fuel trim problem — and the lean code for Bank 2 frequently arrives before this one does.
Quick facts
- System
- Powertrain
- Category
- Variable Valve Timing
- Severity
- Medium severity
- Drivable
- Usually safe to drive short-term
- Repair cost range
- $90 – $1,600
- DIY difficulty
- Intermediate DIY
What does P0028 mean?
Variable valve timing moves the camshafts with oil pressure, metered by electric control solenoids, and the module confirms the result by comparing cam sensor position against crank position. A range/performance code means the command was issued, the circuit responded electrically, and the camshaft still did not end up where it was supposed to be — or took too long getting there, or drifted back.
The intake camshaft's specific job is to control when the intake valves open and close, which directly determines the mass of air trapped in each cylinder. That makes an intake phaser fault a breathing fault, and breathing faults show up in fuel trim. The module calculates expected airflow partly from where it believes the intake cam is; if the cam is somewhere else, the calculation is wrong, the injectors deliver the wrong quantity, and the oxygen sensor on that bank forces a correction. On a V engine each bank has its own trim, so the correction is one-sided. In practice this is how the fault is usually discovered: a lean or rich condition on Bank 2 with Bank 1 sitting at normal trim, and the fuel trim code stored earlier than the cam code. If you are looking at long-term trim skewed on one bank only, an intake phaser on that bank belongs on the list well before you start hunting for a vacuum leak — and a one-bank trim skew is genuinely difficult to explain with a vacuum leak in the first place, since most intake leaks affect both banks.
There is a hydraulic reason a Bank 2 phaser code can appear on its own with a healthy Bank 1. Oil does not arrive at both banks simultaneously on a V engine. The pump feeds a main gallery and the banks are supplied by branches off it, and on most designs one bank's feed is longer, or taken further downstream, than the other's. When oil pressure or oil volume is marginal — a worn pump, a stretched service interval, thick cold oil, or a partially blocked passage — the bank at the end of the queue is the one that falls short first. So a variable valve timing range/performance code on Bank 2 alone, with Bank 1 responding normally, is not automatically a Bank 2 component fault. It can be the whole engine's oil supply revealing itself at the weakest point in the circuit. Checking actual oil pressure at operating temperature, rather than trusting the dashboard lamp, is the test that distinguishes those two possibilities, and it is the one most often skipped.
The practical consequence of that is a warning about parts. Replacing the Bank 2 intake solenoid on an engine whose real problem is a tired oil pump gives a repair that works for a while and then does not, and the second failure looks like a defective part rather than a wrong diagnosis. Establish oil pressure before ordering anything.
Cold running deserves a mention for the same reason. Thick oil at low temperature is exactly the condition under which a marginal supply cannot fill the phaser fast enough, so a Bank 2 phaser fault often sets on the first drive of a cold morning and never appears again once the engine is warm. If the code's freeze frame shows a low coolant temperature, that is evidence about oil viscosity and supply, not about the solenoid.
Symptoms tend to be modest and easy to dismiss. The engine may idle slightly rough, feel soft rather than broken on part throttle, and use a little more fuel. What the owner usually notices is the warning light. The reason to attend to it anyway is the fuel trim consequence: a bank running corrected mixture for the wrong reason ages its catalyst and its oxygen sensors faster than the other side.
Common causes
- Marginal engine oil pressure or volume, which starves the bank fed last on the gallery
- Low oil level or overdue oil restricting flow into the phaser
- Wrong oil viscosity, particularly a heavier grade that will not fill the phaser when cold
- Clogged screen on the Bank 2 intake valve control solenoid
- Sticking solenoid spool that responds slowly rather than not at all
- Blocked or restricted oil control passage in the Bank 2 head or cam bearing feed
- Worn intake cam phaser on Bank 2 that cannot hold its commanded position
- Worn oil pump, which shows up on the far bank before it shows up anywhere else
- Timing chain or secondary chain wear on Bank 2 altering cam-to-crank correlation
- Poor connection at the solenoid degrading response without opening the circuit
Symptoms
- Long-term fuel trim skewed on Bank 2 with Bank 1 normal
- A Bank 2 lean or rich code stored before this one appeared
- Check engine light with P0028 stored and only mild driveability complaint
- Soft or flat part-throttle response rather than an outright power loss
- Slightly rough idle that smooths out as the engine warms
- Code setting on the first cold start of the day and not recurring once warm
- Modest drop in fuel economy
- Bank 2 oxygen sensor or catalyst codes developing later as a downstream consequence
Diagnostic steps
- 1.Read fuel trim for both banks before touching the valve timing system. A one-sided trim skew on Bank 2 supports this code and is hard to explain with a vacuum leak, since most intake leaks affect both banks.
- 2.Check oil level, condition and viscosity, then measure actual oil pressure at operating temperature with a mechanical gauge rather than relying on the warning lamp.
- 3.Compare Bank 1 and Bank 2 cam response side by side in live data. Both banks lagging points at engine-wide oil supply; Bank 2 alone lagging is consistent either with a Bank 2 component or with Bank 2 being the bank fed last.
- 4.Note the freeze frame coolant temperature. A code set cold is evidence about oil viscosity and fill rate, not about the solenoid.
- 5.Graph commanded against actual Bank 2 intake cam position through a sweep, watching response speed as well as final position.
- 6.Remove the Bank 2 intake valve control solenoid and inspect the screen for debris; confirm the spool moves and returns freely.
- 7.Swap the Bank 1 and Bank 2 intake solenoids and see whether the fault follows the part. This is the one test a V engine allows that an inline engine does not, and it settles the solenoid question without buying anything.
- 8.If the fault stays on Bank 2 with a known-good solenoid fitted, work up the oil path — feed passage, cam bearing supply, phaser — rather than replacing the solenoid again.
- 9.Inspect Bank 2 chain and tensioner condition before fitting a phaser, since chain wear reproduces the same correlation failure on new parts.
Repair cost
$90 – $1,600
An oil and filter change with the correct grade is the cheapest real fix at $90 to $180. A Bank 2 intake valve control solenoid is roughly $140 to $400 fitted. The outcomes that change the arithmetic are the ones the oil-pressure test finds: an oil pump replacement is commonly $700 to $1,600 depending on whether the timing cover or sump has to come off, and a cam phaser on Bank 2 sits in a similar range. This is why measuring oil pressure first is worth the labour — it decides whether you are buying a $200 part or a $1,500 one, and fitting the $200 part on an engine with a tired pump means paying for it twice.
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.