ECU ROM mod - double the "Fuel Cut Load Limit" range to 638
#1
ECU ROM mod - double the "Fuel Cut Load Limit" range to 638
ECU ROM mod - Double the "Fuel Cut Load Limit" table range to 638 load
Updates
January 3, 2010 - Added 96940011 ROM courtesy of logic.
October 11, 2009 - Added 90550001 ROM.
September 27, 2009 - Fixed royal screwup on 94170015. If you applied the patch using the original definitions, but everything back the way it was, and recopy the xmls, and then you'll be good to go.
September 27, 2009 - Original Post
Overview
The ROM code contains an algorithm to cut fuel when load exceeds the value in the load limit table. Having a load limiter is a useful feature because it protects the engine when the boost control system fails. The factory range for this table is 0 to 318 load which is great for mildly tuned motors, but in recent years, its become more and more easy to get big HP numbers with relatively mild mods, and more people are using the factory ECU with big turbo applications as well. These people are easily pushing more than 318 load. The only way to prevent fuel cut is to set the fuel cut trigger delay time to 1 bizillion seconds which effectively disables the load limiter algorithm. Turns out that its dead simple to hack the ROM code to extend the load limit range to as high as 638 load which allows the load limit feature to be used in high HP motors. There are no downsides to performing this mod. However, it is important to remember that after the mod has been done, the original load limit table should not be used because the values in that original table will no longer be correct. With that said, here is the hack for the various ROMs. (I'll add the hack for more ROMs whenever I can find some free time.)
Instructions
USDM Evo 9 - 88590015
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="15cc4" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3050" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="76b0" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="119a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
USDM Evo 8 - 96940011 (courtesy of logic)
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="13080" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="2D14" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="640e" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
EDM Evo 8 - 96530006 (courtesy of logic)
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="12a70" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3614" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="702c" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
USDM Evo 8 - 94170015
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="12cf8" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3614" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="6dd2" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
EDM Evo 7 Ralliart - 90550001
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (600D -> 4000) for Fuel Cut Load X2" category="Turbo Mods" address="11ac6" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="2" address="3814" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="56b6" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (600D -> 4000) for Fuel Cut Load X2" table, and change the value from 600D to 4000 (type it as 0x4000).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
Updates
January 3, 2010 - Added 96940011 ROM courtesy of logic.
October 11, 2009 - Added 90550001 ROM.
September 27, 2009 - Fixed royal screwup on 94170015. If you applied the patch using the original definitions, but everything back the way it was, and recopy the xmls, and then you'll be good to go.
September 27, 2009 - Original Post
Overview
The ROM code contains an algorithm to cut fuel when load exceeds the value in the load limit table. Having a load limiter is a useful feature because it protects the engine when the boost control system fails. The factory range for this table is 0 to 318 load which is great for mildly tuned motors, but in recent years, its become more and more easy to get big HP numbers with relatively mild mods, and more people are using the factory ECU with big turbo applications as well. These people are easily pushing more than 318 load. The only way to prevent fuel cut is to set the fuel cut trigger delay time to 1 bizillion seconds which effectively disables the load limiter algorithm. Turns out that its dead simple to hack the ROM code to extend the load limit range to as high as 638 load which allows the load limit feature to be used in high HP motors. There are no downsides to performing this mod. However, it is important to remember that after the mod has been done, the original load limit table should not be used because the values in that original table will no longer be correct. With that said, here is the hack for the various ROMs. (I'll add the hack for more ROMs whenever I can find some free time.)
Instructions
USDM Evo 9 - 88590015
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="15cc4" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3050" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="76b0" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="119a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
USDM Evo 8 - 96940011 (courtesy of logic)
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="13080" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="2D14" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="640e" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
EDM Evo 8 - 96530006 (courtesy of logic)
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="12a70" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3614" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="702c" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
USDM Evo 8 - 94170015
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="12cf8" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3614" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="6dd2" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
EDM Evo 7 Ralliart - 90550001
1) Add the items between the "-----" to your ROM xml file.
-----
<table name="EXTU.W->SHLL (600D -> 4000) for Fuel Cut Load X2" category="Turbo Mods" address="11ac6" type="1D" level="1" scaling="Hex16"/>
<scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big"/>
<table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="2" address="3814" scaling="FuelCutLoadX2">
<table name="RPM" type="Y Axis" elements="9" address="56b6" scaling="RPM"/>
</table>
<table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
-----
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (600D -> 4000) for Fuel Cut Load X2" table, and change the value from 600D to 4000 (type it as 0x4000).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
Last edited by mrfred; Jan 3, 2010 at 02:08 PM.
#6
Evolved Member
iTrader: (2)
For 94170015, should the EXTU.W be at 15cc2 instead? Also, "Fuel Cut Load X2" looks like it should be 3614, with the axis at 6dd2?
For 96530006:
1) Add the items below to your ROM xml file.
2) Save the ROM xml file, open ECUFlash, go to the "EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" table, and change the value from 6DDD to 4D00 (type it as 0x4D00).
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
For 96530006:
1) Add the items below to your ROM xml file.
Code:
<table name="EXTU.W->SHLL (6DDD -> 4D00) for Fuel Cut Load X2" category="Turbo Mods" address="12a70" type="1D" level="1" scaling="Hex16"/> <scaling name="FuelCutLoadX2" units="%" toexpr="x*5/2" frexpr="x*2/5" format="%.0f" min="0" max="638" inc="1" storagetype="uint8" endian="big" /> <table name="Fuel Cut Load X2" category="Turbo Mods" type="2D" level="1" address="3614" scaling="FuelCutLoadX2"> <table name="RPM" type="Y Axis" elements="9" address="702c" scaling="RPM"/> </table> <table name="Fuel Cut Load Trigger Delay" category="Turbo Mods" type="1D" address="159a" level="1" scaling="Time"/>
3) Modify the "Fuel Cut Load X2" table per your needs. Don't forget to set an appropriate value for the delay time as well.
4) Probably would be a good idea to delete the original load limit tables just to be safe.
Last edited by logic; Sep 28, 2009 at 05:52 AM. Reason: Fix wrong address for EXTU.W->SHLL