O2 sensor voltage explained (upstream vs downstream)
A narrowband oxygen sensor reports voltage, typically about 0.1–0.9 V. Upstream (before the catalyst) should switch rich/lean several times a second once the engine is in closed loop. Downstream (after the catalyst) should be slower and flatter if the converter is working.
Wideband / air-fuel sensors on newer cars do not look like a 0–1 V square wave. If your live data shows a lambda or mA reading, you are not looking at a classic narrowband. Diagnose with the PID the ECU actually reports.
Upstream: the mixture reporter
In closed loop you want switching, not a stuck high or stuck low line. Stuck lean (low voltage) with high positive trims points to unmetered air or weak fuel — see P0171. Stuck rich with negative trims is the other side (P0172). Circuit and heater codes such as P0130 and P0135 mean “the sensor or its heater is not healthy,” not automatically “replace the catalytic converter.”
Downstream: the catalyst reporter
If the rear sensor starts switching like the front, the converter is not storing oxygen the way it should. That is the usual live-data story behind P0420 / P0430. Confirm there is no active misfire first — a dead converter is often the victim of a long misfire, not the original fault.
What freeze frame adds
O2-related codes that set ice-cold vs fully warm are different jobs. A heater code on a short trip is expected to show a low coolant temperature in freeze frame.
In MotorBit
Graph upstream voltage next to STFT. You should see the trim and the O2 move together in closed loop. Graph downstream next to upstream when you are deciding whether a P0420 is “converter” or “the engine is still misfiring.”
Watch this PID in MotorBit
MotorBit reads codes, freeze frame, and live data through an ELM327 adapter on iPhone.
Download on the App Store
MotorBit