MX-6 BOY jr said:
Mike,
wouldn't you want to reset the compter after changing the o2 sensors to get rid of the ecu codes?
You could but it's not absolutely necessary. The only time a "code" is actually active and possibly affecting the operation of the PCM/engine is when the check-engine light is actually illuminated. When the light is out, the PCM is running as normal. The stored codes are just that: stored as a history of something that has happened, but isn't necessarily happening now.
So if you change the O2 sensors, the PCM will quite happily see the O2 sensors as functioning nominally and will execute the "normal" logic, even if codes for the previously-bad O2 sensors are still socked away in NV RAM. The codes stored in memory will not affect the running of the PCM.
Erasing codes is good practise of course, because it makes determining which of any new codes that show up after the work is done are "real" and which are simply from before the work (if that makes sense...) For example, you change the O2 sensors but don't erase the code(s). For a month, you never see a check engine light. Then one day, the light comes on and you read the codes out. You get, say, a code 16 and a code 17 but aren't sure now if the 17 is still there from a month ago or if it was involved in the CEL coming on just recently.
So for you Mazda guys with radio codes to worry about, you can save the code-hassle by not erasing the malfunction codes at all and not suffer any ill effects.
Of course, the OBD-II fellows can erase the codes through the J1982 port via software commands issued via scan-tool, never having to disconnect the battery
