Chevy Silverado and GMC Sierra Forum banner

P0161 O2 Heater, but have power & 5ohm element

26K views 47 replies 7 participants last post by  davester3500  
#1 · (Edited)
Day-0 Monday
A couple hundred miles ago, my all-stock 1999 Silverado SES dash light came on. Only one code, P0161, both "pending" and "saved". P0161 is O2 Sensor Heater Circuit Malfunction (Bank 2 Sensor 2). I erased the codes back then. SES has not come back on in the last few hundred miles.

I need to re-register my truck this month, so today I checked if the emission monitors had completed. 3 are not: cat, evap, and egr. Also there a pending P0161 and no other codes. I do not know how long it has been pending, and the SES light is not on. I'm hoping the P0161 is causing the monitors to not complete.

I unplugged the passenger side post-cat O2 sensor at the frame rail and found with a multi meter that the heater element has 5ohms, and the pink and the black wires on the harness side are at battery voltage with key-on. So It seems the heater element is fine and it is getting juice. Not sure what to check next. I could remove and swap two sensors, clear the codes and see what codes comes back, but that doesn't seem promising given the test results. Any suggestions?
 
#47 ·
Walkers was spot on. After all the troubleshooting I did, I ended up replacing the sensor. No O2 sensor problems since then. I do have an EVAP code that I need to get to. Can't remember the number.

I don't remember if I load tested the wires regarding this 2021 thread. Probably not. I know continuity and load-testing are the same yet different. If O2 sensor problems come up again, I might add load-testing into the troubleshooting as you suggest. Anyway, thanks everyone for your help. I learned something here, and learned something taking the long way around to the fix.
 
#5 · (Edited)
Day-2 Wednesday
Before I start swapping out O2 sensors, I thought I'd clear the codes and see how long it took for the P0161 to become pending and or stored. Well, when I went out to do that this morning the pending P0161 was gone.

Not sure why it is gone. Could be due to having the sensor unplugged with the key-on. Or due to tweaking a connection issue when I unplugged/replugged the sensor during the testing. The contacts looked good, no corrosion. Or if the alleged malfunction in the O2 heater circuit is intermittent, and is now currently working, causing the computer to clear the code because it decided malfunction was fixed.

Anyway, I ran some errands involving one cold start, and two hot starts over 20 miles and 1 hour. This morning errands did not likely constitute an appropriate set of drive cycles, but anyway, after errands, the three I/M monitors are still showing as incomplete and P0161 has not come back as pending or stored.
 
#7 · (Edited)
Thanks @bowtieguru. Will keep that in mind.

=====================
Day-3 Thursday
I printed out the 8-item GM Driving Cycle:
(1) cold start (no key-on before hand)
(2) 2.5 min idle w/ all accessories on (A/C, Fan, Headlights in my case)
(3,4,5) 1/2 throttle to 55mph, 3 min at 55, coast down to 20 in gear, no brakes
(6,7,8) 3/4 throttle to 55mph, 5 min at 55, coast down to 20 in gear, no brakes

Immediately on cold start there were no codes and cat,evap,egr I/Ms were incomplete.
I let it idle for about 7 minutes with all accessories off, by which point the fuel circuits were in closed loop
At this point, no codes and 3 incomplete I/M

To run idle test (2), I turned on the A/C, Fan at 4, and headlights. Within a couple minutes P0161 showed up as pending, and 3 incompletes remained.

My Actron 9580 has a menu item Diag Monitor Test, for $02 $06 $07 $0C They all ran OK except these reported as "HI" :
$02 ID 26
$06 ID 61
$07 IDs 0C and 0D

I then drove the 3 miles over to the interstate.
I did a 345 test, then aborted a 678 test, then completed a 678 test.
Pulled off, checked status. Same as before: P0161 pending, cat,evap,egr incomplete, Diag Monitor Tests unchanged

Turned around and got back on the interstate heading home. Aborted a 345 test, completed a 345 test and then a 678 test.

At home no changes: P0161 pending and cat,evap,egr still incomplete.

With engine still running, I ran the idle test (2) again. No changes. Turned off engine. Engine had been running nonstop since the initial cold start.

Restarted. Ran idle test (2) again. No changes.

Still not sure why the pending P0161 disappeared after my multimeter/test light session. But it is back, probably due to running idle test (2). Also not sure of the meaning of the 4 "HI" on the Diag Monitor Tests.

