I'm trying to troubleshoot a recurring O2 sensor heater circuit code, P0161. I just replaced the sensor, but the problem persists. I have the Dash Command app with the extra GM PIDs, but unfortunately, it doesn't have the bank 2 sensor 2. It has B1S1, B1S3??, B2S1, but no B2S2.
I also tried HP tuners, but I can't find any O2 heater circuits on there.
I guess my question is, should I just skip this step in the matrix? Or is there another way to read this O2 heater circuit voltage?
You must be registered for see images attach
Greetings rayhawk,
I took the P0161 code you mentioned and came up with the following wiring diagram out of the
'99 C/K FSM:
You must be registered for see images attach
So it looks like you are going to want to focus on the PNK (Pink) heater positive wires
coming from the Underhood Fuse Block (ENG 1, Fuse #21) and the BLK (Black) ground wires
completing the circuit.
HINT: Take full advantage of the fact that you have one 'known-good' rear O2 sensor, so
you can use the wiring supporting the good sensor to compare/contrast against the wiring
associated with the sensor causing the P0161 to be thrown.
If it was me I would start with power off continuity checks from associated through the ECM
pins through the sensor to ground, first looking for a high resistance/open. And also look
for continuity to ground prior to the power arriving at the O2 sensor? (Assuming that
since the ENG 1 fuse isn't blowing that you don't have a gross error, but more of a marginal
path kind of issue?)
NOTE: The above is written from the default perspective that the heater circuit is directly
responsible for the P0161 code, but after reading page 2 of 2 we'll develop a theory
where the heaters are working fine, but the precious feedback signal path is letting us down?
You must be registered for see images attach
So, if the heater wires match exactly between good and bad rear O2 sensors, then we need
to also verify the actual signal wires. (PPL {Purple} and TAN)
And one last thing that we need to sort out. P0161 is the code for Bank 2, Sensor 2.
But your App is making 'Bank 2, Sensor 2' look to match the other 2 'good' O2 sensors,
but meanwhile identifying 'Bank 1, Sensor 3' (?) as the one with the mismatching/too low reading?
I tend to believe the VCM over an app, especially when the app is concerned with a
phantom sensor? But what if the PO was having a bad day, and crosswired the rear
Bank 1 and Bank 2 sensors? These days you have to keep in the back of your mind that
catalytic converter stealing is a thing, and although you didn't mention if these were old
or newer cats...but anything can happen, forcing wiring harness errors that we would
not normally see.
I think that a careful visual inspection of the wiring between sensors, ground, and VCM,
making sure that the physical wiring under your truck matches the wiring diagrams in the FSM,
followed with some continuity checks with your multimeter should locate the root cause
in fairly short order.
EDIT: Do you have access to a scan tool capable of showing you live data? As in seeing how the
various O2 sensors are toggling high & low? This may save you a lot of time if you have this
capability.
And for the 'seemingly unrelated codes'? Help me help you. Do yourself a favor, go to the Dollar
Tree store, spend $1.25 for a small notebook that fits in your glovebox, and whenever you get a
new code, write it down, with the date, and a short description of how you were driving. And post
it up here so that we can kick it around & try to match it up with our own experiences with these
GMT400s. (On older vehicles you would be surprised how many 'logically unrelated' error codes
end up related through a shared geographical wounding of the wiring harness, global power fault,
etc.)
The more specific data you share, the better quality my guesses/recommendations will be.
You can't share too much.
And please come back and let us know what you discover.
Happy Hunting --
Last edited: