Honda Civic Forums - 7thGenHonda banner

P2646 code and only revs to 4k rpm

1.3K views 7 replies 3 participants last post by  Blues_hawk  
#1 ·
So I've had this issue for a while now and it has just about everyone I know stumped. Sorry, this may be long several things have happened with the car since the code.

So the car is a 2005 Honda Civic EX with 5spd transmission. D17A2 motor with 241k miles.

The issue began shortly before my head gasket blew about a year and a half ago. The car will allow me to go past 4k in 1st and 2nd gear the first few minutes of driving, but then the rest of the time it will not go past it again, until the next startup. A code appeared - P2646 - which says "A Rocker Arm Actuator System Performance/ Stuck Off Bank 1".

After it appeared the car was taken into the shop where me and my boyfriend tore down the top end and sent the head off for resurfacing. It was a while before the car was back on the road as we had to wait for the head to come back and I had to buy some other parts to install as well.

Soon we got her back together and the problem was still there. We then started looking into possible causes and going through parts (and my bank account😭). We started with the oil pressure switch on the block. I bought one from Oreilly's and it was an Import Direct brand. When put in my gauge began flickering when my car was idling but it would stop when given gas. This was not the issue with the OEM switch. My boyfriend then took it out and we realized on the new one the hole on the motor end of the switch is smaller than that of the OEM - so we assumed this to be the issue and installed the old one back in.

I had also read that the oil could be low and the filter could be the issue but she had a fresh oil change after the head gasket replacement with ( I believe ) a Wix or Honda filter. So I ignored this possible solution.

Then we got to the "expensiveish" side of things. But I took the cheap route. I ordered a VTec solenoid from EBay and we installed it AFTER we tried cleaning the screen on my original solenoid didn't fix the problem. The new solenoid also did nothing. We took both and my boyfriend wired them up off the car to see if they worked on their own and they did. I also bought an oil pressure switch for the solenoid and that did not work either.

Currently, I am back to believing that the oil may be the issue. Not so much that it's low but maybe the quality of the brand I had been using. I always carry fluids (oil, antifreeze, water, brake fluid, washer fluid) in all my vehicles. So I noticed one day that a quart of oil I kept in my Honda had turned over in the seat and spilled into a clear, clean lid that went on a lil tool set i have in the car and the oil was filled with sandy, gritty stuff and I had just bought it the week before. It was store-brand oil.

I'm thinking of doing another oil change on the car. It's also time for it because she sat for months, because I kept getting faulty clutch hydraulic parts from the stores in my town. (4 clutch master cylinders, 2 slave cylinders, and one clutch line later she moves). I bought some Castrol full synthetic oil and a WIX filter. My boyfriend also agreed to try a oil pressure test before and after the oil change.

I'm really at the end of my rope because I don't want it to be an oil pump issue after having the car taken apart as long as I have for the head gasket and everything else.

Also worried it could be ECM because when I bought the car it had 1st O2 sensor code and after splicing in a new one (store wanted 300+ for correct one just because the harness was longer on it they were also special-order only) it still shows code but when hooked to computer the sensor reads correctly.

Have no clue what else to check out at this point. I'm honestly afraid I will damage this motor continuing to drive it as it is my daily.

Any ideas or avenues I may have missed??
 
#2 · (Edited)
I think you're on the right track with the vtec system as they are usually tuned to engage about 3800rpm and failure would code and limit the engine. Since you already ruled out a plugged up screen and the solenoid itself I wonder if it's actually being sent the signal to engage.

How it works: The ECU output pulls down to common which engages the vtec actuator(the other wire should always have 12v to chassis) and open the oil galley to allow oil pressure to push out the pins on the extra set of intake valves, and the nearby pressure sensor also gets pressure and changes state(like closing a switch). The ecu reads this voltage change as a successful switchover.

Check to make sure the actuator plug has it's 12v line with the key on, and then maybe try this more involved test.

Be sure to clear the codes before the experiment. Connect a voltmeter to the actuator wires so you can see it while driving. A passenger watching the meter is helpful to avoid cliff surfing. See if it actually changes voltage when it should engage(3200-3800+ uphill). If no voltage change at the actuator then your problem is in wiring or ecu, if it is changing, then check the pressure sensor the same way. It should be a "closed when pressure" type switch which should show 0v across it when it is pressurized.

*I've thought about installing a light on the actuator that says WEP(war emergency power) on the dash or something.

Sludge and thick oil(should be 5w20) or low oil pressure(bad/wrong filter/oil pump) can also do this and could be bad for the engine, so that oil pressure check you're planning isn't a bad idea at any rate. If you get voltage at the actuator but no change at the sensor then you might also use that mechanical oil pressure gauge at the vtec pressure sensor to see if the pressure changes under load conditions.

I sense hoses and blue tape on glass in your future. <--use a passenger watching please. We have cliffs you know.

RIP VA58 Grayson run. :cry:
 
#3 ·
Also, was that a 0420 code in the bit about the 02 about the sensor? Mine has two sensors and I just had to replace the "downstream" o2 sensor to get it passed the emissions check they do after being unplugged a while. Check out " Ten years later..." for more on that. It's also possible yours has the catalyst on the header that doesn't have the one under the car.
 