If I knew the passenger post-cat O2 sensor heater was bad, I'd replace the sensor now. But the heater tests good. The heater resistance was 5 ohms on my multimeter, which is spec, and indicates the sensor and it's pigtail are fine. I can't see how a 5 ohms reading could be false, unlike a zero or infinite reading which could be false. More over the harness is feeding battery voltage to the pigtail. Yet, the computer seems to think the heater circuit is malfunctioning and putting out a pending P0161. The code didn't show up during regular idle. It showed up during the accessories-on idle.

I haven't decided what to do next. And I do not know how many 12345678 drive cycles are needed to for the truck to finish it's I/M testing.
 
#8 · (Edited)
Day-3 cont Thursday
After taking the truck through the above drive cycle exercise this morning, I let it sit for 4.5 hrs, which brought ECT to 81F. The IAT was 64F.

The GM Drive Cycle criteria for a cold-start is the coolant temp being 1) less than 122F and within 11F of ambient, so when I started the engine it didn't qualify as an additional cold-start.

While the engine was running, I ran another idle test (2), letting the engine Idle for 3+ minutes with the A/C on, Fan at 4, and Headlights on (as before). Codes and I/M status didn't change. The Actron is still reporting a pending P0161 and incomplete cat/evap/egr monitors.
 
#9 ·
EGR Monitor:
Prerequisites: no codes present (even a pending code), engine coolant temperature is above 75 degrees f; barometric pressure above 72kPa.

1. Idle vehicle five minutes or until it is in closed loop.
2. Accelerate and drive for one minute at steady speed above fifty mph.
3. Coast vehicle down to twenty mph (vehicle in drive, do not use the brakes).
4. Repeat steps two and three four times.
The above quote comes from Can Not Get EGR and EVAP Monitors to Set regarding a 2008 Chevy Equinox.
 
#10 ·
I would not assume they used the same method/sequence of events to trigger various monitors to run their tests, as they are both types of vehicles, as well as made under different emissions standards. You might consider springing for access to the full-service manual for your truck, it should have the driving sequence for it.
 
#11 ·
I would not assume they used the same method/sequence of events to trigger various monitors to run their tests, as they are both types of vehicles, as well as made under different emissions standards.
My main takeaway from that quote was their statement of "no codes present (even a pending code)" as a prerequisite for the EGR Monitor test to run. I had been hoping this was the case for my truck, that a no-codes state was required before the cat/evap/egr I/Ms would complete. The quote is not definitive as you say, but given my inability yesterday to get any of those three I/Ms to complete during the drive cycles suggests it my apply to my truck too.

You might consider springing for access to the full-service manual for your truck, it should have the driving sequence for it.
@davester3500 That has been on my mind. Ideally I'd buy a paper copy. Not even sure what the full-service manual is called, or where it can be obtained. What are the various options?
 
#12 · (Edited)
1999 was the change over year from GMT400 to GMT800. Mine is a New Body Style 1500 2WD GMT800. But if I am not mistaken GM also also built some GMT400s for the 1999 model year.

After looking into Ebay options, there seems to be 3 versions as distinguished by the color of the "C/K TRUCK" bar on the front color:

3 Volumes, Black bar - Cover states "Early" edition
3 Volumes, Orange bar - 1999-01-22 information cutoff date
4 Volumes, Blue bar - 1999-04-30 information cutoff date

The title page in the Orange edition says it is the final edition and to discard all early editions because the information is out of date. But 3 months later GM published the Blue edition with a later cutoff date. I couldn't find any infor regarding GMT400 vs GMT800, but the cover has line drawings of the NBS GMT800.


Image
 
#16 · (Edited)
Day-4 Friday
This morning, before I turned the key on, I popped the hood, opened the fuse box cover, and pulled the two 15A fuses designated O2A and O2B. O2A fuses both heaters for bank 1, and O2B for bank 2. O2A fuses both pre-cat heaters, and O2B both post-cat heaters.

O2A and O2B are side by side, O2A to the left of O2B, with their 4 terminals in a line. With key still off, I multimetered their voltage with the battery terminals. All 4 were battery voltage to the battery + and 0v to battery -. The test light glowed equally as far as I could tell, for shorting between B+ and the four terminals.

