1997 RAV4 bucking

This is my first posting. My wife’s ’97 RAV4 has 135,000 miles on it. Two days ago it started bucking/hesitating (feels more like bucking, and its worse if you try to give it the gas) at speeds below 25 -30 mph. No loss of speed/power when going uphill. Its worse when the engine is cold. I cleaned the throttle body with spray cleaner, no change. I added Prestone fuel system cleaner to the gas and have driven 20 miles since then. Very little if any change so far. I always use good gas (Chevron regular) and the car has been well maintained (primarily by me). Timing belt, seals and both bearings were replaced two years ago. Just about a year ago I changed the plugs, air filter, distributor cap and rotor. The fuel filter has never been changed, and the spark plug wires have never been changed. Any ideas on what I can try next? Where is the fuel filter located? I have the Toyota repair manual. It shows a pic of the filter, but not where its located. I have one ready to install if that could be the problem.

If it doesn’t have any trouble with hills then I’d not suspect a fuel filter to do much good - which is no reason not to replace it though.

Is your check engine light on? If so, report the specific error codes (e.g. “P1234”)

There is no reason to leave 16yr old/135K wires on there - even if changing them doesn’t help. Spark plug wires are easy to change and not very expensive. (Unless they are COP).

Clean your MAF sensor.

When was the cooling system serviced last? How old is the thermostat? If this stuff hasn’t had attention recently, service the cooling system, replace the thermostat, and test the coolant temperature sensor.

I agree on the fuel filter, which is why I hadn’t changed it. Thermostat is the original thermostat. Coolant system was flushed and 5 yr/50,000 mile antifreeze was done 2/6/2010. Hoses were also replaced. Engine temp gauge is where it has always been. Is this possibly a throttle position sensor problem? I have the original; I replaced it in 2001 when I had a low idle issue. New ones run $124. I might just put the old one in to see if it solves the problem, then get a new one if it does. Check engine light has been on for a while now, it was either code P0441 or P0446 (charcoal cannister issue) but that hadn’t affected how the car ran. I’ll get the codes downloaded on my way home and see if there’s a new one.

You should scan the codes again and see if anything else is in there. You can get a stumble out of evap system problems. E.g. a purge issue (P0441) can cause stumble. The valve opens up to feed the vapor into the intake. If everything isn’t correct it may act something like a vacuum leak. Its possible for it to not show at idle because the purge valve should be inactive. Its possible that it would affect things worse at low speeds on a cold vehicle b/c things would be very sensitive to being leaned out.

You can just test the TPS if you have a voltmeter. It has 3 wires - a 4.5V reference voltage, ground, and signal return. Back probe the connector. The ref wire should have a constant voltage around 4.5V with ignition on. The other should provide something in the neighborhood of .5V at closed throttle. As you slowly open the throttle it should slowly and smoothly increase up to close to 4.5V at wide open throttle. You’d be looking for twitches, flat spots, - any anomalies.

Check your coolant temp sensor regardless of anything else. Its largely responsible for “choke” and thus the fuel mix on cold start. You mention it might be worse/more common when cold. If the PCM thinks the engine is warmer/colder than it really is your fuel mix will be too lean/rich.

I had the codes scanned:

P0441 (charcoal cannister issue)
P0302 cylinder 2 misfire
P0303 cylinder 3 misfire
P0300 random cylinder misfire
P0110 intake air temperature circuit fault

I installed a new set of spark plug wires (NGK brand) and there was no change.
I then swapped out the throttle position sensor with the spare I had, still no change.
Any ideas on what to try next?

MAF sensor cleaning will not hurt.

I would deal with the IAT fault. That will throw off the air/fuel mix, and could then account for the misfire codes.

P0441 is NOT an issue with the charcoal canister. It is an issue relating to the purge valve. The fumes go to the charcoal canister. The purge valve is what opens up up to let the fumes get drawn into the intake. When the PCM tells it to open but doesn’t see what it should in terms of flow this code is set. This kind of problem normally does not cause problems with how the car runs. However, it is possible and I would not ignore it either way. At the very least dig down to the vacuum lines and check them.

I found no loose vacuum lines. This morning I replaced the IAT sensor, no change. Do I need to disconnect the battery for a while to clear the ECM’s memory? I did notice this morning (both before and after changing the IAT sensor) that sometimes (not often) it appears to accelerate normally from a stop. More often, the bucking is obvious. I plan on replacing the spark plugs tonight, could they possible be so fouled from an incorrect air/fule mixture to cause the bucking/missing?

I changed the plugs, only #2 had black carbon, the other three looked normal. No change, still bucking. I checked the voltage from the ECM (y-b wire) to ground with the ignition on. Supposed to be 5 VDC, I read 4.99, so that looks ok. I disconnected the battery to clear the codes, that didn’t affect the bucking either. The manual mentions using an OBD II scan tool with different things connected/disconnected to read temperature readings to determine if you have a short, and open, or a bad ECM. I don’t own one of those, but I’ll look into it. Any ideas out there?

Check engine light came on again. This time, only code P0110 stored. I’m guess I either have an open wire (the brown wire) or a shorted wire (based on the 4.99 volts measure above, the brown wire again) or I need to replace the computer. Anything wrong with that logic? The OBDII that can do the temp thing like in the Toyota manual is $250. I’ll try to see what I can figure out with my ohm meter.

I tried one last thing before it got dark. With the engine off, I checked both wires to the connector for voltage and ohms. Unlike I suspected, the brown wire had no continuity to ground and no dc voltage. The yellow-brown wire on the other hand (the one that measured 4.99 volts above) measured 0.596 ohms to ground consistently. At first, it measured around 300 mV, but on subsequent measurements steady at 81 mV. ???

With all 3 connectors to the ECM disconnected, both wires read no continuity to ground. The yellow-brown wire read 2 mV to ground, the brown wire 0 mV to ground.

Well, I fixed it this morning. The 11-month old distributor cap was defective. Apparently, the misfires was causing the P0110 code, and not vice versa.