Subaru Forester Owners Forum banner
1 - 13 of 13 Posts

·
Registered
2004 Forester XT
Joined
·
41 Posts
Discussion Starter · #1 ·
Hi;
I have been getting the steady CEL and cruise flashing with code P0031 HO2S since Jan. The CEL went out for a while (a 60 mile trip) in Feb, but has again returned with same code.
Interestingly, both times the CEL came on, I had just filled up with (premium) gas.
I don't do all that much driving, so it takes me a while (maybe 6 weeks) to go through a tank.

The car is running fine. No hesitation, no rough idle. Smooth as a kitten.

I did a lot of Google and found that this code relates to the front O2 sensor heater, and not the sensor itself - although the heater is an integral part of the sensor...
Apparently, the heater could be weak and not yet completely gone. Or, the problem could be bad wiring? Maybe a corroded connector?

How difficult would it be for me to reach the location of the O2 sensor and check the wiring?

The vehicle is not due for inspection this year, so I'm wondering whether or not I can ignore the CEL and code for a while. I understand that replacing an O2 sensor may cost around $500.

Thanks for your advice
FW
 

·
Registered
2007 2.5XT Limited 4EAT
Joined
·
343 Posts
The sensor itself is pretty easy to get at. Remove the right front wheel and splash shield and you'll see it. Generally speaking though, if the heating element is failing the sensor is on it's way out. Could be that there is some corrosion or bad wiring given it's location, but I'm not sure how likely that is. You don't have your mileage listed so this is just a guess but, if you have over 80K on the clock it's probably time for a new sensor anyhow.

Depending on how handy you are you can get the job done for under $100. The only tools you need besides the kit to get the wheel off are a screwdriver, small ratchet with 8mm and 10mm sockets (in case your splash shield is bolted on) and a 7/8" / 22mm wrench to remove the sensor.

As far as driving with a bunk sensor goes, you should be fine for a bit. The only thing you are likely to see in the short term is lower fuel economy. I'm not 100% on the failure mode of these sensors, or the failsafe programming to deal with this. The ECU may just resort to "open loop" programming to cover. This means the car will generally run pig rich to compensate (poor economy) and you may also experience a lack of performance at this point. If the sensor fails in the rich range and the ECU begins pulling fuel to compensate, this could be worrisome depending on how long you let it go.

It is best to replace faulty O2 sensors as soon as possible. If you take this analogy...The O2 sensors are on sentry duty and you do not want your watchmen falling asleep on the job.
 

·
Registered
2012 XT Touring 4EAT
Joined
·
3,751 Posts
<snip> I understand that replacing an O2 sensor may cost around $500.
User @Snow3d summed it up pretty well. It's not a hard job to change the front O2 sensor, but you may need a 'crow's foot' or something similar to get it unscrewed from the exhaust pipe.

For your age vehicle, you might simply buy a new sensor (and give the old one a burial with full honors). There is no routine replacement intervals for front O2 sensors, but they do fail.

For whatever reasons, aftermarket front sensors are problematic on a Subaru. So, get the genuine article from a Subaru dealer (very pricey!) or buy a Denso sensor on eBay (Denso makes the OEM Subaru part). The part you need should be a Denso 2349120 - ~$94 on Rockauto, plus ship - ~$95 on eBay, delivered. If you're patient, you can occasionally find a new Denso 234-9120 on eBay for less (the last one I bought was $65).

Before replacing your sensor, you might clean your MAF (aerosol brake cleaner or electronic cleaner). You might also check your air filter box and all the intake ducting for leaks or other issues. Also, check all your vacuum hoses - for a 2004 vehicle, they are in dire need of replacement. The P0031 code is supposed to be related to the sensor, but anything that interfere with the fuel mixture can sometimes cause odd CEL codes, and Subaru's just love to throw odd CEL codes. Just think of it as a Subaru 'feature'.
 

·
Registered
2004 Forester XT
Joined
·
41 Posts
Discussion Starter · #4 ·
Thanks for the help guys;
The vehicle has about 56K miles. I know that sounds like very low mileage for the age, but I stopped working a while ago, and only use the car for recreational purposes.
I guess I can remove the wheel and take a look. That said, I seem to have a habit of making any job more involving than it should be. I was OK with DIY repair when I was younger, but that was before we even had O2 sensors...
 

·
Registered
2007 2.5XT Limited 4EAT
Joined
·
343 Posts
@fw2016

You are most welcome. Sounds like the sensor is just old and tired considering the age vs mileage. These new fangled machines can seem daunting from a DIY perspective, but if you can change a tire and a replace a spark plug, you can handle this chore. That said, if you aren't up to the task, or you'd rather not even attempt it, you might try throwing up a post in the regional specific area of this forum and solicit some help. There are a lot of nice folks around here, you might find a local willing to help you out. I would offer my assistance but New Jersey is just a bit outside my locality.
 