On the ohms setting, the resistances to B- were 13.3, 8.0, 2.5 and 13.3 from left to right, which suggests the inner two terminals lead off to the sensors, and the outer two are supplied by the battery when the key is on, but I could be wrong. Since each fuse protects the pre-cat and post-cat heaters in parallel, Since each fuse protects two sensor heaters in parallel, the 2.5ohm reading is exactly what one would expect if both bank 2 heaters are 5ohms each, which I believe is spec, if I have my math right.

I put everything back, closed the hood, and started the engine, the A/C and Fan off. The gas tank is a little over 1/4 full.

Since the truck sat outside overnight, ECT was 54F, as was the IAT, thus this qualified as a cold-start (<122F and within 11F). As expected, the cat/evap/egr I/Ms were incomplete, and the only code was a pending P0161.

After 6 or 7 minutes at idle in neutral, the fuel system switched into closed loop. The three I/Ms were still incomplete, and a P0161 was still pending.

I ran the idle test (2) by turning on the A/C and setting the Fan speed at 4. Within two minutes, the SES light came on. The Actron now reported a pending and a saved P0161, no other codes, and the 3 incomplete I/Ms.

I turned off the engine, and erased the codes, which also set the two other I/Ms (O2 Sensors) back to incomplete. So no codes and all 5 incompletes.

I restarted the engine, with the A/C and Fan off. The coolant was 160 F and IAT was 59, so not a cold start.

After idling in neutral for 6 minutes, there were no codes pending or saved and 5 I/Ms were incomplete. I ran the idle test (2) by turning on the A/C and Fan to 4. After another 5 minutes, there were still no codes, and still 5 incomplete I/Ms. So it looks like the idle test (2) can be run only immediately after a cold start, but I could be wrong.
 
#17 · (Edited)
Day-4 cont Friday
A few hours after this mornings trials, but before the engine cooled down too much I took the truck out on some errands, about 25 miles, half interstate at 40-50mph, half surface streets, with the two stops it took about 90 minutes. Along the way I picked up a new 800 CCA 3-year warranty flooded battery. Back when I had the crank-no-start problem (ignition coil module), the existing battery was showing it's age (8yrs?), dying with not much cranking time. I'd never noticed degradation because the 4.3L V6 would start right up with just the slightest cranking, every time.

Anyway, the trip started with no-codes and 5 I/Ms cat/evap/egr and O2 Sensor & Heater, showing incomplete (I had erased the codes this morning). Soon into the interstate portion, the O2 Sensor I/M completed with an OK. But that was all. At the end it was no-codes and 4 incompletes.

Back at home, I swapped in the new battery, which reset the I/Ms to incomplete and set the dashboard clock back to 12:00. Engine started right up, no-codes, 5 incompletes.

To top off the battery, I took it on a 30 minute 10 mile loop, half stop-and-go surface roads and half 50-55mph interstate. The O2 Sensor I/M completed to OK, but nothing else.
 
#18 · (Edited)
Day-5 Saturday
Yesterday, Friday, I had put 4 gallons in the tank to keep it between 1/4 and 3/4 full.

This morning I ran some more tests. The truck had been sitting over night, so when I started the engine, the Coolant Temp was 54F and IAT was 52F. There were no codes and 4 incomplete I/Ms, as expected. Cat/evap/egr and O2 Heater.

I let it idle in neutral for a few minutes with the A/C and Fan off. The fuel system was in open loop, coolant 129F IAT 57 when I started an idle test (2) by turning on the A/C and Fan to 4. Three minutes later, there were still no codes and the 4 incompletes. I turned off the A/C and Fan. and let it idle another 2 minutes, during which the fuel system switched into closed loop. Coolant was 144F and IAT 59F. Still no codes and 4 incompletes.

I started another idle test (2) by turning on the A/C and Fan to 4. Coolant 169F IAT 59F. Within a minute or two, P0161 showed up as pending.. The 4 I/Ms still showed as incomplete. I turned off the A/C and Fan, then turned off the engine.

At this point, I'm pretty sure that the minimum procedure to run an idle test (2) involves a cold start, followed by idling until the fuel system goes into closed loop, followed by turning on the accessories for a couple minutes (2.5).

With the engine off and key out, I popped the hood, took off the fuse box cover, and pulled the two 15A fuses O2A and O2B. I swithed the ignition key to on. I used the test light to short between battery ground (B-) and the four fuse terminals. The test light lit for the outer two terminals, but not the inner two, confirming my guess from yesterday that the two inner terminals lead to the O2 sensor heaters, and the two outer terminals are powered with key-on.

