CarTalk.com Best of Deals Car Reviews Repair Shops Cars A-Z Radio Show

Frustrating 2001 Corolla

Hello,

I have a frustrating 2001 Toyota Corolla. The check engine light is on and the computer indicates an O2 sensor is bad (the one ahead of the catalytic converter). It’s pretty clear the engine is running lean, is this typical for a bad O2 sensor? Let me describe a bit of the abnormalities regarding the engine running.

When I start the engine, it starts right up without a problem, but the idle is up around 2k rmp. The idle gradually slows down to about 1200 rpm until the car is warm. Once the engine is at normal operating temperature, 50% of the time the idle will be so low that the car wants to die. The rest of the time it idles around 900rpm.

Acceleration is also odd. I get massive hesitation when trying to accelerate 95% of the time. The other 5% of the time the car behaves perfectly. Also, if I run the air-conditioning the car runs pretty well, and hesitation is difficult to notice.

Often times if I stop the car for 10 minutes or so, the poor engine behavior ceases. And the car runs like it’s supposed to…

I have replaced the spark plugs, mass air flow sensor (thinking that was the problem). The plugs were change at a shop and the mechanic said the electrodes had nearly disappeared. I’m planning to change the O2 sensor this weekend…

Any thoughts and or help would be greatly appreciated!

Thanks,
Tim

Also this thred discusses my problem to a T. But no solution was suggested.

http://community.cartalk.com/discussion/2279294/corolla-check-engine-light-stalling

There are no codes that tell you that you have a bad O2 sensor - or any other part for that matter. Report the very exact and specific code in the “Pxxxx” format.

You mention that it is clear that the engine is running lean. What makes that clear? (Your symptoms MIGHT come from running lean - or maybe not). Since you suspect a lean running engine why wouldn’t you just check it for vacuum/intake leaks before replacing an O2 sensor? Guessing at this kind of thing gets expensive fast. I’d think that paying for a MAF sensor would have cured you of it.

“There are no codes that tell you that you have a bad O2 sensor”

WHAT???

P0130
P0131
P0132
P0133
P0134
P0135
P0136
P0137
P0138
P0139
P0140
P0141
P0142
P0143
P0144
P0145
P0146
P0147
P0148
P0149
P0150
P0151
P0152
P0153
P0154
P0155
P0156
P0157
P0158
P0159
P0160
P0161
P0162
P0163
P0164
P0165
P0166
P0167

Look 'em up.

Tester

Tester. I am more than familiar with OBD II codes and I don’t need to look any of them up. None of them tell you that the O2 sensor is actually what is producing the code.

So lets’ see…I don’t have all day:

P0130 CIRCUIT malfunction
P0131 CIRCUIT low voltage
P0132 CIRCUIT high voltage
P0133 CIRCUIT high voltage
.
.
.
.

The last time I plugged in my vacuum cleaner and it didn’t turn on I didn’t start by throwing away the vacuum cleaner…

Aside from that, my guess is this OP has a lean mixture code - reading between the lines. A lot of people will say that this means a bad O2 sensor so this OP is just repeating inaccurate info. I’m betting the code is P0171. Find me the O2 sensor CIRCUIT reference attached to that code…

cigroller,
The O2 sensor produces it’s own voltage. So a low or high voltage code points to a defective O2 sensor. If the code indicates a heater circuit problem with the O2 sensor it usually means the heating element in the O2 sensor is damaged. Probably from thermal shock. If the code indicates that the O2 sensor is slow to respond it means the O2 sensor has become lazy. Or the cross-counts have slowed down.

Out of all the vehicles I’ve scanned that displayed any of these codes, 99% of the time it was caused from a defective O2 sensor.

Tester

This is all guesswork and chatter until the OP says what the actual codes are.
At any rate a few tests with a multimeter are in order before changing parts.

That vintage Corolla has a common problem with intake manifold gaskets leaking air.

Tester, I know how O2 sensors work. I also know that they can’t produce codes. Only the PCM can set the code. No matter what you do the PCM & sensor have to be able to communicate. So an O2 circuit is never a specific reference to a part. The O2 sensor can’t set the code. The PCM can only rely on the wires.

Is an O2 sensor circuit code such as those you posted most frequently because of the O2 sensor? Probably. If it was me and I had the code, and my sensors were old anyway - I’d probably just replace the sensor first. Its easier & quicker than checking the wiring. But would I know from the codes that’s what it needed? No. If I replaced it & the code remained and I showed up here saying “the code reader said my O2 sensor was bad so I replaced it but I still have have the same code…”? what would people say to me next? Well, the first thing I’d say is that a code can’t tell you that a part is bad - because it can’t.