·
Registered
2012 XT Touring 4EAT
Joined
·
3,751 Posts
Sounds like the sensor is just old and tired considering the age vs mileage.
Old and tired. Plus the wiring runs close to the exhaust up-pipe. Plus, imagine having to live inside an exhaust pipe, getting blasted by exhaust gasses. . . a rough neighborhood.

The Denso part number I mentioned above fits a bunch of different turbo Subarus - probably all the EJ255-EJ257 engined models. I used the same part on my '06 XT - it probably fits my '12 XT as well. This is not a hard part to find - lots of them floating around.
 

·
Registered
2004 Forester XT
Joined
·
41 Posts
Discussion Starter · #7 ·
This morning I plugged in my Foxwell ODB2 scanner. I realize that this scanner is a 'toy' compared to what the pro's use, but it's all I've got, and so far it has proven it's worth by providing codes alone.
But I was curious to look at some of the live data, although I don't know what I'm reading. I did Google the terms after taking readings, but still don't really have a clue as to what is going on.
Anyway, what I think might be more relevant here are the ohmmeter readings I obtained from the O2S1 at the connector.
There are 4 wires. 2 blacks, a blue, and a white.
Measuring between the 2 blacks, I got reading between 2.5 and 4 ohms (depending on how good a contact my meter probes were making).
Between either of the blue or white to any other wire I got an open circuit.

I had thought the two blacks were common / ground. It does not appear that there is any connection between these wires and the body of the sensor, as I read open circuit with one ohmmeter lead on one of the black wires, and the other on the alternator body.

I would think that if the heater was working, there would be a fairly low resistance between two of the wires. Perhaps that is what I am reading between the two black wires??

Anyway, I have yet to remove the wheel and look for the sensor.
I don't have any specialized tools for this. I don't even have torque wrench or crow's foot.

Thanks again for your help.
 

·
Registered
2012 XT Touring 4EAT
Joined
·
3,751 Posts
This morning I plugged in my Foxwell ODB2 scanner. I realize that this scanner is a 'toy' compared to what the pro's use, but it's all I've got, and so far it has proven it's worth by providing codes alone.<snip>
IMHO, OBD-2 scanners are OBD-2 scanners. The most basic model is all you really need - read the codes and erase them. I wouldn't worry too much about what the 'pro's use'. Advertising hoop-a-la notwithstanding, as you pay more money, you just get more "features" - suggestions as to what might be wrong, connection to the internet, a date with the scanner maker's daughter.

Once you have the CEL code, you can simply look on the internet - look in this forum or look on NASIOC - and you're likely to get better information, aimed specifically at Subarus. Despite my comments in other threads, there is a fairly small set of CEL codes that pop up (and since they pop up so often on a Subaru, you should have them memorized ;-)

If you want to see some truly unique CEL codes, loosen your bulkhead connector - then start the engine. Criminy, you'll get so many error codes you'll think Wikileaks has hacked your ECU. Reconnect the connector, clear the codes, life is good. Are we having fun yet?
 

·
Registered
2007 2.5XT Limited 4EAT
Joined
·
343 Posts
Hmmm....according to the wiring diagram I found it looks like both of the black wires are for the heating element (one is power the other the control from the ECU), the blue is the signal (reference) wire, and the white is ground for the sensor.

For obvious reasons your test was only partly correct. Of the two black wires that operate the heater one is 12 volt power supply the other is a switched ground operated by the ECU. When the computer senses 12v on the power wire it completes the circuit activating the heating element. There should be continuity between these wires as you measured but I think that number should be a bit higher, somewhere between 10-20 ohms. This could be the reason for the heater element code specifically.

You might try checking continuity between the white wire and chassis ground to be sure that the ground for the sensor is in tact. To measure the voltage on the signal wire you will either need an oscilloscope or a scan tool that reads the oxygen sensors (not sure if yours does this). The voltage should oscillate between roughly 0-1 volt. Somewhere right in the middle of the range is stoichiometric air fuel ratio. If all is functioning correctly this number will bounce back and forth rapidly. If it is slow to move or pegged to one end of the range or the other then the sensor is faulty.

Another way to get an idea of how the sensor is functioning, although not necessarily as accurate, is by observing fuel trim if your scan tool has the capability. Fuel trims are usually labeled STFT1 for short term and LTFT1 for long term. At idle or partial throttle both of these numbers should be close to zero, or hopefully in the single digits. If either numbers show double digits, especially the short term you know you have a problem. However, this is not a sure fire method. If you have a vacuum or air leak somewhere this will skew the fuel trim numbers rendering the test inconclusive. That said, if you know your O2 sensors are working, using fuel trim data is an excellent way to diagnose an air leak.