Turned the key off, replaced the fuses, closed the hood, had a cup of coffee.

Drove the front end up onto ramps, and pulled & labeled both post-cat O2 sensors. On the bench, the heaters were both 4.9 Ohms. I reinstalled them swapping bank 2 for bank 1. Erased the codes. Had a cup of coffee.

Hopped in to run some errands, but first let it idle for about 3 minutes with the A/C and Fan on 4 as an idle test (2), but this didn't elicit any changes. No codes and 5 incomplete I'Ms.

Back at home after the errands, there were no codes and 4 incompletes, as expected.
 
#19 ·
Your code will come back, but it should now be a P0155.

The first step to diagnosing a problem is understanding how the circuit works. The heater circuit is not the problem.

On this truck the heater is supplied power with the key ON and a constant ground. It is not controlled or monitored by the PCM in any way.

The code is setting because the O2 is lazy and taking too long to start switching. Replace it with OEM, Denso, or NTK, do NOT use any crappy universal or Bosch sensors.
 
#20 · (Edited)
Your code will come back, but it should now be a P0155.
Thanks @bowtieguru. Since I swapped the two post-cat sensors, P0141.

On this truck the heater is supplied power with the key ON and a constant ground. It is not controlled or monitored by the PCM in any way.
I was wondering about that. The Haynes/Chilton wiring diagram shows exactly that, but I wasn't sure if the diagram was over-simplified.

The code is setting because the O2 is lazy and taking too long to start switching.
I was wondering about that too. Thanks

=========================
Day-6 Sunday
Did some more investigating first thing this morning. Truck sat over night with a half-tank of gas.

As on previous days, I started the engine from key-off, without having had the key in "on" beforehand which would have powered the heaters, which could have caused the HO2 sensor diagnostics to fail to run.

Started the engine, shifted into neutral and let it idle with A/C and Fan off
ECT was 57F, IAT 54F
No codes and 4 incomplete I/Ms, as expected, cat/evap/egr, O2 Heater Monitor.
After about 4 minutes, ECT 106F, IAT 57F, Fuel still in open loop, I started an idle test (2) by turning on the A/C and Fan to 4. Fuel switched into closed loop 2+ minutes later. At 3+ minutes, I turned off the A/C and Fan. No-codes and 4 incompletes -- as expected given yesterday's results.

I continued to let it idle with A/C and Fan off for two more minutes, then started another idle test (2) by turning on the A/C and Fan to 4. For the next five minutes (idle test (2) calls for 2.5 min) the status remained no-codes and 4 incompletes -- which was not expected given yesterday's results and the sensor swap. The test should have triggered a P0141 within a minute or two of starting this test run. I turned off the A/C and Fan, and engine. I restarted the engine and rebooted the Actron just to double check, but still remained no-codes and 4 inc.

Not sure what to think. I ran the same procedure yesterday morning: cold start, idle test (2) in open loop, then idle test (2) in closed loop. Yesterday the second idle test triggered a pending P0161. Today it should have triggered a P0141.

An hour later I took it out on some errands, first filling the gas tank to 5/8ths full. I had the Actron attached and kept glancing at it for updates, but there were no changes. The errands totaled 140 miles, mostly interstate at 55-60, but some surface streets. After 70 miles the truck sat for 110 minutes. Upon starting it again the ECT was 106F and IAT 64F, so not a cold-start. The status back at home was unchanged: no codes and 4 incompletes.

==========

Found this for a different truck (98 5.7L 4x4):

source: 1998 K1500 Engine issue
P0161 - O2 Heater circuit (Bank 2, Sensor 2)
Possible causes
  • Faulty Rear Heated Oxygen Sensor Bank 2
  • Rear Heated Oxygen Sensor Bank 2 harness is open or shorted
  • Rear Heated Oxygen Sensor Bank 2 circuit poor electrical connection
  • Inappropriate fuel pressure
  • Faulty fuel injectors
  • Intake air leaks
  • Exhaust gas leaks

Tech notes
Replacing the Rear Heated Oxygen Sensor Bank 2 usually takes care of the problem