Aside from that, this post talked about being lean. How many people come here reporting that some auto parts store lackey pulled a P0171/0174 and told them it “means” their O2 sensor is bad?

Or how about the people who say replace the #2 O2 sensor when the catalyst effeciency is below threshold, and there isn,t even an O2 sensor code?

Like I said, my expierience has shown that 99% of the time these codes indicate a defective O2 sensor.

Tester

Yeah, and if this was a P0420 post then we could discuss that & what it actually means in terms of O2 sensors and the most conservative way to proceed.

As it is we have a guy with a car that shows signs that it might have a fairly substantial vacuum leak and a cryptic note about a belief that an O2 sensor is bad and the car is running lean. And until an actual code is reported then no one actually knows what he is talking about or the basis for the guesses about sensors or lean running or anything else.

I think cigroller’s point about an O2 code not necessarily being a bad O2 sensor is a valid one. If there’s a code for a faulty heater circuit does that mean the O2 is bad? Or is due to a blown fuse, chaffed wire, faulty connector, or ECM fault?
The same with a lean or rich code. Vacuum leak, subtle engine misfires, poor injector spray pattern, etc?

I’m not sure but I think some late model Chryslers have been setting O2 codes on low miles cars and the problem is the PCM, not the O2s. I’m by no means a late model Chrysler expert so I’m not privy to the details on that particular problem.

I know one thing; I’d be inclined to change an O2 sensor for an O2 sensor type of code than I would be to change a MAF sensor. Changing the plugs wasn’t stupid but let’s not replace the rear view mirror. Changing the O2 sensor isn’t the worst thing to consider, especially if shops or the OP are going to replace everything else within two feet of the thing first. If it’s going to be a money dump any way, why not try changing the thing? Which way do I look to find the North Star?

I think it’s ironic that someone with the handle “Tester” doesn’t advocate testing…

I don’t think this OP is coming back.

Okay guys autozone pulled the code from my car’s computer. It’s P0420… any suggestions?

also I checked for vacuum leaks by spraying starter fluid on all the vacuum lines I could find and the idle didn’t changed…

P0420 says that the catalytic converter isn’t working efficiently.
Repeat: the catalytic converter isn’t working efficiently.

Three things:

  1. It could be the converter is bad, OR there’s something not right about the exhaust gasses going into the converter (garbage in, garbage out). A vacuum leak or exhaust leak can upset things.

  2. The computer uses signals from the O2 sensors to judge how well the converter is working.
    So it could be a faulty O2 sensor. The way to tell for sure is to measure the signals coming from the sensors with a graphing scanner or oscilloscope. It seems far too many mechanics would rather guess and blindly change parts.

  3. A bad converter couldn’t produce the driveability problems you’re having.

Did you spray starter fluid around where the intake manifold attaches to the head?

Just like circuitsmith said.

The issues with idle & acceleration can be just about anything related to air/fuel/spark. So you need to check the fuel pressure, including under load. As suggested, add the intake manifold to the list of things to check for leaks along with the main intake tract. Check out your EGR system and find out what it is doing. If those spark plugs come back out, check the compression.

If you have access to a scantool, hook that up.

You can ignore the P0420 until the car is running right, but keep scanning the error codes since you won’t know if any new ones get thrown.

Circuitsmith,
I soaked all around the intake, the throttle body, the injectors, the vacuum lines and all with starter fluid. The idle didn’t change.

Cigroller, the 2001 corolla does not have an EGR valve. What part of the EGR system should I check?

When I swapped out the MAS the car ran great for about 2 days then back to awful. I thought the new MAS was the fix but clearly it was not. When I installed the MAS I disconnected the battery. Does disconnecting the battery reset the ECU? If so, the reset ECU and the car running well for a few days after should be indicative indicative of the computer getting bad information from some sensor and adjusting the fuel mixture, right? If the O2 sensor is bad would the car run lean or rich?

The idea with the EGR valve would be that if its opening when it isn’t supposed to it can act like a vacuum leak. Yours apparently uses a vacuum switching valve with not EGR valve in between. Autozone’s free online repair info will have the basics on it.

Once the car is fully warmed up the upstream O2 sensors are responsible for the info that goes into the computer’s control of fuel/air mix. So yes. O2 sensor problems can create problems with how the car runs. But there must be stuff you’re not telling…because you seem stuck on O2 sensors and leanness.

You need to find a mechanic who can check the fuel pressure (like cigroller said before) and plug into the computer (OBD-II port) and read the running parameters while the engine is acting up.

One of these would do it, if you’re willing to learn how to use it: