Jump to content
Ultimate Subaru Message Board

'96 Legacy 2.2 engine hesitates and surges P0120


Recommended Posts

I have a throttle position sensor error, P0120.  After the engine warms up the engine will eventually start to hesitate and then surge, as if I was taking my foot off the accelerator and then pressing it again.  After a bit of surging, the check engine light comes on and I can read the P0120 code.  Warm or cold the engine starts and idles fine.  If I clear the codes and drive some more, the surging and TPS error will return after a bit.  It never happens until the engine has been warm for several minutes. 

I replaced the TPS and the problem didn't go away, so I don't think it's the sensor causing the TPS code.

Does anyone have any recommendations for what else I should try?

Link to comment
Share on other sites

I cleaned the throttle body as best I could, no change, still have the same intermittent problem that only shows up once the engine warms up.  I can't clear the P0120 code until the engine cools down.

I removed the connector from the TPS, and the center pin shows 4.6 Volts.  Should that be higher?   Obviously, it's the three pin TPS.

The new TPS shows about 5kOhms resistance between the outside pins, and the center pin to outside pin resistance varies smoothly from about 60Ohms to 5kOhms.

I found a couple threads on how to clean the throttle body.  The instructions varied from ``Don't even try, you'll ruin it!!!'' to ``Spray it with Gumout.''  I cleaned it inside with a rag moistened with a little WD40, until I couldn't get anything more out.  There was definitely a lot of carbon in there, but only a thin coating, not thick piles of crud. 

Link to comment
Share on other sites

My guess is the TPS is seeing it's fully closed value when you are at light throttle.  I think this type has an initial "fully closed" switch built in that goes to ground when at idle, off throttle entirely.

If that switch portion is closing too early, this causes the ECU to cut fuel for engine braking, then as you begin to press the accelerator a bit more in response to slowing down, you open the idle switch in the TPS and fuel kicks in again.

Try the adjustment procedure for setting the TPS idle switch "fully closed" position.

Link to comment
Share on other sites

On 6/27/2019 at 9:02 AM, FerGloyale said:

My guess is the TPS is seeing it's fully closed value when you are at light throttle.  I think this type has an initial "fully closed" switch built in that goes to ground when at idle, off throttle entirely.

FerGloyale, mine is the three pin TPS.  Is that the kind you're talking about that has the fully closed switch?  Can you point me to a description of the procedure to set it?  I still haven't found that.  Also, do you know if that 4.6V open circuit reading on the center pin of the connector is OK?

Link to comment
Share on other sites

http://jdmfsm.info/Auto/Japan/Subaru/Legacy_Outback/1996/Service Manual/ENGINE SECTION/ENGINE/

second pdf from the bottom (ends in 5971) is a diagnostic table listing the most common to least common causes of various issues.

Perhaps you should take a look at that. The symptoms you are describing could have multiple sources, including bad vacuum lines, a cracked (or poorly connected) air intake tube, etc

  • Like 1
Link to comment
Share on other sites

Thanks, heartless.  I was able to retrieve that from http://jdmfsm.info/Auto/Japan/Subaru/Legacy_Outback/1996/Service Manual/ENGINE SECTION/ENGINE/MSA5TCD96L5971.pdf

It does look as if a vacuum leak is a likely candidate for surging and hesitation.   The throttle position sensor that I keep getting a code for doesn't even show up on that chart.  The TPS is new, and its resistance measures OK, so I don't think it's causing the code.

I have a vacuum gauge.  As I recall from carburetor days, if the idle vacuum is low, or fluctuating, there is a significant vacuum leak.  Does it work that way for fuel injection?

Link to comment
Share on other sites

pretty much, yes.

old, dry vacuum lines (23 yrs old) can easily crack, or just not seal well any more. Good practice is to get some new line in various sizes and replace everything you can get at. Not that expensive to do and frequently will solve those "head scratcher" issues. There are a few smaller sections that can be a bit of a pain to get at, but they are entirely do-able with a little patience and perseverance.

Link to comment
Share on other sites

