I have had the same problem with my 2005 PT Cruiser for some time now. The car keeps throwing the engine light with the P0016 code. This being a vague code, I have replaced the wiring harnesses at both the crank and cam sensors and changed the cam sensor itself with 2 different sensors, one being an OEM Chrysler part. When this first happened, I changed the cam sensor and it stopped for about a month, but has sense reared it’s ugly head and has yet to go away. I have even double checked my wiring connections at the harnesses. Any thoughts or ideas?
Just a note, this has been going on for over a year now and the car drives fine 99% of the time.
If it hasn’t been done, it could indicate that the timing belt requires replacement.
What is the symptom the 1% of the time it doesn’t drive fine? Does your engine use variable valve timing? If so, it could be a problem with that too.
I had just replaced the timing belt and a month later the trouble started. The problem is the car tries to go into “limp” mode. If you get out of the gas for a second, it will correct itself and continue as nothing is wrong. If you accelerate too quickly it will go into limp mode. I checked the timing carefully before putting it all back together and set it twice. It was spot on. When I bought the car years ago, the cam sensor went out on it and I replaced it. It tried the same thing a few years later on a 5 hour road trip in the middle of the night. It went into limp mode in the middle of no where. I managed to get to a station, remove the battery cable, and clear the computer. Never had a problem out of it until later when again, the cam sensor went out.
One idea, when you changed the timing belt (I presume you did this as a diy’er job), you had to remove a ground for access purposes, and you didn’t get it reconnected to the same chassis ground during final the button up. My Corolla requires a couple of grounds be disconnected to do a timing belt job, one of them is the ground for the distributor shaft sensors, another is for the fuel injectors and map sensor. The sensor circuit would still find another ground at a different chassis point, but that extra distance might degrade the signal quality and make the sensor seem intermittent.
You didn’t answer my question about variable valve timing (VVT), so I presume your engine doesn’t use that. That’s good, b/c it would complicate this diagnosis.
Without VVT, the valve timing is 100% locked to the crank timing, so the engine computer only uses the cam position sensor to decide whether the crankshaft is on the compression stroke, in which case it will fire a spark plug, or the exhaust stroke, in which case it won’t. What the car’s designer probably decided to do when the camshaft position sensor signal is absent or doesn’t make sense is to just fire the spark plug on every crankshaft stroke. That way the car will still run. However, it may overheat the ignition system and coils to fire the spark plugs twice as much as usual, so that’s why the programmed the engine computer to go into limp mode. That way you can still continue your trip to home or a service station rather than stranded on the side of the road, and with reduced rpm the ignition system doesn’t overheat. I presume you know that a shop having a Chrysler scan tool would be able to check whether your cam sensor is working correctly or not. That might be the better option here even if you decide to fix whatever’s wrong yourself, let a pro with the necessary tools diagnose it for you.
I guess what I’m suggesting is you still have a cam or possibly a crankshaft sensor problem of some kind or another.