• Protip: Profile posts are public! Use Conversations to message other members privately. Everyone can see the content of a profile post.

CEL and P0420 Code

11 January 2021
Ontario, Canada
Search result for this and the related P0430 only popped this single unanswered 2014 post in General Discussion and a bunch of stuff on forced induction:
Background: a few months ago, I had a rough idle with code 1303 which resolved when I replaced the spark plugs. Went with iridium since double platinum weren't available locally, and the hesitation/rough idle was completely resolved. Had a couple of recommendations from Prime folks to clean my injectors so was planning to do that this winter. Car had been running perfectly last few months until...

Just threw a P0420 "reduced cat efficiency", which seems like either a bad downstream O2 sensor or a bad cat? It's worrying that @Larry Bastanza said in 2006 that his experience was always a bad cat...

Tried reading the live O2 sensor voltages with my OBD reader but I'm not sure what ranges I should be looking for/what the graph should look like. The rear O2 sensor did seem to be varying a bit more slowly than the rear? Did my previous ignition problems fry my cat but take months to show up? Will I do more damage driving it? Is it reasonable to just reset the code & see if it comes back? I was just going to replace the O2 sensors to see if that solved it until I saw the prices for the (4) O2 sensors. Is it possible/recommended/not too difficult to switch the 2 downstream O2 sensors to see if the problem switches to bank 2 as Larry suggested in the referenced thread?

Secondly, If I need a new cat, anyone with experience with the SOS replacements? They seem to be less than 1/2 the cost of OEM:

Last edited:
Tim I would swap the O2 sensors first as Larry suggests. It's an easy job in theory, but if your sensors have never been removed, you may struggle to release them. I always put copper anti-seize on mine (and all other exhaust-related bolts/nuts) to avoid this LOL.

The SOS cats are really good and I like that they include heat shields like the OEM. It might be worth taking a spin through the parts marketplace and/or Ebay to see if anyone has some spares laying around. Many NSX owners just delete their cats.
When the engine is in closed loop operation, the front O2 sensor voltage will swing back and forth from around 0.3 ish to 0.7 ish with a frequency of perhaps once every 1 - 2 seconds. The rear O2 sensor also swings back and forth; but, much slower because of the oxygen storage on the catalyst surface. The ECU monitors the voltage swings on the rear O2 sensor when in closed loop and if the swing rate falls outside of whatever parameters are set in the ECU, it sets the P 0420 code. The P 0420 code can be set by a failing catalyst of a failing O2 sensor which is not measuring the free O2 in the exhaust correctly.

The easiest way to assess catalytic converter or O2 sensor problems is with a scan tool that will graphically display the voltages over time. You set up to monitor the front and rear O2 sensor voltages on the same cat at idle with the engine in closed loop. You should see the front sensor voltages swinging fairly quickly and the rear sensor voltages swinging slowly - might be up to a 1/2 minute to switch back and forth. If the rear O2 sensor voltage swings exactly like the front O2 sensor voltage I think it is fair to say that cat is 100% dead. If the rear O2 sensor is swinging very slowly or not at all or with reduced magnitude then the problem might be the rear O2 sensor. In between the 100% dead and swinging every 1/2 minute is some threshold where the ECU decides that the catalyst is impaired. Only Honda probably knows where that that threshold is set at. Your rear sensors swinging a 'bit more slowly that the front' may not be slow enough and is causing the ECU to set the error code.

This YouTube video gives you a little run summary of the fast switching versus slow switching on the rear O2 sensor at around 2:30. The rest of the video is mostly about setting up their particular scanner.

There is a test you can do which involves flowing a shot of propane gas into the intake manifold with the engine running while you monitor the sensor voltages. The propane causes the engine to run rich and then run lean when the propane is switched off. The response of the sensor voltages during the period when the propane is injected and then shut off will give you a good diagnostic as to whether you have a problem with the O2 sensor(s) or whether the catalytic converter is impaired. Rather than provide the gory details a Google search will yield at least a couple of good YouTube videos of guys carrying out the propane test while graphing the voltages with examples of dead cats versus dead O2 sensors.

If you don't want to go through the diagnostic hoops you could clear the error code. If it re appears then you could start with replacing the rear O2 sensor on the affected bank (not all the sensors).. I don't know what your previous ignition problems were; but, what kills a catalytic converter is is an excessively rich fuel mixture. The unburnt hydrocarbons hit the catalysts surface and react with O2 stored on the catalyst. In this process there is heat released. A protracted case of this overheats the catalyst and destroys the structure of the catalyst ( and starts a grassfire if the vehicle is parked in tall dry grass). Engine misfires dump both unburned fuel and O2 into the catalytic converter and can cause skyrocketing converter temperatures. The purpose of the OBDII misfire detection error codes is to try and prevent destruction of the catalytic converter. If you were not getting misfire detection codes and didn't have any fuel mix error codes your ignition problems probably did not cause the P 0420.
Huge THANKS👏👏👏 for the detailed input @Old Guy & @Honcho, which led to a lot of video watching and realizing how little I know. Don't think I'm courageous enough to start adding propane to my manifold... 😱