When is the code detected?
The Powertrain Control Module (PCM) runs the heater test only on a cold start (depends on the cumulative air flow) and only once an ignition cycle. When you start the engine the PCM monitors the HO2S voltage. When the HO2S voltage goes above or below the bias range threshold, the PCM determines how much time it took. If the PCM detects that the process took too much time for the HO2S to enter into normal operating range, the P0161 code will set. The time the process takes the HO2S to reach operating temperature is based on the amount of air that flows into the engine.

Possible symptoms
  • Engine Light ON (or Service Engine Soon Warning Light)
  • Possible higher than usual fuel consumption

P0161 Chevrolet Description
The Powertrain Control Module (PCM) supplies a bias voltage (approximately 450 mV) on the Heated Oxygen Sensor (HO2S) signal high and low circuits. When you turn the ignition to the ON position, battery voltage is supplied to the HO2S heater. As the heater reaches the operating temperature, the HO2S voltage responds by changing from a bias voltage range to the normal operation. Typically, as the HO2S reaches the operating temperature, the HO2S voltage goes from a bias voltage to a voltage below 300 mV. Depending on the exhaust gas content, it is possible for the HO2S voltage to go above 450 mV.
 
#21 · (Edited)
Day-7 Monday
Truck sat over night; fuel dash gauge at 3/8th full.
Started engine, shifted to neutral, A/C & Fan off, 4 incomplete I/Ms

MinuteECT (F)IAT (F)Fuel SystCodesA/C & Fan@4
04843Opennoneoff
49448Opennoneoff
611348Opennoneoff
712248Opennoneoff
812948ClosedP0161off

Was expecting a P0141, not a P0161.

So for the computer to evaluate the function of the two O2 sensor heater circuits, it doesn't seem necessary to run an idle test (2).

I had removed/labeled/swapped bank 1 and bank 2 post-cat sensors two days ago, but got the same code today, P0161. This is consistent with sensor heaters testing fine, both with a resistance of 4.9 ohms.

But with key-on, there is battery voltage across the pink & black harness wires at the disconnected harness connector. And there is also battery voltage between the battery post B+ and the inner terminal of O2B at the fuse box in the engine compartment.

There have never been codes related to the other three sensors. Since the wiring diagram shows the 4 sensor heaters sharing a common ground, the ground connection is probably in good condition.

Since the bank 2 precat sensor has always been code-free, the P0161 could be caused by a poor connection in bank 2 postcat sensor heater circuit. There is single fuse for both sensor heaters on bank 2. There is single fuse for both postcat sensors. Somewhere after the fuse the wires must fork, one going to the precat sensor heater and one to the postcat sensor heater. Somewhere after the fuse the wires must fork, one going to the bank 1 postcat sensor heater and one to the bank 2 postcat sensor heater. The fork could be in the harness where the harness, or could be at the fuse box, which is where the wiring diagram shows them forking, but it's just a schematic, not a blueprint. Anyway, the possible poor connection would be somewhere between where the wires fork to the two sensors, and the harness connector for the post-cat sensor.
 
#22 ·
I read the wrong code number when I stated P0155, you are right, should have been P0141.

Mitchell shows 02A fuse feeds the upstream and 02B feeds the downstream, connected together right at the underhood fuse box. Both wires will be crimped in the same terminal.

