Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB

Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB (https://www.ft86club.com/forums/index.php)
-   Software Tuning (https://www.ft86club.com/forums/forumdisplay.php?f=88)
-   -   Open source Over Boost Fuel Cut (https://www.ft86club.com/forums/showthread.php?t=93000)

Sportsguy83 04-27-2016 11:10 AM

Quote:

Originally Posted by ztan (Post 2350198)
***Use at your own risk.***

This implementation hijacks the speed limiting fuel cut routine and assesses MAP instead of vehicle speed.

Defined for A00G/A01G ROM: a single value in the speed limiting fuel cut routine is changed (from 0x58 to 0x5A) to get MAP loaded instead of speed and MAP limits are entered in place of speed limits. To clarify, no additional patch is needed for this modification besides the single value switch in the code - thanks to Subaru engineers who just lifted the speed limit rather than write new code.

This is really great work man!! You're awesome!

makinen 01-06-2018 06:52 AM

1 Attachment(s)
This boost cut mod is working pretty well!
I modified A01E CAL ID rom file for this boost cut mod and got good result.
Boost cut activated at 8 psi and deactivated at 7.5 psi.

Attachment 161593
https://datazap.me/u/makinenkr/20180...zoom=2728-2758

It might need fine tuning of parameters to prevent boost fluctuation.

Good job @ztan !

steve99 01-08-2018 01:42 AM

Quote:

Originally Posted by makinen (Post 3024583)
This boost cut mod is working pretty well!
I modified A01E CAL ID rom file for this boost cut mod and got good result.
Boost cut activated at 8 psi and deactivated at 7.5 psi.

Attachment 161593
https://datazap.me/u/makinenkr/20180...zoom=2728-2758

It might need fine tuning of parameters to prevent boost fluctuation.

Good job @ztan !


Nice work,

you could likey just use the entire A01G rom in your car and get flexfuel as well

makinen 07-06-2018 02:16 AM

I've applied over boost fuel cut to and tested with Kouki K00G-based OTS ROM. It works as A01E or G.

makinen 07-05-2023 08:30 AM

Modifications for K00G
 
As @AussieBRZ mentioned this is required for K00G rom, I'd like to add my modifications for K00G. Any rom definitions based on K00G could work.

But as usual use this at your own risk.

Code:

                <!--table name="Speed Limiting Enable (Fuel Cut)" storageaddress="10e924"/-->
                <table name="Boost Limit (Fuel Cut) enable" storageaddress="69D45" />   
                <table name="Boost Limit (Fuel Cut)" storageaddress="10E924" />
                <table name="Boost Limit (Fuel Cut) Resume" storageaddress="10E934" />
                <table name="Boost Limit (RPM) Active" storageaddress="10E938" />
                <!--table name="Speed Limiting Disable (Fuel Cut)" storageaddress="10e92c"/-->

This tweak works by toggling "Boost Limit (Fuel Cut) enable" which writes not a value byte but a code byte actually.

Code:

                <table type="Switch" name="Boost Limit (Fuel Cut) enable" category="Miscellaneous - Limits" sizey="1">
                  <description>Enable Boost Limit (Fuel Cut)</description>
                  <state name="Enabled" data="5A" />
                  <state name="Stock ROM" data="58" />
                </table>
                <table type="2D" name="Boost Limit (Fuel Cut)" category="Miscellaneous - Limits" storagetype="float" endian="little" sizey="4" userlevel="4">
                  <scaling units="Manifold Pressure (psi relative sea level)" expression="(x-760)*.01933677" to_byte="(x/.01933677)+760" format="#0.00" fineincrement=".01" coarseincrement=".5" />
                  <table type="Static Y Axis" name="Boost Limit Fuel Cut" sizey="4">
                        <data>On Above</data>
                        <data>On Above</data>
                        <data>Off Below</data>
                        <data>Off Below</data>
                </table>
                  <description>These are the MAP values at which the boost limiter is engaged and disengaged. When engine speed is equal to or exceeds the 'On' value, fuel cut is active, after which, if engine speed drops below the 'Off' value, fueling is resumed.</description>
                </table>
                        <table type="2D" name="Boost Limit (Fuel Cut) Resume" category="Miscellaneous - Limits" storagetype="float" endian="little" sizey="1" userlevel="4">
                  <scaling units="Manifold Pressure (psi relative sea level)" expression="(x-760)*.01933677" to_byte="(x/.01933677)+760" format="#0.00" fineincrement=".01" coarseincrement=".5" />
                  <table type="Static Y Axis" name="Boost Limit Fuel Resume (MAP)" sizey="1">
                        <data>Below</data>
                  </table>
                  <description>After the boost limiter is engaged and engine speed drops below the 'Off' RPM, fueling will not resume until manifold pressure drops below this table's value.</description>
                </table>
                <table type="2D" name="Boost Limit (RPM) Active" category="Miscellaneous - Limits" storagetype="float" endian="little" sizey="1" userlevel="4">
                  <scaling units="Engine Speed (RPM)" expression="x" to_byte="x" format="#" fineincrement="50" coarseincrement="100" />
                  <table type="Static Y Axis" name="Boost Limit Active over" sizey="1">
                        <data>Over</data>
                  </table>
                  <description>The boost limiter is active over this RPM</description>
                </table>


callisto 02-15-2026 01:32 AM

Quote:

Originally Posted by makinen (Post 3586160)
As @AussieBRZ mentioned this is required for K00G rom, I'd like to add my modifications for K00G. Any rom definitions based on K00G could work.

But as usual use this at your own risk.

Code:

                <!--table name="Speed Limiting Enable (Fuel Cut)" storageaddress="10e924"/-->
                <table name="Boost Limit (Fuel Cut) enable" storageaddress="69D45" />   
                <table name="Boost Limit (Fuel Cut)" storageaddress="10E924" />
                <table name="Boost Limit (Fuel Cut) Resume" storageaddress="10E934" />
                <table name="Boost Limit (RPM) Active" storageaddress="10E938" />
                <!--table name="Speed Limiting Disable (Fuel Cut)" storageaddress="10e92c"/-->


This is, apparently, completely unchanged all the way to V00C/U01A. And confirms something, since I have a variable there labeled "map_maybe". Thank you for posting this! For those who need it, then, here's the correct addresses for those (the rest of the definitions are unchanged as per above).

U01A:

Code:

                <table name="Boost Limit (Fuel Cut) enable" storageaddress="6A9E9" />   
                <table name="Boost Limit (Fuel Cut)" storageaddress="10E604" />
                <table name="Boost Limit (Fuel Cut) Resume" storageaddress="10E614" />
                <table name="Boost Limit (RPM) Active" storageaddress="10E618" />

V00C:

Code:

                <table name="Boost Limit (Fuel Cut) enable" storageaddress="71579" />   
                <table name="Boost Limit (Fuel Cut)" storageaddress="11207C" />
                <table name="Boost Limit (Fuel Cut) Resume" storageaddress="11208C" />
                <table name="Boost Limit (RPM) Active" storageaddress="112090" />

The exact bytes surrounding the 'enable' location are unchanged from A01C..V00C, so:

4c f0 ff cb ff eb ff fb d2 <Enable>58 fe 28 d2 58 fc 28 d2 58 ff 28 d2 58 42 4b d2 58 42 0b 6c 0c

Searching for those hex bytes in the file appears to return a single location in any BRZ gen1 ECU, and that first '58' in the command 'd2 58' is what the 'enable' entry modifies above. Similarly, this locates the other three addresses:

44 7a 00 00 44 7a 80 00 <Fuel Cut>43 fa 00 00 43 fa 00 00 43 f5 00 00 43 f5 00 00 <Resume>44 7a 00 00 <Active>45 89 80 00

(If you are not familiar with hex editing and can't recover from a bricked ECU, you probably shouldn't try to use this information, but if you understand what you're doing, this is perhaps hours to weeks of time saved. Cheers.)


All times are GMT -4. The time now is 09:06 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
User Alert System provided by Advanced User Tagging v3.3.0 (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.


Garage vBulletin Plugins by Drive Thru Online, Inc.