UPDATE: I reset the CEL and went for a drive. (That car is so awesome to drive...) The CEL didn't come on again during the 1/2 hour drive, with some spirited acceleration. During that drive, I recorded the following graphs on my Innova 3160 RS:
Bank 1 (culprit according to OBD code) S1 vs S2 driving, (x axis is 2 minutes and I can't seem to change it):
nsx B1 S1S2-min.jpg
S2 seems to be similar voltages but lagging behind S1; that's a good sign right? but it does seem to exceed the 0.3-0.7 V range that @Old Guy was referencing.

Bank 1, S1 and S2 at idle:
nsx B1 idle-min.jpg
Hmmm. Pretty colors.

For comparison, I decided to compare S2 on Bank 1 vs Bank 2 to compare how they swung:
nsx S2 B1B2-min.jpg
It seems to show that Bank 1 is sometimes oscillating more than Bank 2. Does that mean that Bank 1 is not having the cat act as much as an O2 reservoir and is switching faster (more like a test pipe) suggesting my bank 1 cat is on the way out?

Lastly, When I graphed STFT as a percent - Reading online, it's supposed to stay below 5%? Mine seems to go a fair bit higher than that. What should I be looking for to indicate a problem, or should I stop looking for problems?

It seems my O2 sensors are working fine, so if the problem recurs I need new cats???

Wife and I are headed on a weekender so we'll see how it goes.
Last edited:
Narrowband O2 sensors are not really precision measurement devices. If you Google search narrow band O2 sensor curves, you will get pictures that all sort of look like this


A pretty much vertical line that sort of starts to bend around 0.75 volts at the top and 0.2 volts at the bottom (the knee points). I use 'sort of' and 'around' a lot when describing O2 sensors. I expect that those knee points probably vary between different O2 sensors (and may vary as the sensor ages). Hence, the waffling language I used in the previous post (around 0.3 ish to 0.7 ish ). The variation in the knee point between sensors will alter the typical voltage swing range. A high or really low knee point will change the magnitude of the swing range. Depending on how much variation there is between different manufacturers sensors and how tight the error tolerances are in the ECU that might be a good reason for sticking with an original equipment supplier for the sensors. Of course, that is pure speculation since I have not seen a definitive comparison between different sensors.

The knee points of O2 sensors are sensitive to operating temperatures. That is why they have an internal heater. If you are out running laps and you get the front side really hot you could theoretically elevate the sensor temperature which causes the knee points to shift and would alter the voltage swing range.

Your first graph indicates that B1 S1 &S2 are both moving so both sensors are alive. In the second graph at idle if the catalyst was completely dead the S2 voltage would be pretty much identical to the S1 voltage. It is not so it is clear that the catalytic converter is doing something. The time period between the S2 voltage switching seems to be long; but, that may just be the characteristic of the NSX catalytic converters. You would really have to compare it to another NSX of the same vintage under the same conditions to see if it was 'off'. Clearly, the absence of a CEL suggests that the catalytic converter is passing the ECU's OK test.

In your last graph, B1 and B2 are both moving with about the same frequency and with a similar pattern, Both appear to hit 0.98 volts briefly (full throttle?). In the range where the O2 sensor is roughly linear (vertical slope) the B2 voltages appear lower. That could be because the O2 sensors are just a tiny bit different or bank 1 could be running a tiny bit leaner - in the vertical range of the O2 sensor a 0.1 difference in AFR can make a big difference in the sensor voltage. I would not sweat that.

If everything was perfect your fuel trims would be zero. There are short term and long term fuel trims in the ECU. The short term trim is derived from the error between the instantaneous O2 sensor values and what it wants which is 14.7.. Total fuel correction is equal to the sum of the instantaneous O2 error signal + short term + long term trim. The long term values get stored in ECU memory. I believe the short term trim are just trip values. The ECU calculates the short term trims and accumulates the value over a time window. If the short term trim persists it adds short term trim value to the long term trim number with the objective of trying to keep the short term trim value close to zero. So, ideally you would expect the short term trim to be small; but, depending on when you graphed the short term trim and what you were doing it might be reasonable for the short term trim to be higher than expected.

Long term trim is a better indicator of what might be happening. Long term trim is what the ECU uses to trigger those fuel mixture diagnostic trouble codes. I think the threshold for setting the CEL is 20%. Have a look at your long term trims. If they remain small then I would not sweat what the short term values are doing at any particular instant. If you are accumulating significant long term trim values then you may have a developing fuel system issue. Negative versus positive trim values will indicate whether it is running rich or lean. The usual suspects would be, fuel pressure (filter, FPR, pump), dirty MAT sensor and dirty injectors.

Note that people talk about the ability of the ECU to learn / adapt to modifications to the car (such as a header). What is really happening is that the ECU is accumulating long term fuel trim to correct for the modification. You should expect that engines that have had modifications and continue to run a stock ECU will probably run with high long term and short term fuel trims - if the modifications actually did anything. If the trims are small then the modifications probably didn't do anything. My personal opinion is that relying on fuel trim to accommodate modifications is a bad strategy. My understanding is that the long term fuel trim is a global number. It a single number that gets applied to all cells in the fuel map so the same correction gets applied at idle and under wide open acceleration (if the ECU actually applies trim under WOT). A modification may require more correction at WOT than at idle. Some modern ECUs actually have the ability to calculate a separate fuel trim value for every single fuel map entry