As I mentioned earlier I was able to change the upstream sensor with only a 7/8" open/box end wrench. No special tools required for me.
 

·
Registered
2004 Forester XT
Joined
·
41 Posts
Discussion Starter · #10 · (Edited)
I re-checked the resistances at the O2 sensor connector. I got about 6 ohms between black wires. No continuity (meter shows open) between either blue or white and chassis (I used the neg battery terminal as reference).

I then checked all of the fuses - both under dash and in the engine comp. All are good.

I did get some numbers for SHRTFT1 and LONGFT1, but not sure if reading them when the sensor is cold is valid.
What I did get:

At idle (935 RPM) - Engine cold
SHRTFT1: 0.0
LONGFT1: 6.3

After the engine had been running about 10 mins at Idle:
SHRTFT1: 0.0
LONGFT1: 10.2

I also read 'Freeze Frame' on the OBD2 scanner:

SHRTFT1: 4.7
SHRTFT3: -61.7
LONGFT1: 0.0
LONGFT3: -61.7

I guess I'll have to try removing the wheel and have a look, but I don't have any jack stands. Best I've got is a heavy scissors jack, which I would trust more than the one that came with the vehicle. I guess a set of stands couldn't be all that expensive though...

IMHO, I feel the same way you guys do. The car is 15 years old. The O2 sensor is bad.
As for the hoses; a year ago when I had the car in for service, I was told that the hoses looked OK. I don't know whether he checked all of the vacuum hoses, or only the cooling hoses, or what. But I think he would have noticed if there were cracked vacuum hoses.
 

·
Registered
2012 XT Touring 4EAT
Joined
·
3,751 Posts
<snip> I don't know whether he checked all of the vacuum hoses, or only the cooling hoses, or what. But I think he would have noticed if there were cracked vacuum hoses.
He didn't notice because he really didn't look. No mechanic pays much attention to vacuum hoses unless one is so loose it falls off.

The OEM vacuum hoses are non-reinforced rubber. They always "look" okay. But they get hard over time and stop sealing. The fix is to replace them with reinforced fuel line or reinforced PCV hose. The new hoses will seal better and the reinforcement fibers will keep them tight much longer. You need 2 or 3 sizes of reinforced hose - really just a few feet total. Any auto parts store should have it - take in the old hoses for size comparison.

While you're at it, be sure there are no broken plastic pipes on the vacuum gizmos.

One exception: The brake booster hose has a check valve in the line - about 4" from the master cylinder. You can feel it if you pinch the hose. So, either use an OEM replacement hose or (better choice) open the old hose and re-use the check valve. Be sure it's oriented the right way. It keeps residual vacuum in the brake booster, even when the engine has stopped.
 

·
Registered
2007 2.5XT Limited 4EAT
Joined
·
343 Posts
[At idle (935 RPM) - Engine cold
SHRTFT1: 0.0
LONGFT1: 6.3

After the engine had been running about 10 mins at Idle:
SHRTFT1: 0.0
LONGFT1: 10.2

I also read 'Freeze Frame' on the OBD2 scanner:

SHRTFT1: 4.7
SHRTFT3: -61.7
LONGFT1: 0.0
LONGFT3: -61.7]

The actual current fuel trim numbers don't look too bad, plus 10.2 percent on the long term is a bit troublesome but not dangerous. Though it could suggest a vacuum or other air leak...if the sensors are reading correctly. That -61.7 number is almost impossibly large, and does not correlate with the other numbers. I wonder if that is some sort of place holder that the computer uses for reference. I've never seen a fuel trim value that high positive or negative. A reduction in fuel that large would insinuate that the computer thinks that the sensor is literally drowning in raw fuel. I doubt the car would even run if that was accurate.

Here is a thought...if only the heating element in the sensor is faulty, the rest of the sensor could be functioning correctly once it gets up to temperature. Older sensors worked this way, the exhaust gas heated the sensor. The heater is only there to get the ECU into closed loop sooner to reduce emissions. This may explain why your car seems to run just fine. Because for the most part it is.
 

·
Registered
2004 Forester XT
Joined
·
41 Posts
Discussion Starter · #13 ·
Maybe I should evaluate the condition after driving for 30 minutes or longer?
I could also look at the signal from the O2 sensor on my oscilloscope. I may need an insulation piercing probe though... it doesn't look too easy to get a wire shoved into that connector.

If neither of the O2 wires are bonded to chassis, then I suppose I would need to do one of two things using the scope:
A) with the ground clip of the scope on chassis, try each wire and see what signal I get
B) Using two channels on the scope, make a differential measurement.
It might be interesting to try this, but, I would consider this merely a learning experience. I fully expect to need a new O2 sensor.
 
1 - 13 of 13 Posts
Top