The ground shows as B2S2 is first in the circuit from the ground on G104 (back of the driver's side head). You should physically look at the eyelet and tug on the wires to make sure one isn't corroded or broken.

Any exhaust leaks?
 
#23 · (Edited)
Mitchell shows 02A fuse feeds the upstream and 02B feeds the downstream, connected together right at the underhood fuse box. Both wires will be crimped in the same terminal.
Thanks, on closer look at the Haynes/Chilton schematic, it shows what you said. I'll go back later and correct my mistkes in previous posts.

The ground shows as B2S2 is first in the circuit from the ground on G104 (back of the driver's side head). You should physically look at the eyelet and tug on the wires to make sure one isn't corroded or broken.
Thanks, the Haynes/Chilton schematic doesn't identify which/where the ground is, at least not that I can see.

Any exhaust leaks?
No leaks that I can hear. But there is a downstream exhaust leak, at the joint where the muffler pipe connects to the Y-Pipe. The location from that joint to the P0161 sensor measures 13 inches. I only know that there is a leak at that joint because it drips water, so I was thinking the leak is minor, would not matter, and was going to take care of it after the DEQ inspoection. Let me know if you think the exhaust leak is a likely cause.

When I had the y-pipe off 6 or so weeks ago, it didn't look like that joint has a replaceable gasket. Does it? (V6 2WD Ext Cab Manual Trans). Short story is that when I had the y-pipe off due to a cracked weld/flange on the y-pipe where it bolts to the driver's side bank1 exhaust manifold. I replaced the two gaskets where the y-pipe bolts with the exhaust manifolds.
=======
Day-7 cont Monday
I'm working on some voltage-drop tests at the moment in hopes of identifying a poor connection. I've never run a voltage-drop test, but have heard about them. So I rewatched Schrodingers video here:

I draped a ten foot 14 gauge extension cord from B+ to the passenger side. It is a cord I use regularly without issues with power tools. I pinch-clamped one of the cord's flat terminals at the B+ post.

I jammed a T-pin in the harness connector for postcat sensor to back probe the pink wire in the harness. With O2 sensor connected to the harness and the key on, the voltage-drop was only 0.2V. I believe this means that the section of the circuit from the battery, to the ignition switch, to the fuse box, to harness connector is fine relative to the amount of current drawn by heater.

I jammed another T-pin into the back of O2 sensor pigtail connector at the wire corresponding to ground (black wire on the harness. With sensor connected and key-off, the voltage-drop to the frame was 0.00V. With key-on, the voltage-drop increased a fraction but still less than 0.1V. I believe this means that the section of the circuit from the sensor pigtail, through the connector, through the harness, to the ground bolt, to the chassis is fine relative to the amount of current drawn by heater.

In hind sight I should have back probed the pigtail for both voltage-drop tests.
 
#24 · (Edited)
Yesterday, Monday, I finished up by moving the pink wire T-pin from the harness side of the connection to the pigtail side so that the voltage-drop measurement would include the connection itself. The key-on voltage-drop increased by about 1/2 volt, so no real change.

So my conclusion was that the heaters of both sensors in the post-cat bungs were fine, and that all the wiring and connections in the post-cat circuits was fine. I thought the exhaust leak might be a possible cause of the P0161, but unlikely. The Y-pipe, cats, intermediate pipe, muffler, and tail pipe are the factory originals and are 99.9% rust free. The y-pipe/manifold joints have new gaskets. The only leak I'm aware of is small, located at the Y and intermediate pipe connection. I was planning on fixing that as the next step in solving the P0161, but didn't get around to it yesterday. So last night I erased the codes so that for next day's (today's) cold start, I could repeat the tests I had run yesterday morning.

==============
Day-8 Tuesday
I'm dejected to have to say that after the cold-start P0161 yesterday, this morning the cold-start produced a P0141.
Truck sat overnight with the dash fuel gauge showing 3/8ths full.
Started engine, shifted in neutral, A/C and Fan off.
MinuteECT (F)IAT (F)Fuel SysCodesA/C & Fan
04343Opennoneoff
711848Opennoneoff
813048Closednoneoff
1216048noneoff
1316748P0141off
1517648P0141ON
22P0141off
26P0141

I'm at loss for any explanation what so ever. I've been taking meticulous notes on a clip board. I'm 99.9% certain that yesterday's code was P0161, and today's is P0141.

They are AC Delcos. I'd have to find my notes from several years ago to know if I replaced them then. I've never had to do work to pass DEQ. If I did replace them, it would have been in June of that year (DEQ comes up in Oct) when I was doing a ton of maintence prior to a long road trip. If I didn't replace them at that time, then they are factory originals.

Since time is running out for DEQ inspection, I'm ordering two new post-cat sensors today in case I end up wanting to replace them. But I really do not think the current ones are bad.
 
#25 · (Edited)
Day-8 cont Tuesday
Drove the truck front end up onto ramps.

With key-on, and using yesterday's T-pins still back probed in the pigtail connector in sockets C and D, I measured the voltage across the T-pins. Voltage-drop, as expected was close to battery voltage, 11.81V. This on the passenger side which has the swapped in O2 sensor originally installed on the driver's side.

I grabbed two more T-pins and back-probed the driver's side sensor pigtail, finding 11.77V with key-on. With key-off, the resistance across the T-pins to be 2.5 ohms, which is what one would expect since the resistance path is for the two heaters in parallel, since the the two sensor heaters are connected via their common hot wires.

All the electrical test seem consistent. The circuit wiring and various connection for the post-cat sensors on both banks match and are fine even under load. And the two heaters match and fine. Given ohms law, each heater draws heaters draws about 2.4 amps, so the 15 amp fuse carries about 5 amps.

I look online again for a gasket for the leaking Y-pipe / intermediate-pipe connection, but couldn't find any indication that the joint is designed for one. The two flanges there have an integral, non-replaceable donut type configuration similar to the replaceable donut on at passenger side Y-pipe / exhaust-manifold connection.

So to address the leak, I unbolted the leaking joint, wiped down the mating surfaces, applied a bead of Permatex silicone that they market as a sensor-safe exhaust sealant, then rebolted the joint.

There is easy access to the two y-pipe / exhaust-manifold joints. Since the engine and exhaust had cooled, I started the engine and felt around those two joints with my fingers but didn't feel any puffs/currents of warm air, or any puffs at all.
 
#26 · (Edited)
Day-9 Wednesday
Truck sat overnight with the dash fuel gauge showing 3/8ths full.
Was up at 2:30 am, went outside to try to sneak in an extra early cold start.
Started engine, shifted in neutral, A/C and Fan off.
ECT IAT were 57F and 48F, which barely meets the "within 11F" cold-start criteria

MinuteECT (F)IAT (F)Fuel SysCodesA/C & Fan
05748Opennoneoff
510848Opennoneoff
6118Opennoneoff
7127Opennoneoff
813552Closednoneoff
914552noneoff
1015652noneoff
11165P0141off
15P0141off

Turned off engine. Erased codes.

Truck then sat for 8 hours until I went back out at 11am for another cold start.
Dash fuel gauge showing 3/8ths full.
Started engine, shifted in neutral, A/C and Fan off.
ECT IAT were again 57F and 48F, which barely meets the "within 11F" cold-start criteria.

MinuteECT (F)IAT (F)Fuel SysCodesA/C & Fan
05748Opennoneoff
39752Opennoneoff
511852Opennoneoff
613054Opennoneoff
713854Closednoneoff
8noneoff
915454P0141off
1418754P0141off

Turned off engine. Erased codes
 
#29 · (Edited)
I don't think it's that certain, but yep, could very well be that half of the sensor. Or something else. I doubt it's the small downstream exhaust leak (fixed yesterday), or the G104/G114 ground (since it's shared by the oil level circuit and the two precat sensors, which haven't thrown any codes).

One test I haven't done is monitor the voltage drop across the heater during the 8 minutes or so of idling following a cold start. But given the momentary measurements that I've taken of the key-on voltage-drops across the heater elements, I doubt it's the heater circuitry.

Another test I have not done is back-probe monitor the O2 sensor signal. I don't have an appropriate tool for that, but think they can be had for under $100, such as the PS100 by Autel.

I've several apple boxes full of nearly all the old parts I've pulled from the truck. I rummaged through them today, but found only two oxygen sensors, and they were precat, replaced precautionarily a few years ago when I was preping for a long road trip. So the postcat O2 sensors that are currently on the truck are factory origianl, 21 years old with nearly 300k miles on them. They are AC Delco AFS 106. As I wrote above, I've two AC Delco AFS 106's on order.
 
#30 · (Edited)
Day-10 Thursday
Truck then sat overnight. Dash fuel gauge showing 3/8ths full.
Started engine, shifted in neutral, A/C and Fan off for the duration below.

I found out that the Actron CP9580 allows one to live-graph one data item at a time, so I took some pics of the postcat O2 sensor signals during this mornings trial. I'm not sure if this is the raw voltage data streaming from the sensor, though I doubt it, or if it is what the computer is reporting. Anyway, it includes whatever filtering is coming from the wiring.

The main difference I saw between the P0141 sensor signal and the other sensor signal is that the P0141 sensor signal has a visible amount of high frequency noise, though it might not be too obvious in the cell-phone photos due to blurring of a slow shutter speed. The amount of noise in the P0141 sensor signal decreased somewhat as the minutes passed. Also, it looks like the sensor signals are analog, so I'm not sure what is meant by switching in "too long to start switching".

MinuteEngineECT (F)IAT (F)Fuel SysCodesO2S12O2S22
0start5448Opennone
4
6idle12254Opennone
7idle13554Closednone
8idlenone
9idle16554P0141
10
14off
15erased codes
16start18357none
17off18957none

Turned off engine. Erased codes