Ok, so for about the past month, I've had a P0031 or P0032 CEL popping up everytime I drive the car. I turn the car on, and boom, there's the CEL! After pulling the code with my AccessPORT, I found this.
P0031 - Front oxygen (A/F) sensor heater circuit low input
P0032 - Front oxygen (A/F) sensor heater circuit high input
So after allowing it to annoy me and fester for the past few weeks, I decided to get proactive and fix things. I read up on Nasioc.com and ClubWRX.net all I could find about these CEL's and the findings were really slim.
Some folks talked about how they had to replace their O2 sensor, and just paid their local dealer to perform the replacement. Others tried using a multimeter and checking resistance between all of the (4) leads going from the engine bay wiring harness down to the O2 sensor in the exhaust manifold "Y" pipe. (Yes Snowvert, where the stock headers meet up before the uppipe. )
The O2 sensor in your exhaust manifold actually is labeled as an (A/F) sensor, and the rear O2 sensor behind your last catalytic converter is actually a true (O2) sensor. I priced out a replacement sensor for the front, and on http://www.SubaruParts.com they wanted $153. (YIKES!!) For the rear O2 sensor, it's like $114 or so.
Anyway, I wasn't about ready to walk over to Wagner Subaru and hand them a few bills and let them have at it. So I went back to AutoZone and rented an O2 sensor socket and went to work!
After getting inside the engine bay and unplugging the wiring harness for the O2 sensor, I then crawled underneath the car (which was on ramps) and got behind the passenger-side front wheel where the O2 sensor is located. I removed the sensor (with a bunch of needed force, there was serious corrosion on that exhaust pipe going on...) and noticed that one of the (4) wires had melted clean through!
I realized that when I did my uppipe install with a friend, there is a metal bracket that attaches to the O2 sensor wire and also gets bolted to the engine block. This bracket keeps the O2 sensor wire in the right place and keeps it from getting melted by exhaust heat from the heat shields. Because that bracket never got re-attached, my O2 sensor wire was dangling dangerously close to the engine block and melted through!
I took a quick trip to Radio Shack with my roommate and we got all the necessary items we needed to solder a patch wire in and fix up the harness. Plugged it all back in, and voila, no more CEL P0031 or P0032! What a deal!
I feel like a million bucks today, and driving to work without a CEL for the first time in a month felt really good. (Gave me reason to speed like a maniac too! )