Backstory, about 2 months ago I was driving down the road after a big rain shower and hit a deep water puddle and the truck starting bogging down really badly. Eventually I had to stop and put it into Low range, to be able to get it to be able to pull and going again. It would idle fine, rev fine, but bog down when under load. After a few miles this cleared up and haven't had an issue since till yesterday. Yesterday I went through a big water crossing and shortly after that it started acting the same way again. Idle fine, rev fine in Neutral but bog under load. Put it into Low range and could get it going. If I could keep the RPMs above 2000 or so it seemed OK, but if it dropped below that it would bog down. I had to leave it in Low range for a good while this time, and a few times when it would bog down I could basically pump the gas and it would speed up a bit and eventually get going fast enough to get the RPMs high and it would start driving "fine" again. After about 30 minutes or so it seemed to have cleared up and would pull in High range again. This morning I woke up and started the truck and it was running very rough, didn't want to rev, CEL came on and eventually died. Pulled the codes and found a P0340 Cam Position Sensor fault. It's very strange as we looked under the hood when it was initially giving me trouble and found no water had gotten up near the top of the engine. The water crossing came up to about the bottom of the doors.
I just learned that the Cam Position sensor is part of the Distributor and is around the $500 mark, so just buying that as a troubleshooting measure is a last resort. I'm wondering if it's more likely to be water getting into the wiring harness somewhere and causing a short, and the P0340 is a misleading fault code?
I just learned that the Cam Position sensor is part of the Distributor and is around the $500 mark, so just buying that as a troubleshooting measure is a last resort. I'm wondering if it's more likely to be water getting into the wiring harness somewhere and causing a short, and the P0340 is a misleading fault code?