ROMRAIDER ECU DEFINITIONS UPDATE version 0.8.2b 10-05-08These definitions will only work with RomRaider. They are also designed to be used with the latest logger xml update (0.3.4b 10-03-08) which can be found here: LOGGER XML UPDATE and the latest Ecuflash ECU definitions which can be found here: Ecuflash XML UPDATE.Note: If you are having problems with saving DEBUG mode tables in RomRaider, you need to make sure that the "Save changes made on tables in debug mode" option is enabled in RomRaider's settings menu (Edit -> Settings) and that your user level is set to debug mode (View -> User Level)WARNING:
These definition files and the RomRaider software are currently in beta testing. This means there is the potential for bugs, errors and misrepresentations which can result in damage to your motor, your ECU as well the possibility of causing your vehicle to behave unexpectedly on the road, increasing the risk of death or injury. Modifications to your vehicle's ECU may also be in violation of local and federal laws. By using this software and the ECU definition files, either directly or indirectly, you agree to assume 100% of all risk and RomRaider's creators and contributors shall not be held responsible for any damages or injuries you receive. This product is for advanced users only. There are no safeguards in place when tuning with RomRaider. As such, the potential for serious damage and injury still exists, even if the user does not experience any bugs or errors. As always, use at your own risk.Each definition file is compressed into a zip archive. To, install, download the file of the units you would most likely use from the bottom of this post. Unzip the ecu_defs.xml file into your main RomRaider directory replacing the existing file. Alternatively, you may add/remove definitions using the ECU Definition Manager in the Settings menu from within RomRaider.
0.8.2b CHANGE LISTNote: Minor bug fix made on 10-05-08 (to the original 10-03-08 release) to address an issue where the A4RG051N ROM would not display any tables.Support was added for The following CANbus Subaru ROM revisions:Note: Reading/Flashing of these models requires the new Tactrix OpenPort 2.0 cable. As with any new additions, use caution when tuning.- AZ1E401A (2008 USDM Impreza WRX MT)
- AZ1G201I (2008 USDM Impreza STi MT)
- AZ1G202I (2008 USDM Impreza STi MT)
- AZ1G401V (2009 USDM Impreza WRX MT)
- EZ1E102H (2008 USDM Impreza 2.5i AT)
- A8DK100D (2007 USDM Forester XT AT)
- A8DK100I (2007/2008 USDM Forester XT MT)
- AZ1G101R (2009 USDM Forester XT AT)
- A2TB000N (2008 USDM Legacy GT MT)
- A2TB000L (2008 USDM Legacy GT spec.B MT)
- A2TB001C (2008 USDM Legacy GT AT)
- A2TB001L (2008 USDM Legacy GT spec.B MT)
- A2UG000L (2007 USDM Legacy GT spec.B MT)
- A2UI001C (2007 USDM Legacy GT AT)
- D2TC001P (2009 USDM Legacy 3.0R AT)
- EZ1D105C (2008 USDM Legacy 2.5i MT)
- EZ1D201D (2008 USDM Legacy 2.5i AT)
- EZ1D302C (2009 USDM Legacy 2.5i MT)
- EZ1D302D (2009 USDM Legacy 2.5i AT)
- A2TB100A (2008 JDM Legacy GT AT)
- A2TB100U (2008 JDM Impreza SGT MT)
- A2UI000A (2007 JDM Legacy GT AT)
- AZ1G300F (2008 JDM Impreza STi MT)
- AZ1H101W (2008 JDM Impreza SGT AT)
- E2TB101Q (2008 JDM Exiga 2.0i AT)
- A2UG001G (2008 ADM Legacy GT AT)
- A2UG002T (2007 ADM Liberty GT MT)
- A2UI000Z (2008 ADM Liberty GT MT)
- A8DK100M (2007 ADM Forester XT MT)
- AZ1E400C (2008 ADM Impreza WRX MT)
- E2TB102M (2008 ADM Liberty 2.5i MT)
- EZ1G107M (2009 ADM Forester 2.5 MT)
- A8DK100P (2007 EDM Forester XT AT)
- AZ1G201G (2008 EDM Impreza STi MT)
- DZ1G001F (2009 EDM Tribeca AT)
- A8DK100E (2007 SADM Forester XT AT)
- AZ1G200J (2008 SADM Impreza STi MT)
Support was added for The following non-CAN Subaru ROM revisions:- A4SD700B (2001/02 JDM Impreza STi MT/AT)
- A4TE0000 (2003 ADM Impreza WRX MT/AT)
- D2ZZ001E (2005 EDM Legacy 3.0R AT)
- E2VH111C (2006 USDM Impreza 2.5i MT/AT)
The following new tables were added for applicable CANbus ECUsTD Integral Negative Activation (Wastegate Duty) - This is the wastegate duty threshold for active turbo dynamics integral negative correction. When current wastegate duty is less than or equal to this table's value, turbo dynamics integral negative correction is disabled. When current wastegate duty is greater than this value, turbo dynamics integral negative correction is enabled but only if the thresholds are also met in the 'TD Integral Negative Activation (Boost Error)' table. In addition, turbo dynamics correction must already be active as determined by the 'TD Activation Threshold' tables.
Primary Open Loop Fueling Base - This fuel map is used in open loop when the ignition advance multiplier (IAM) is equal to 1.0. When the IAM is less than 1.0, this fuel map is used as a base and the 'Primary Open Loop Fueling Additive' enrichment map is added to determine the final primary open loop fueling. An estimated AFR for this final fueling can be calculated as follows: 14.7/(((14.7/(Base AFR map value)) + (Additive map value * (1.0 - current IAM))).
Primary Open Loop Fueling Additive - This fuel map is used as an additive to the 'Primary Open Loop Fueling Base' map when the ignition advance multiplier (IAM) is less than 1.0. An estimated AFR for final primary open loop fueling can be calculated as follows: 14.7/(((14.7/(Base AFR map value)) + (Additive map value * (1.0 - current IAM))).
CL to OL Delay/Switch SI-DRIVE Intelligent - When this table's value is non-zero, it is used as the current delay when the SI-DRIVE Intelligent mode is active. When this value is zero, the delay determined by the 'CL to OL Delay' table will be used, regardless of SI-DRIVE mode.
Requested Torque (Accelerator Pedal) SI-DRIVE Sport - This table determines the driver requested torque based on the accelerator pedal angle and engine speed when SI-DRIVE Sport mode is active. This value is used to determine the target throttle plate angle as determined by the 'Target Throttle Plate Position (Requested Torque)' table.
Requested Torque (Accelerator Pedal) SI-DRIVE Sport Sharp - This table determines the driver requested torque based on the accelerator pedal angle and engine speed when SI-DRIVE Sport Sharp mode is active. This value is used to determine the target throttle plate angle as determined by the 'Target Throttle Plate Position (Requested Torque)' table.
Requested Torque (Accelerator Pedal) SI-DRIVE Intelligent - This table determines the driver requested torque based on the accelerator pedal angle and engine speed when SI-DRIVE Intelligent mode is active. This value is used to determine the target throttle plate angle as determined by the 'Target Throttle Plate Position (Requested Torque)' table.
Requested Torque Base (RPM) - The value determined by the 'Requested Torque (Accelerator Pedal)' table is divided by this table's value to determine the 'Requested Torque Accelerator Pedal to Requested Torque Base RPM' ratio. This ratio makes up the x-axis of the 'Target Throttle Plate Position (Requested Torque Ratio)' table.
Target Throttle Plate Position A-C (Requested Torque Ratio) - The 'Requested Torque Accelerator Pedal to Requested Torque Base RPM (ratio)', which makes up the x-axis of this table, is the ratio of requested torque determined by the 'Requested Torque (Accelerator Pedal)' to the requested torque determined by the 'Requested Torque Base (RPM)' table. This ratio and engine speed are used to determine the target throttle plate opening.
Target Throttle Plate Position Maximum (Requested Torque) - The target from the 'Requested Torque (Accelerator Pedal)' table and engine speed are used to determine the maximum limit target throttle plate opening. This maximum target throttle plate opening is used to limit the final target throttle plate opening determined by the A/B tables.
Target Throttle Plate Position Maximum (Requested Torque Ratio) - The 'Requested Torque Accelerator Pedal to Requested Torque Base RPM (ratio)', which makes up the x-axis of this table, is the ratio of requested torque determined by the 'Requested Torque (Accelerator Pedal)' to the requested torque determined by the 'Requested Torque Base (RPM)' table. This ratio and engine speed are used to determine the maximum target throttle plate opening. This maximum target throttle plate opening is used to limit the final target throttle plate opening determined by the A/B tables.
Rev Limit Fuel Resume (MP) - [select N/A models only] - After the rev limiter is engaged and engine speed drops below the 'Off' RPM, fueling will not resume until manifold pressure drops below this table's value.
Speed Limiting A/B (Throttle) SI-DRIVE Sport/Sport Sharp - The vehicle speed at which throttle is reduced when SI-DRIVE Sport or Sport Sharp mode is active.
Speed Limiting (Throttle) SI-DRIVE Intelligent - The vehicle speed at which throttle is reduced when SI-DRIVE Intelligent mode is active.
MISC CHANGES1. Minor changes to table names, unit names, unit conversions and help text for clarity, consistency and/or accuracy.
2. Split the tables in the "Miscellaneous" category into three separate categories (as applicable) - "Drive-by-Wire Throttle (DBW)", "Miscellaneous - Limits", "Miscellaneous - Scalings", "Miscellaneous - Thresholds".
Other credits- Big thanks to Ben for pulling a bunch of CAN ROMs from dealership cars
***********************************************************************0.8.1b CHANGE LISTNote: The version referred to in this part of the change list was released on 9-08-08 (with a bug fix on 9-22-08) and was left in for reference due to the short time between releases.Support was added for The following Subaru ROM revisions submitted by users:32-bit ECUs
-----------------
- A2WC013E (2004-2007 JDM FORESTER STi MT)
- A2WC400D (2005 USDM FORESTER XT AT)
- A2WC522S (2005 USDM OUTBACK XT MT)
- A2WF101K (2005 USDM BAJA TURBO AT)
- A2ZJ800A (2004 JDM LEGACY GT AT)
- A2ZJA00Q (2005 SADM FORESTER XT MT/AT)
- A2ZJD00A (2004 JDM LEGACY GT AT)
- D0XJ001R (2006 EDM LEGACY 3.0R AT)
- D2WD200A (2004 JDM LEGACY 3.0R AT)
- E2UE101L (2007 USDM IMPREZA 2.5i AT)
- E2VH100C (2006 USDM IMPREZA 2.5i MT/AT)
- E2ZJ121G (2005 IMPREZA 2.5RS MT/AT)
- E2ZJ121H (2005 FORESTER 2.5X MT/AT)
16-bit ECUs
-----------------
- A4RG051N (2001/2002 JDM IMPREZA STi MT/AT)
- A4RG0500 (2001/2002 JDM IMPREZA STi MT/AT)
- A4RI401I (2001/2002 JDM FORESTER TURBO MT/AT)
- A4RM000H (2003 EDM IMPREZA STi MT/AT)
- A4RM100F (2005 EDM IMPREZA WRX MT/AT)
- A4SE300D (2001/2002 ADM IMPREZA WRX MT/AT)
- A4TJ111C (2005 JDM IMPREZA STi MT/AT)
The following new tables were added for applicable 16-bit Turbo ECUsInitial Off-Idle Wastegate Duty - [version 1 boost control only] - When leaving idle (as determined by the idle switch), wastegate duty will be initially set to this value as referenced by engine speed. The idle switch is based on throttle position. The final wastegate duty will still be limited by the 'Max Wastegate Duty' table.
Minimum Primary Open Loop Enrichment (Throttle) - This is the minimum enrichment (effective AFR lean limit) for primary open loop fueling based on throttle position. This minimum enrichment is applied if primary open loop fueling is active as previously determined by the 'Minimum Active Primary Open Loop Enrichment' threshold. It is also applied before compensation is applied by the 'Primary Open Loop Fueling Compensation (Coolant Temp)' table.
Minimum Primary Fueling CL to OL Intermediate Enrich - When transitioning between closed loop and open loop fueling, if the target enrichment is greater than this value (i.e. richer), an intermediate enrichment value will be used before the target enrichment is used. The intermediate value is determined by this value and the 'Maximum Primary Fueling CL to OL Intermediate Steps' value.
Maximum Primary Fueling CL to OL Intermediate Steps - When transitioning between closed loop and open loop fueling, these maximum steps, along with the 'Min Primary Fueling CL to OL Intermediate Enrich' value, determine the number of steps and the intermediate enrichment at each step before the normal primary enrichment is used. When the transition from CL to OL occurs, a counter, starting at zero, is incremented each execution. At zero (if maximum step value is also not zero), the intermediate enrichment value is used. When the counter reaches the maximum value, the primary enrichment is used and the intermediate sequence ends. If the counter is greater than zero and less than the maximum step value, the counter and the maximum value are used to determine the ratio of intermediate to primary enrichment. For example, if the counter is 1 and the maximum value is 2, then the additional enrichment on top of the intermediate enrichment will be one-half of the difference between the primary enrichment and the intermediate value. If the counter is 2 and the maximum value is 3, then the ratio would be two-thirds. To disable the intermediate enrichment behavior, set the maximum steps to zero.
Closed Loop Fueling Target Limits - These are the minimum and maximum limits for the closed loop fueling target.
CL Fueling Target Compensation (Load) - This is the compensation to the 'Closed Loop Base Fueling Target' based on load and engine speed. To determine the estimated AFR for a given condition, simply add the value in this table to the 'Closed Loop Base Fueling Target'. Other compensations (some undefined), are also applied.
CL Fueling Target Compensation (Coolant Temp) - This is the compensation to the 'Closed Loop Base Fueling Target' based on coolant temp. To determine the estimated AFR for a given condition, simply add the value in this table to the 'Closed Loop Base Fueling Target'. Other compensations (some undefined), are also applied.
CL Fueling Target Compensation (Coolant Temp) Disable - When coolant temp is greater than or equal to this value, the 'CL Fueling Target Compensation (Coolant Temp)' is no longer applied.
CL to OL Transition with Delay Throttle Hysteresis - When throttle position is equal to or less than this hysteresis subtracted from the 'CL to OL Transition with Delay Throttle' map value, the potential transition from open loop to closed loop begins (dependent on the primary open loop fuel map value and 'CL to OL Transition with Delay Load' threshold).
CL to OL Transition with Delay BPW Hysteresis - When the base pulse width is equal to or less than this hysteresis subtracted from the 'CL to OL Transition with Delay (Base Pulse Width)' map value, the potential transition from open loop to closed loop begins (dependent on the primary open loop fuel map value and 'CL to OL Transition with Delay Throttle' threshold)
Per Injector Primary Fuel Offset Compensation A-D - This determines the additive (per injector) to the base injector duration multiplier based on the last calculated injector pulse width and engine speed. The base injector duration is the injector pulse width necessary for stoich fueling at the current engine load. The base injector duration multiplier determines the correction applied to achieve a desired level of enrichment (or enleanment). No enrichment or enleanment would result in a base injector duration multiplier of 1.0. The offset from this table is added to other factors (such as primary open loop enrichment) and then added to this base injector duration multiplier to achieve the desired level of enrichment or enleanment. To estimate the effect of this compensation, first estimate the desired AFR that the compensation would be applied to (ex. 12:1 AFR). Convert this to the base injector duration multiplier (ex. 14.7/x = 14.7/12 = 1.225). Add the per injector compensation to this multiplier (ex. 1.225 + 0.05 = 1.275). Then convert the multiplier back to the estimated AFR (ex. 14.7/x = 14.7/1.275 = 11.53 AFR). It is not currently known which table corresponds to which injector.
Per Injector Compensation Activation (RPM) - When engine speed is greater than or equal to the disable value, 'Per Injector Primary Fuel Offset Compensations' will not be applied. When engine speed is less than the enable value, these compensations will be applied.
Tip-in Enrichment Disable Applied Counter Threshold - When the applied tip-in enrichment counter is greater than or equal to this table's value, tip-in enrichment is disabled. The applied tip-in enrichment counter is incremented each time tip-in enrichment is applied and cleared when tip-in throttle is negative or the threshold in the 'Tip-in Enrichment Applied Counter Reset' table is exceeded.
Tip-in Enrichment Applied Counter Reset - When the period between tip-in enrichment application exceeds the threshold in this table, the applied tip-in enrichment counter is cleared. The period between tip-in enrichment application is a counter that is cleared when tip-in enrichment is applied and incremented when the tip-in enrichment routine is executed. The applied tip-in enrichment counter is incremented each time tip-in enrichment is applied and cleared when tip-in throttle is negative or the threshold in this table is exceeded. The applied tip-in enrichment counter is the value that is compared to the 'Tip-in Enrichment Disable Applied Counter Threshold' for disabling tip-in enrichment.
Tip-in Enrichment Disable Throttle Cumulative Threshold - When the applied tip-in enrichment cumulative throttle value is greater than or equal to this table's value, tip-in enrichment is disabled. The current throttle tip-in is added to the applied tip-in enrichment cumulative throttle value when tip-in enrichment is applied and cleared when tip-in throttle is negative or when the last applied counter threshold exceeded the 'Tip-in Throttle Cumulative Reset' threshold.
Tip-in Throttle Cumulative Reset - When the period between tip-in enrichment application exceeds the threshold in this table, the applied tip-in enrichment cumulative throttle value is cleared. The period between tip-in enrichment application is a counter that is cleared when tip-in enrichment is applied and incremented when the tip-in enrichment routine is executed. The current throttle tip-in is added to the applied tip-in enrichment cumulative throttle value when tip-in enrichment is applied and cleared when tip-in throttle is negative or when the last applied counter threshold is exceeded in this table. The applied tip-in enrichment cumulative throttle is the value that is compared to the 'Tip-in Enrichment Disable Applied Throttle Cumulative Threshold' for disabling tip-in enrichment.
Primary Base Enrichment Additive 1 OR
Min Primary Base Enrichment 1 - This is one of three factors which determines the afterstart fuel enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The enrichment offsets determined by group 1 is applied directly to primary enrichment. To determine an approximate AFR for a particular condition, first determine the primary enrichment as determined by the open loop fuel maps (and after other compensations/limits are applied) and calculate the base fueling multiplier as 14.7/x. Then add the addadditional afterstart enrichment as determined from group 1, and 2/3 (see individual help text) and the approximate AFR will be 14.7/x.
Primary Base Enrichment Additive Compensation (Load) - This is the compensation of the 'Primary Base Enrichment Additive 1' value based on load.
Primary Base Enrichment Additive 2 Initial Start 1A,1B,2A,2B OR
Min Primary Base Enrich 2 Initial Start 1A/1B/2A/2B - This is the initial afterstart enrichment offset for group 2. This value decays to zero based on the "decay step" value. Group 2 is one of three factors which determines the primary fuel afterstart enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The enrichment offsets determined by tables 2 and 3 are averaged and added along with table 1 to primary enrichment to determine the final primary enrichment. To determine an approximate AFR for a particular condition, first determine the primary enrichment as determined by the open loop fuel maps (and after other compensations/limits are applied) and calculate the base fueling multiplier as 14.7/x. Then add the addadditional afterstart enrichment as determined from group 1, and 2/3 (see individual help text) and the approximate AFR will be 14.7/x.
Primary Base Enrichment Additive 2 Decay Step 1/2 OR 1A/1B/2A/2B OR
Min Primary Base Enrich 2 Decay Step 1/2 - This is the decay step value which reduces the afterstart enrichment offset for group 2. This reduces the offset for group 2 to zero starting at the "initial" value. Group 2 is one of three factors which determines the primary fuel afterstart enrichment.
Primary Base Enrichment Additive 3 Initial Start 1A/1B/2A/2B OR
Min Primary Base Enrich 3 Initial Start 1A/1B/2A/2B - This is the initial afterstart enrichment offset for group 3. This value decays to zero based on the "decay step" value. Group 3 is one of three factors which determines the primary fuel afterstart enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The enrichment offsets determined by tables 2 and 3 are averaged and added along with table 1 to primary enrichment to determine the final primary enrichment. To determine an approximate AFR for a particular condition, first determine the primary enrichment as determined by the open loop fuel maps (and after other compensations/limits are applied) and calculate the base fueling multiplier as 14.7/x. Then add the addadditional afterstart enrichment as determined from group 1, and 2/3 (see individual help text) and the approximate AFR will be 14.7/x.
Primary Base Enrichment Additive 3 Decay Delay 1/2 OR
Min Primary Base Enrich 3 Decay Delay 1/2 - This is the period in-between decay multiplier application. That is, over this period, the decay multiplier is not applied. Note: Only one delay period is chosen at any given time between tables 1 and 2.
Primary Base Enrichment Additive 3 Decay Multiplier OR
Min Primary Base Enrich 3 Decay Multiplier - This multiplier is applied to the current group 3 offset outside of the "decay delay" which reduces the offset, over time, towards zero after engine start.
Misfire CEL Fix (P0301, P0302, P0303, P0304) - When enabled, this prevents the activation of misfire DTCs. Off-road use only.
The following new tables were added for applicable 32-bit ECUsBoost Control Disable (Fine Correction) - Boost control is disabled (wastegate duty is set to zero) when the current fine knock correction is less than the value in this table for the delay period determined by the 'Boost Control Disable Delay (Fine Correction)' table and if the IAM drops below the first value in the 'Boost Control Disable (IAM)' table.
Boost Control Disable Delay (Fine Correction) - This is the delay period that must be met where if the current fine knock correction is continuously less than the value designated by the 'Boost Control Disable (Fine Correction)' table and the IAM drops below the first value in the 'Boost Control Disable (IAM)' table, then boost control will be disabled (wastegate duty is set to zero).
Wastegate Duty Ramping Fix - [USDM LGTs ONLY] - WARNING - UNTESTED. When enabled, this bypasses the factory WGDC ramping logic which appears to temporarily freeze WGDC at 30.2%.
Max Wastegate Duty Alternate Fix - [USDM LGTs ONLY] - WARNING - UNTESTED. When enabled, this bypasses the 'Max Wastegate Duty Alternate' logic.
CL to OL Transition with Delay Throttle Hysteresis - When throttle position is equal to or less than this hysteresis subtracted from the 'CL to OL Transition with Delay Throttle' map value, the potential transition from open loop to closed loop begins (dependent on the primary open loop fuel map value and 'CL to OL Transition with Delay Load' threshold).
CL to OL Transition with Delay BPW Hysteresis - When the base pulse width is equal to or less than this hysteresis subtracted from the 'CL to OL Transition with Delay (Base Pulse Width)' map value, the potential transition from open loop to closed loop begins (dependent on the primary open loop fuel map value and 'CL to OL Transition with Delay Throttle' threshold)
CL to OL Transition Counter Step Value (MAF) - This value determines the increment of the CL to OL transition counter based on MAF. This counter is incremented when the 'CL to OL Transition with Delay' load or throttle thresholds are continuously exceeded. When the counter is greater than or equal to the current delay value, the transition from CL to OL will occur (depending on the fuel map). WARNING - this value should NEVER be zero.
Per Injector Primary Fuel Offset Compensation A-D - This determines the additive (per injector) to the base injector duration multiplier based on the last calculated injector pulse width and engine speed. The base injector duration is the injector pulse width necessary for stoich fueling at the current engine load. The base injector duration multiplier determines the correction applied to achieve a desired level of enrichment (or enleanment). No enrichment or enleanment would result in a base injector duration multiplier of 1.0. The offset from this table is added to other factors (such as primary open loop enrichment) and then added to this base injector duration multiplier to achieve the desired level of enrichment or enleanment. To estimate the effect of this compensation, first estimate the desired AFR that the compensation would be applied to (ex. 12:1 AFR). Convert this to the base injector duration multiplier (ex. 14.7/x = 14.7/12 = 1.225). Add the per injector compensation to this multiplier (ex. 1.225 + 0.05 = 1.275). Then convert the multiplier back to the estimated AFR (ex. 14.7/x = 14.7/1.275 = 11.53 AFR). It is not currently known which table corresponds to which injector.
Per Injector Pulse Width Compensation A-D - This determines the compensation (per injector) to the current calculated injector duration based on the last calculated injector duration and engine speed. The calculated injector pulse width is based on engine load and a number of other correction factors necessary to achieve the desired fueling. It is not currently known which table corresponds to which injector.
Min Primary Base Enrich 2 Initial Start 1A/1B/2A/2B - This is the initial afterstart minimum enrichment offset for group 2. This value decays to zero based on the "decay step" value. Group 2 is one of three factors which determines the minimum primary fuel afterstart enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The minimum enrichment offsets determined by tables 1, 2, and 3 are added together to determine the final primary minimum enrichment. That is, regardless of the primary open loop fuel map value, enrichment will not be less than the final primary minimum enrichment. To determine an approximate minimum AFR for a particular condition, determine the final primary minimum enrichment offset from tables 1, 2, and 3 (adding together all three offsets) and calculate the estimated minimum AFR as 14.7/(1+x). Note: For group 2, only one initial start is chosen out of 1A, 1B, 2A, and 2B.
Min Primary Base Enrich 2 Decay Step 1/2 - This is the decay step value which reduces the afterstart minimum enrichment offset for group 2. This reduces the minimum offset for group 2 to zero starting at the "initial" value. Group 2 is one of three factors which determines the minimum primary fuel afterstart enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The minimum enrichment offsets determined by tables 1, 2, and 3 are added together to determine the final primary minimum enrichment. That is, regardless of the primary open loop fuel map value, enrichment will not be less than the final primary minimum enrichment. To determine an approximate minimum AFR for a particular condition, determine the final primary minimum enrichment offset from tables 1, 2, and 3 (adding together all three offsets) and calculate the estimated minimum AFR as 14.7/(1+x). Note: For group 2, only one decay step is chosen out of tables 1 and 2.
Min Primary Base Enrich 3 Initial Start 1A/1B/2A/2B - This is the initial afterstart minimum enrichment offset for group 3. This value decays to zero based on the "decay multiplier" and "decay delay" values. Group 3 is one of three factors which determines the minimum primary fuel afterstart enrichment. The primary fuel enrichment is a multiplier (determined primarily by the open loop fuel maps) applied to the base injector duration to determine the level of primary enrichment. The minimum enrichment offsets determined by tables 1, 2, and 3 are added together to determine the final primary minimum enrichment. That is, regardless of the primary open loop fuel map value, enrichment will not be less than the final primary minimum enrichment. To determine an approximate minimum AFR for a particular condition, determine the final primary minimum enrichment offset from tables 1, 2, and 3 (adding together all three offsets) and calculate the estimated minimum AFR as 14.7/(1+x). Note: For group 3, only one initial start is chosen out of 1A, 1B, 2A, and 2B.
Min Primary Base Enrich 3 Decay Delay A/B - This is the period in-between decay multiplier application. That is, over this period, the decay multiplier is not applied. Note: Only one delay period is chosen at any given time between A and B.
Min Primary Base Enrich 3 Decay Multiplier - This multiplier is applied to the current group 3 offset outside of the "decay delay" which reduces the offset, over time, towards zero after engine start.
Alternate Advance Mode - [2007 USDM STi ONLY] - WARNING - UNTESTED! DO NOT ENABLE ON COMMERCIALLY MODIFIED ROMS. When enabled, the alternate mode prevents the 'Timing Advance Additive A (Maximum)' and 'Timing Advance Additive B (Maximum)' tables from impacting advance. In addition, this results in the ECU using only the individual alternate versions of the following tables - 'Target Boost (Alternate)', 'Initial Wastegate Duty (Alternate)', 'Primary Open Loop Fueling C (Alternate)', and 'Primary Open Loop Fueling C (Failsafe Alternate)'.
Alternate Advance Mode - [2004-2006 USDM STi ONLY] - WARNING - UNTESTED! DO NOT ENABLE ON COMMERCIALLY MODIFIED ROMS. When enabled, the alternate mode prevents the 'Timing Advance Additive (Maximum)' table from impacting advance. In addition, this results in the ECU using the 'Map Ratio (Alternate)' multiplier to determine the map ratio switching for the following tables - Target Boost A/B, Initial Wastegate Duty A/B, Primary Open Loop Fueling A/B, and Primary Open Loop Fueling A/B (Failsafe).
Radiator Fan Modes (Coolant Temp) - These are thresholds based on coolant temp which, along with the mode specified by the vehicle speed threshold table, are involved in determining radiator fan control. Radiator fan modes for coolant temp range from 0 to 2. Current mode thresholds are dependent on whether the coolant temperature is increasing or decreasing. Generally, as the coolant temp mode is higher and the vehicle speed mode is lower, the more likely the radiator fan(s) will come on. Whether the A/C is on or not also impacts the fan control. Other undefined thresholds may also change the behavior of the system.
Radiator Fan Modes (Vehicle Speed) - These are thresholds based on vehicle speed which, along with the mode specified by the coolant temp threshold table, are involved in determining radiator fan control. Radiator fan modes for vehicle speed range from 0 to 3. Current mode thresholds are dependent on whether the vehicle speed is increasing or decreasing. Generally, as the coolant temp mode is higher and the vehicle speed mode is lower, the more likely the radiator fan(s) will come on. Whether the A/C is on or not also impacts the fan control. Other undefined thresholds may also change the behavior of the system.
The following conversions have been changedNOTE: You will notice that these conversion updates will change the value that is displayed in RomRaider. However, it will not change the underlying value in the ROM. Therefore, merely updating the definitions will not impact your tune but will allow for a more accurate conversion/representation in RomRaider.
- 'Minimum Open Loop Enrichment (Coolant Temp)...' - These group of tables, renamed 'Min Primary Base Enrichment 1...', use a different conversion that represents an offset to a fuel multiplier. This was necessary due to the addition of the group 2 and group 3 afterstart enrichment tables which are added along with group 1 to determine the minimum primary base enrichment.
- 'CL to OL Transition with Delay (Calculated Load)' - These table(s), renamed 'CL to OL Transition with Delay (Base Pulse Width)', use a more meaningful conversion that represents the base pulse width. The base pulse width is the injector pulse width (ms/rev) necessary for stoich fueling for a given load. You can determine the actual load threshold for the table as follows: (threshold * current injector flow scaling)/2709.09
- 'Throttle Tip-in Enrichment' - Changed conversion from 'raw ecu value' to 'additional injector pulse width (ms)' which is a more meaningful conversion as injector latency is added to applied tip-in enrichment.
The following table names have changed:- 'CL to OL Transition with Delay (Calculated Load)' -> 'CL to OL Transition with Delay (Base Pulse Width)' - changed to reflect new conversion (see section above).
- 'Target Boost (Unused)' -> 'Target Boost (Alternate)' AND 'Initial Wastegate Duty (Unused)' -> 'Initial Wastegate Duty (Alternate)' - [USDM 2007 STi ONLY] - changed to reflect the addition of the 'Alternate Advance Mode' switch that has the effect of using these alternate tables which are unused in the factory ROM (Note: 'Primary Open Loop Fueling C (Alternate)' and 'Primary Open Loop Fueling C (Failsafe Alternate)' were also added).
- 'Knock Failsafe Active Range (RPM)' -> 'Advance Additive Range (RPM)' - The name and description are more representative of its actual purpose. New description -> 'This is the RPM range in which the timing advance additive multipliers could potentially be manipulated, possibly resulting in a change in the applied advance additive(s). The logic for this is complex and the result of many undefined conditions.'
-'Timing Advance (Maximum)' -> 'Timing Advance Primary 1/2 (Maximum)' OR 'Timing Advance Additive A/B (Maximum)' - [USDM STi ONLY] - Changed to differentiate between primary advance and additive advance specific to the ECUs. See help text for individual table for explanation on how the advance is calculated for a particular ROM.
'(P1410) FUEL TANK PRESSURE SYSTEM MALFUNCTION' -> '(P1410) SECONDARY AIR PUMP VALVE STUCK OPEN' -> More descriptive CEL name relevant to Subarus [credit Airboy].
'(P1418) FUEL LEVEL SENSOR SIGNAL HIGH' -> '(P1418) SECONDARY AIR PUMP CIRCUIT SHORTED' -> More descriptive CEL name relevant to Subarus [credit Airboy].
Other minor changes to various table names were made as well.
MISC CHANGES1. The following tables were removed from some ECUs:
- 'Misfire Limit (CEL)' - [16-bit ECU only] - The new 'Misfire CEL Fix (P0301, P0302, P0303, P0304)' makes this previous table obsolete.
- 'Knock Failsafe Active Range (RPM)' - Removed from ROMs other than the USDM STi as this table is not used (also renamed for USDM STi - see above).
- 'Max Wastegate Duty Alternate (RPM)' and 'Wastegate Compensation B (Intake Temp)' - Removed from ROMs other than the USDM LGT as these tables are never active otherwise.
2. All table categories were renamed. This was done due to the large number of tables in some of the previous categories and also to make it easier for users to find a particular group of tables by adding subcategories. Also, some tables were shifted to different categories. The new category names are as follows: Boost Control - Target, Boost Control - Wastegate, Boost Control - Turbo Dynamics, Manifold Pressure Sensor, Fueling - Primary Open Loop, Fueling - Closed Loop, Fueling - CL/OL Transition, Fueling - Injectors, Fueling - Tip-in Enrichment, Fueling - Warm-up Enrichment, Fueling - Miscellaneous, Mass Airflow, Ignition Timing - Advance, Ignition Timing - Knock Control, Variable Valve Timing (AVCS), Miscellaneous, Idle Control.
3. Fixed an issue where certain early 32-bit ECUs actually support both manual and automatic transmissions (which is atypical for the 32-bit ECU). This means that only one transmission was defined for dual purpose tables, preventing the user from impacting certain table changes if their transmission was the opposite of what was defined. MT or AT tables and corresponding descriptions were added for all relevant tables. Only the following ROM revisions were impacted: A2ZJ500F - added AT tables, A2ZJA10P - added MT tables, and A2ZJA00P - added MT tables [thanks to ravenhill for bringing this problem to my attention].
4. Minor changes to unit names, static labels, and table help text.
5. Fixed transmission description for select naturally aspirated models for which some actually support both manual and automatic transmissions. Most MT/AT tables were already present, however, and only select additions were required.
6. Removed transmission specific 'Target Boost', 'Initial Wastegate Duty', and 'Max Wastegate Duty' tables from USDM ECUs which are unused by the factory ROM. These had been added previously to allow owners of a specific commercial flash to tune their ECUs. However, this has been confusing to some tuning the factory ROM and may conflict with the introduction of the 'Alternate Advance Mode' for STis which should not be enabled on a ROM with commercial code. In addition, it is really outside the scope of an open source application to enable support for a commercial product.
6. Minor changes to table order for consistency across ECUs.
7. Some base table changes in preparation for a future CANbus only def release.
Other credits- Thanks to MickeyD2005 for a large portion of various testing
- Thanks to donkey for testing the misfire CEL fix.
- Thanks to ImprezaRSX for testing the wastegate ramping fix.
- Thanks to other testers not mentioned.
GlossaryUSDM - United States Domestic Market (also rest of North America, Puerto Rico, & Guam)
EDM - European Domestic Market
JDM - Japanese Domestic Market
ADM - Australian Domestic Market (also New Zealand & South Africa)
SADM - South American Domestic Market
16-bit - ECUs for Subaru models such as the USDM 02-05 WRX, ADM/EDM/JDM 01-05 WRX and STi, and ADM/EDM/JDM 01-03 Forester Turbo.
32-bit - ECUs for Subaru models such as the USDM 04+ STi, ADM/EDM/JDM 06+ STi, USDM 05+ Legacy GT, USDM 04+ Baja Turbo, ADM/EDM/JDM/USDM 04+ Forester XT, USDM Outback XT 05+, USDM 06+ WRX, and USDM 05+ (non-USDM 04+) DBW naturally aspirated models, among others.
Supported Subaru ECUsA list of the currently support ROM revisions can be found here:
http://www.romraider.com/Documentation/SupportedECUs************************************************
Please do not host these definitions on your own site. Instead, provide a link to this post only.