I got a scan tool, an Autel AL629, and looked at some data.  What I found is that the TPS reading jumps about wildly while the engine is bucking and surging and hesitating, and drops to a steady zero once the thing stops misbehaving.  Unsurprisingly I now have a P0121 TPS range error as a stored code, along with the P0120.  My best guess right now is that I have a bad connector or broken wire somewhere in that circuit, and when it makes contact and the signal gets through it's all noise, and when the broken wire isn't making contact at all, the circuit reads zero.  I plan to test that hypothesis by disconnecting the TPS entirely, and driving for a while to see if that intermittent problem returns. 

I haven't put an analog vacuum gauge on it yet, but the scan tool shows that manifold pressure responds as expected to throttle operation.  The scan tool probably wouldn't show the flutter that could show up on an analog gauge, and I should get my old analog gauge on there. 

Link to comment
Share on other sites

just a spit ballin here, but i had a honda civic that did the same thing, similar CEL code... turned out the fuel filter was pretty clogged up, sooo changed that, fixed the problem, light went away on its own after a couple hundred miles of driving.
So, i would guess checking your fuel system if your current line of investigation doesnt lead you anywhere.

Link to comment
Share on other sites

1 hour ago, Jadu108 said:

just a spit ballin here, but i had a honda civic that did the same thing, similar CEL code... turned out the fuel filter was pretty clogged up, sooo changed that, fixed the problem, light went away on its own after a couple hundred miles of driving.
So, i would guess checking your fuel system if your current line of investigation doesnt lead you anywhere.

Thanks.  I should have said in the original post that I did replace the fuel filter and test fuel pressure early on. 

2 hours ago, 1 Lucky Texan said:

you also try temporarily adding a ground connection from the TB to a good ground - and look around for ground points to refresh....wire brush every side of every lug, the body/part, the little screw, etc. - then reconnect and maybe coat with dielectric grease.

That is an excellent thought! I'm accustomed to AC power, and I don't have the habit of thinking about power flowing through anything but wires.

Link to comment
Share on other sites

I also am in the habit of re-connecting connectors on occasion, in case a fresh 'wipe' of the contact surfaces removes some minor voltage drop.

the ecu and all the sensors. solenoids, motors, etc. make the modern car as much an 'outdoor' computer as a vehicle.

 

doesn't mean it will solve the present issue, but is cheap and easy to try.

 

 

 

Link to comment
Share on other sites

 

On 7/10/2019 at 9:15 AM, 1 Lucky Texan said:

you also try temporarily adding a ground connection from the TB to a good ground - and look around for ground points to refresh....wire brush every side of every lug, the body/part, the little screw, etc. - then reconnect and maybe coat with dielectric grease.

I tested the resistance between E13 pin 1 and ground, got 136 Ohms.  That's obviously bad, so I found the other end of that cable at the E2-B21 connectors.  There are three engine-bulkhead connectors mounted to the passenger side of the engine, down low.  E2-B21 is the 12 pin connector in the middle of that stack.  I unplugged that one, and put on a smear of dielectric grease before I re-plugged it.  Then I read -5 Ohms.  I figure the negative resistance indicates there is some stray voltage, but I'm not going to worry about that yet.  I plugged the connector back onto the TPS and took a test drive.  Same problem!

 

On 6/27/2019 at 10:02 AM, FerGloyale said:

My guess is the TPS is seeing it's fully closed value when you are at light throttle.  .

Now that I have the scan tool , I could check that, and it was indeed the case.  I probably was at 1/8th throttle before the TPS value got off 0%.   With Key On Engine Off I twisted the TPS until the scan tool reported the smallest non-zero value I could manage, about 0.4%.  I drove about 50 miles and I think it's fixed.

  • Like 2
Link to comment
Share on other sites

Not fixed at all!  The problem is intermittent, and it's back.  As before, the live data shows the TPS value falls to zero (the gas peddle is depressed and the throttle is definitely open) and then it jumps back up to a correct value, causing a surge.

 

I'm back to suspecting a bad wire or bad ground.  For now, the engine runs just fine with the TPS disconnected, which means the computer is getting a 100% reading.  We can live with that for a while.

  • Confused 1
Link to comment
Share on other sites

  • 1 year later...

Here's an update with what may be the final solution: when we changed the clutch on this, we noticed that one of the pins on the engine-to-car connectors was pushed halfway out, and had obviously not been making a secure contact.  That was one of the pins for the TPS!  We couldn't get the pin to go back into the connector, so we pulled it out of the connector housing on both sides, and plugged it together outside the housing.  A little shrink tubing and it works again!

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...