Alex-Angarsk wrote:
Elder_303 wrote:
Does this sound about right?
Artificial intelligence has deceived you.
So after many hours of disassembly, analysis and verification with ChatGPT - this is what we have.
How the XML entries were verified — Summary
- Loaded the CF020 ROM into disassembler (SH7058 platform)
- Traced real ECU logic that runs Rear O2 sensor and heater diagnostics
- Found exact addresses used by the ECU:
- 0xC000 → DTC enable bitfield
- 0xC054 → Rear O2 Sensor Diagnostic Enable
- 0xC058 → Rear O2 Heater Diagnostic Enable
- Matched each bit position to a specific DTC or diagnostic function
- Built the XML entries to reflect exactly how the ECU accesses and uses those bits
Summary:
Table | Address | Bits | Verified?
Secondary O2 DTC 1 | 0xC000 | 6–15 | yes
Secondary O2 DTC 2 | 0xC000 | 16–19 | yes
Sensor Diag Enable | 0xC054 | 0 = B1, 1 = B2 | yes
Heater Diag Enable | 0xC058 | 0 = B1, 1 = B2 | yes
<table name="Secondary O2 DTC 1" storageaddress="0xC000"/>
<table name="Secondary O2 DTC 2" storageaddress="0xC000"/>
<table name="Rear O2 Sensor Diagnostic Enable" storageaddress="0xC054"/>
<table name="Rear O2 Heater Diagnostic Enable" storageaddress="0xC058"/>
<table type="BitwiseSwitch" name="Secondary O2 DTC 1" category="Options//DTCs//Lists" storagetype="uint32">
<bit position="6" name="P0137 O2S2B1 circuit low voltage"/>
<bit position="7" name="P0157 O2S2B2 circuit low voltage"/>
<bit position="8" name="P0138 O2S2B1 circuit high voltage"/>
<bit position="9" name="P0158 O2S2B2 circuit high voltage"/>
<bit position="10" name="P0139 O2S2B1 slow response"/>
<bit position="11" name="P0159 O2S2B2 slow response"/>
<bit position="12" name="P1146 O2S2B1 overvoltage"/>
<bit position="13" name="P1166 O2S2B2 overvoltage"/>
<bit position="14" name="P1147 O2S2B1 undervoltage"/>
<bit position="15" name="P1167 O2S2B2 undervoltage"/>
<description><!--zSecondaryO2DTC1--></description>
</table>
<table type="BitwiseSwitch" name="Secondary O2 DTC 2" category="Options//DTCs//Lists" storagetype="uint32">
<bit position="16" name="P0037 O2S2B1 heater circuit low"/>
<bit position="17" name="P0057 O2S2B2 heater circuit low"/>
<bit position="18" name="P0038 O2S2B1 heater circuit high"/>
<bit position="19" name="P0058 O2S2B2 heater circuit high"/>
<description><!--zSecondaryO2DTC2--></description>
</table>
<table type="BitwiseSwitch" name="Rear O2 Sensor Diagnostic Enable" category="Options//DTCs//Lists" storagetype="uint32">
<bit position="0" name="Rear O2 Sensor B1 Diagnostic Enable"/>
<bit position="1" name="Rear O2 Sensor B2 Diagnostic Enable"/>
<description><!--zRearO2SensorDiagEnable--></description>
</table>
<table type="BitwiseSwitch" name="Rear O2 Heater Diagnostic Enable" category="Options//DTCs//Lists" storagetype="uint32">
<bit position="0" name="Rear O2 Heater B1 Diagnostic Enable"/>
<bit position="1" name="Rear O2 Heater B2 Diagnostic Enable"/>
<description><!--zRearO2HeaterDiagEnable--></description>
</table>
Please advise if this will work??
Hello, when simply disabling the DTC oxygen sensors after the catalytic converters, the control unit starts the catalytic converter warm-up program since there is no signal from the sensors (always poor) and this leads to increased fuel consumption and late ignition timing. To properly disable, you need to change the program algorithm