The stock ECU has gear dependent boost control!
#1
The stock ECU has gear dependent boost control!
I discovered this evening that the stock ECU actually has gear-dependent boost control. There are two boost control ranges, and the crossover point, which is in units of rpm/mph (essentially a gear ratio) is user adjustable. So as an example if your are running huge boost and want to keep from shredding your gearbox in a 1st gear launch, then the crossover point can be selected so that first gear has a different boost control range than the remaining gears. As another example, many people seem to feel that boost in lower gears does not run as high as boost in upper gears and would like to compensate for this. So, the crossover point can be set so that 1st thru 3rd gear have different boost control parameters than 4th thru 5th (6th) gear. Its probably not as comprehensive as most people would like, but it seems awfully jiffy to me.
So how was this missed for so long? The answer is that we all assumed that the "Boost Control Limiting Speed" definition in ECUFlash was correct. Turns out its totally wrong. Its actually an rpm/mph value. The stock setting is 2900 rpm/mph. For comparison, 1st gear on my MR is about 177 rpm/mph, and 6th gear is about 42 rpm/mph. So the stock crossover setting is way too high to ever cause the second set of tables to be used, and the main boost control tables are all that are used.
For ROMs where three sets of boost tables are listed, when rpm/mph is greater than the crossover point, then BDEL #3, BWGDC #3, and WGDCC Interval #2 are used. When rpm/mph is less than the crossover point, then BDEL #1, BWGDC #1, and WGDCC Interval #1 are used. The remaining table is unused.
For ROMs where four sets of boost tables are listed, when rpm/mph is greater than the crossover point, then BDEL #4, BWGDC #4, and WGDCC Interval #2 are used. When rpm/mph is less than the crossover point, then BDEL #1, BWGDC #1, and WGDCC Interval #1 are used. The remaining tables are unused.
You all might be wondering what crossover rpm/mph value to use. To make your life a little easier, I've attached an Excel file and PDF file showing the rpm/mph values for all the Evos I could easily find.
How to get access to the crossover value??? Below are the ECUFlash definitions for most of the USDM ROMs. For the rest of you, it should be pretty easy to make up the table. The address for this table is the address for the incorrectly defined "Boost Control Limiting Speed". Find that address in your ROM xml file, and make a new table for it based on the ones below. Once you've done this, the "Boost Control Limiting Speed" table can be deleted.
EDIT: The RPM/MPH value for each gear is highlighted in yellow in the files. Say for instance that you want to use one set of boost control maps for 1st and 2nd gear and the other set of boost control maps for 3rd gear +. RPM/MPH is about 120 for 2nd gear and is about 90 for third gear. Set the crossover point to anywhere between these values, preferably in the midpoint, say about 105.
EDIT November 9, 2008: Scaling formulas are updated to fix an error I made in my initial post. I also added the definition for 96530006 ROM. Lastly, I forgot to mention that this doesn't work with a tephra ROM because he deletes the boost table switching code to make room for his patch. Sounds like he might add it back in a future tephra ROM.
EDIT November 12, 2008: Added some info above on which tables are used for ROMs with four sets of boost tables.
88590015 ROM:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="1e2a" type="1D" level="3" scaling="RPMPerMPH"/>
96940011 ROM:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="1e0a" type="1D" level="3" scaling="RPMPerMPH"/>
94170008, 94170014, 94170015, 96420007, 96420008, 96420011, 96530006 ROMs:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="2204" type="1D" level="3" scaling="RPMPerMPH"/>
So how was this missed for so long? The answer is that we all assumed that the "Boost Control Limiting Speed" definition in ECUFlash was correct. Turns out its totally wrong. Its actually an rpm/mph value. The stock setting is 2900 rpm/mph. For comparison, 1st gear on my MR is about 177 rpm/mph, and 6th gear is about 42 rpm/mph. So the stock crossover setting is way too high to ever cause the second set of tables to be used, and the main boost control tables are all that are used.
For ROMs where three sets of boost tables are listed, when rpm/mph is greater than the crossover point, then BDEL #3, BWGDC #3, and WGDCC Interval #2 are used. When rpm/mph is less than the crossover point, then BDEL #1, BWGDC #1, and WGDCC Interval #1 are used. The remaining table is unused.
For ROMs where four sets of boost tables are listed, when rpm/mph is greater than the crossover point, then BDEL #4, BWGDC #4, and WGDCC Interval #2 are used. When rpm/mph is less than the crossover point, then BDEL #1, BWGDC #1, and WGDCC Interval #1 are used. The remaining tables are unused.
You all might be wondering what crossover rpm/mph value to use. To make your life a little easier, I've attached an Excel file and PDF file showing the rpm/mph values for all the Evos I could easily find.
How to get access to the crossover value??? Below are the ECUFlash definitions for most of the USDM ROMs. For the rest of you, it should be pretty easy to make up the table. The address for this table is the address for the incorrectly defined "Boost Control Limiting Speed". Find that address in your ROM xml file, and make a new table for it based on the ones below. Once you've done this, the "Boost Control Limiting Speed" table can be deleted.
EDIT: The RPM/MPH value for each gear is highlighted in yellow in the files. Say for instance that you want to use one set of boost control maps for 1st and 2nd gear and the other set of boost control maps for 3rd gear +. RPM/MPH is about 120 for 2nd gear and is about 90 for third gear. Set the crossover point to anywhere between these values, preferably in the midpoint, say about 105.
EDIT November 9, 2008: Scaling formulas are updated to fix an error I made in my initial post. I also added the definition for 96530006 ROM. Lastly, I forgot to mention that this doesn't work with a tephra ROM because he deletes the boost table switching code to make room for his patch. Sounds like he might add it back in a future tephra ROM.
EDIT November 12, 2008: Added some info above on which tables are used for ROMs with four sets of boost tables.
88590015 ROM:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="1e2a" type="1D" level="3" scaling="RPMPerMPH"/>
96940011 ROM:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="1e0a" type="1D" level="3" scaling="RPMPerMPH"/>
94170008, 94170014, 94170015, 96420007, 96420008, 96420011, 96530006 ROMs:
<scaling name="RPMPerMPH" units="RPM/MPH" toexpr="x/22.6" frexpr="22.6*x" format="%.0f" min="0" max="3000" inc="5" storagetype="uint16" endian="big"/>
<table name="Boost Control RPM/MPH Crossover" category="Turbo Boost non-JDM" address="2204" type="1D" level="3" scaling="RPMPerMPH"/>
Last edited by mrfred; Nov 12, 2008 at 10:12 PM.
#7
Evolved Member
iTrader: (3)
didnt work for me either, but I cant even upload my logs right now... gives me the same exact error... weird!
I just added the patch to look at it, worked fine. I deleted the "boost control limiting speed", looked at the pdf file, but I am still unsure what the crossover value is for my car... Obviously I dont fully understand this... I have an 06 GSR...
I just added the patch to look at it, worked fine. I deleted the "boost control limiting speed", looked at the pdf file, but I am still unsure what the crossover value is for my car... Obviously I dont fully understand this... I have an 06 GSR...
Last edited by nonschlont; Nov 8, 2008 at 11:21 PM.
Trending Topics
#12
EvoM Guru
iTrader: (8)
So,
In all honesty,
What benefit is gear dependent boost control on a AWD anyway?
I mean it would be nice to have higher boost in 1st and 2nd to do mega AWD burnouts, but other than that, and some mega HP bigge turbos that somehow are still on stock ECU, what benefit do we have here.
This is a discussion opener, not a closer.
In all honesty,
What benefit is gear dependent boost control on a AWD anyway?
I mean it would be nice to have higher boost in 1st and 2nd to do mega AWD burnouts, but other than that, and some mega HP bigge turbos that somehow are still on stock ECU, what benefit do we have here.
This is a discussion opener, not a closer.
#13
Evolved Member
Join Date: Apr 2008
Location: Sydney, Australia
Posts: 604
Likes: 0
Received 0 Likes
on
0 Posts
I have had gear based boost control on the GT-A for quite a while, but it is interesting to find it is adjustable for which gears are applied. Should keep me busy for a while now :-)
#14
Nice one mrfred! Gear dependent duty cycle I always like because it gives a better starting duty in each gear for the closed loop control system to work with. You can set your duty to give good spike free control in every gear, and let the closed loop system deal with environmental condition changes. It is about my only reason for running an AVC-R. I think I might be able to relate this development with some other boost control info, will post if I find anything.