#4 ·
Low oil pressure can be the problem. I started running 15/40 in my Element with the same problem. If it's fix the problem, or ditch the car, you can bypass the VTEC solenoid, I will try to find the post for you.

Here it is. My Element has the color wires like he describes, but your Civic might have different color wires. Good luck.

I’ll start by describing the VTEC system as I best understand it. When the PCM wants VTEC, it sends 12v (EDIT - this is a square wave power signal, so it probably does not read 12v on a multimeter) onto the GRN/YEL wire to the VTEC solenoid, which is grounded to G101 through a black wire. The VTEC solenoid activates and sends oil pressure to the VTEC pressure switch. The BLU/BLK wire carries 12v from the PCM to the VTEC pressure switch, which is in a normally closed position (continuity) allowing the voltage to be routed through the BRN/YEL wire to G101 ground. Since the wire is grounded, the PCM reads 0V on the BLU/BLK wire. When the VTEC solenoid opens and sends sufficient oil pressure to the VTEC pressure switch, the switch opens (becomes discontinuous), and the BLU/BLK wire path to ground through the BRN/YEL becomes disconnected. This causes the PCM to read 12v on the BLU/BLK wire. A scanner will read the PCM data VTEC SOL and VTEC PRESS SW. When VTEC is off: VTEC SOL = OFF, 0V on GRN/YEL wire, VTEC PRESS SW = ON, 0V on BLU/BLK wire. When VTEC is on: VTEC SOL = ON, 12v on GRN/YEL wire, VTEC PRESS SW = OFF, 12v on BLU/BLK wire. P2646 is vtec pressure switch circuit LOW, which means that the computer was expecting 12v on the wire, but got 0V on wire. To say it in a different way, if we ever have a situation where VTEC SOL=ON and VTEC PRESS SW=ON, that means a P2646 code will appear. In English, when the PCM activates the solenoid, it expects the vtec pressure switch to respond by saying it sees pressure. Potential causes of P2646 would then either be: 1.Computer shorted to ground at BLU/BLK pin, abnormally reading 0V 2.BLU/BLK wire shorted to ground, abnormally reading 0v 3.vtec pressure switch stuck in closed position, always in continuity, 0v 4.vtec pressure switch not getting sufficient oil pressure to open the switch, such as in a a) bad solenoid not opening, b) clogged vtec spool valve screens, or c) low engine oil pressure (from a multitude of causes) Ok, now that we are on the same page, take a look at the P2646 algorithm listed. I have no problems with steps 1-5. That’s all basically checking oil level and confirming the P2646 is still present. The problem I have starts with step 6. Disconnect vtec pressure switch connector. Then in step 8 it says, check to see if VTEC PRESS SW = ON. Well, if we disconnected the vtec pressure switch connector, we have made an open circuit. In an open circuit the BLU/BLK wire will measure 12v and we have artificially made the VTEC PRESS SW = OFF. The only way VTEC PRESS SW = ON when we have disconnected the vtec pressure switch connector is if we have a short to ground on the BLU/BLK wire or a short to ground inside the PCM. But what goes the manual say? The manual says if VTEC PRESS SW = ON the next trouble shooting steps is to the check the vtec oil pressure. That can’t be right. We should be checking for a short to ground. The manual’s other leg says if the VTEC PRESS SW does not say ON, then replace the vtec pressure switch. Well, that also can’t be right. We disconnected the vtec pressure switch connector in step 6. This causes the VTEC PRESS SW to stay in the OFF position all time time because we made and open circuit. It is currently normal since we caused it. The other bizarre discrepancy is steps 12+13. it says to run the VTEC test, which basically revs the engine up to 3000ish rpms and check the vtec oil pressure. In the manual the cutoff limit is 7psi which can’t be right. 7psI is an idle speed reading, not a 3000rpm reading. FWIW, the similar test in a 2003 CRV manual puts the cutoff limit at 57psi. It is my interpretation that the factory manuals’ wiring diagrams are correct, while the step by step algorithm is wrong. What I would love to hear from you guys is if you think I am correct and the manual’s step by step algorithm is wrong and should just be ignored completely … or is there a misprint in the manual that would make everything make sense? Or am I interpreting the steps in the manual incorrectly?
 
#7 · (Edited)
Thanks for the help. Unfortunately it has ended up being the computer. Now my biggest problem os finding one. So like stated above the car is a 2005 honda civic EX d17a2 but with a manual transmission. Unfortunately every where I look all ECM/ECU are for a auto. Even at my job (parts store) we can only get one for automatic so I'm completely at a loss here

EDIT:

so I am dramatic 🙄 🤣 right after I made the conclusion and convinced myself the ecu was the problem my boyfriend did a last resort (i guess). Right when i said i was done fighting it he said give me 10 minutes. He takes my coils out and proceeds to remove the valve cover. After he does that he looks and find this lil bolt loose and wedged just ever so slightly under a rocker. This bolt goes into a passage that from my understanding relates to my Vtec solenoid. It also explained the surging my car was doing while idling that I thought was the throttle position sensor.

Luckily there is no damage to my rockers or my motor because he made me wait those 10 minutes. He removed to bolt from it's little corner of attempted destruction and installed back in its proper place. I then drove the car for roughly 8 min right after. Then let it idle where no surging happened and I could still walk over and Rev to over 4k. She made it safely home and I had vtec the whole way!!!!