P2646 Code: 'A' Rocker Arm Actuator Performance/Stuck Off Bank 1
The engine asked VTEC to switch to the high-lift cam, but the oil pressure switch never saw pressure arrive.
At a glance
Severity: Low
- Meaning
- 'A' Rocker Arm Actuator Performance/Stuck Off Bank 1
- System
- Fuel & Air Metering · Powertrain
- Safe to drive?
- Yes, short term
- Typical repair cost
- $15–$1,500
- DIY difficulty
- Easy
Honda and Acura VTEC and i-VTEC engines, and a few other designs with switchable rocker arms, lock extra rockers together with oil pressure so the valves follow a higher-lift, longer-duration cam lobe at higher rpm. A solenoid spool valve on the cylinder head sends that oil, and a pressure switch right after it tells the engine computer whether pressure actually reached the rocker shaft. P2646 sets when the computer commands the system on but the switch keeps reporting no pressure – the system is 'stuck off', or the switch circuit reads as if it were. Since everything runs on engine oil, a low oil level is the single most common trigger, especially on engines that burn a little oil between changes. On inline four-cylinder engines 'bank 1' simply means the whole engine.
Can I keep driving? Safe to drive: the engine stays on its low-rpm cam profile, so you only lose some top-end power. Check the oil level right away, though – if the code is caused by low oil, the rest of the engine is also running short.
Try this first – 5-minute fix
- Check and top up the oil Park level, wait a few minutes and read the dipstick. If it's at or below the lower mark, top up with the grade on the oil filler cap, usually 0W-20 or 5W-30 on Honda engines – that alone clears many P2646 cases.
- Change the oil if it's overdue Dark, thick oil or a change interval that's long past can starve the VTEC circuit even when the level is fine. Change oil and filter with the specified grade.
- Clear the code and drive Clear the code and drive normally, including a few pulls through the higher rev range. If the check engine light stays off for a week, the oil was the problem.
How to read P2646
- P Powertrain
- 2 Generic (SAE)
- 6 Computer & outputs
- 46 Specific fault
Symptoms
- Check engine light, often right after a long trip or before an oil change is due
- Engine feels flat above roughly 4,000 to 5,000 rpm, no 'kick' at the top
- Normal behavior at low rpm and at idle
- Oil level on the dipstick at or below the lower mark
- Sometimes a slight drop in highway fuel economy
Possible causes
Ranked by how often each cause is behind this code (editorial estimate).
- Engine oil level low from consumption or a missed top-up
- Clogged filter screen in the VTEC solenoid gasket from sludge or debris
- Rocker arm oil pressure switch faulty or its connector soaked with oil
- Solenoid spool stuck closed or solenoid coil failed
- Oil too old or too thick for the engine
- Worn oil pump or low overall oil pressure
- Wiring or engine computer fault
Diagnosis step by step
Watch VTEC data while driving
With a scan tool, log the VTEC solenoid command and the rocker arm oil pressure switch status with the engine fully warm. Have a helper accelerate firmly through the engagement point; when the command turns on, the switch should follow within a moment.
Tools: OBD-II scanner
Inspect the solenoid filter screen
The VTEC solenoid is bolted to the back or side of the cylinder head, held by two or three bolts. Remove it and check the fine mesh screen in its gasket; if it's plugged with sludge, fit a new gasket with screen rather than cleaning it.
Tools: Screwdriver, Flashlight
Test the solenoid coil
Measure resistance across the solenoid terminals; on most Honda VTEC solenoids it should be roughly 14 to 30 ohms. A brief 12 V tap should make the spool click; don't hold power on for more than a second or two.
Tools: Multimeter
Measure oil pressure at the switch port
Fit a gauge in place of the pressure switch. With the solenoid off, pressure should be close to zero; when it's energized with the engine revved, pressure should jump sharply toward normal oil pressure. No jump means the oil isn't getting through the solenoid.
Tools: OBD-II scanner
Check the pressure switch
If pressure is present but the switch status doesn't change, test the switch with a meter while pressure is applied and look for oil inside its connector. A failed switch is cheap and easy to replace.
Tools: Multimeter
Where the parts are
- 1Ignition coil
- 2Spark plug
- 3Fuel injector
- 4Camshaft sensor
- 5Crankshaft sensor
- 6Engine computer (ECM)
- 7Intake manifold
Repair options & costs
| Repair | DIY? | Estimated cost |
|---|---|---|
| Top up or change engine oil | Yes | $15–$110 |
| VTEC solenoid gasket with filter screen | Yes | $20–$150 |
| Replace rocker arm oil pressure switch | Yes | $60–$220 |
| Replace VTEC solenoid assembly | Yes | $200–$500 |
| Oil pump replacement or sludge cleaning | No | $600–$1,500 |
Rough US estimates for parts and labor; shop rates vary by region. Not a quote.
Notes by brand
Honda
Some 2.4 L K24 engines in the Accord and CR-V, as well as other Honda engines, are known for burning oil between changes. On those cars P2646 is often the first warning of a low oil level, so checking the dipstick every few fill-ups is worth the habit.
Field data
| Chevrolet | 7 | Malibu, Malibu Eco Eassist, Impala |
|---|
Source: NHTSA Complaints API (US government open data), analyzed by DTC mention.
Emissions / smog test impact
Will fail
A stored P2646 lights the check engine lamp and fails an OBD-based emissions or smog test. After fixing the cause, drive a few days so the monitors complete before testing.
Frequently asked questions
Is it safe to drive with P2646?
Generally yes – the engine just stays on the low-rpm cam profile and loses some top-end power. The real risk is the low oil level that often causes the code, so check and top up first.
Why does low oil affect VTEC but not the rest of the engine yet?
The VTEC circuit needs pressure to arrive quickly at the rocker shaft, and the pickup can suck air when the level is low during hard acceleration. The switch notices that before the main oil pressure warning does.
What's the difference between P2646 and P2647?
P2646 means the system didn't switch on when asked. P2647 is the opposite: the switch reports pressure when the system should be off, which is more often a stuck solenoid or a faulty switch.
Sources
- SAE J2012 – Diagnostic Trouble Code Definitions
- ISO 15031-6 – Road vehicles, diagnostic trouble code definitions (EOBD)
- Manufacturer public service information (cross-checked)
- NHTSA Complaints API
- Methodology: How We Build Code Pages · Data Sources We Use · Editorial Policy