More patches available online at chROM

Please read the whole document carefully

Instructions - applying the patch

Important: You need to have the latest EcuFlash version and ECU definitions installed in order to be able to edit the feature parameters. Also make sure you have set the user level to developer.

Images shown below are just for reference, actual data may differ

If you will be using a stock ROM you can skip this part and go to the Patching steps below. If you already have a patched ROM file and you wish to use that, you must first unpatch the ROM.

Unpatching

  1. Place the contents of the patch package you wish to unpatch in a folder of your choice
  2. Open your patched ROM file in EcuFlash
  3. Set all patch parameters to zero (0)
  4. Save ROM file and exit EcuFlash
  5. Navigate to your EcuFlash XML folder (on a typical installation that is C:\Program Files\OpenECU\EcuFlash\rommetadata\subaru\)
    step_select_xml.jpg
  6. With a text editor (e.g. notepad) open the file named xxxxxxxx.xml (where xxxxxxxx is your specific ROM internal id)
  7. Navigate to the end of the file
  8. Remove all text related to patch parameters before the “</rom>”
    step_paste_text.jpg
  9. Save and exit
  10. Copy this ROM file to the same folder as above
  11. Make sure your ROM image file has a .hex extension (change/rename extension if needed)
  12. Run unpatch.bat
  13. Proceed with on screen instructions
  14. Process is succesfully finished only if message "Unpatched xx bytes" is displayed
  15. Now you can use this ROM file for futher patching

Patching

  1. Extract downloaded patch .zip file into a seperate folder, now you should have these files:
  2. Into the same folder place a copy of your ROM image file.
  3. If you are familiar with command line interface, navigate to above folder and use “TinyPatcher.exe [your rom filename] patch.dif”, then go to step 6
  4. If you will be using the batch file make sure your ROM image file has a .hex extension (change/rename extension if needed)
  5. Double click on Patch.bat, a command window will appear, then follow on screen instructions to apply the patch
  6. If process finishes without any error message(s), your ROM image file is patched and ready to be used
  7. For the final steps, you need to add the new parameters into the XML file. With a text editor (e.g. notepad) open the file named “ecuflash xml.txt”. Select all the available text and copy to the clipboard. Close the file
    step_copy_text.jpg
  8. Navigate to your EcuFlash XML folder (on a typical installation that is C:\Program Files\OpenECU\EcuFlash\rommetadata\subaru\)
    step_select_xml.jpg
  9. With a text editor (e.g. notepad) open the file named xxxxxxxx.xml (where xxxxxxxx is your specific ROM internal id)
  10. Navigate to the end of the file and just before the “</rom>” paste the text you copied before. Save and close
    step_paste_text.jpg
  11. Open EcuFlash and your patched ROM. If you see the message below make sure you answer YES
    step_checksum.jpg
  12. New patch maps should be available and visible like in the screenshot below, if they don't appear it probably means you have not copied the xml parameters properly. Follow steps 7-10 carefully
    step_ecuflash.jpg
  13. Ready!

Multi function patch

This patch offers many and unique functions. The priority of the executed functions affecting the rev limiter is the following

  1. Rev-protect
  2. Valet mode
  3. Launch control

Rev-protect

The purpose of this feature is to restrict the maximum RPM limit the engine can reach depending on the coolant temperature.
This is useful to assist you in avoiding racing the engine when it is not properly heated

Set your desired value of Rev-protect RPM delta and coolant temp threshold in your ROM
IMPORTANT NOTICE: Rev-protect RPM Delta is an offset to the normal rev limiter

To disable this function set the parameters as follows:
Rev-protect RPM delta = 0
Rev-protect coolant temp threshold = -40

Valet mode

The purpose of this feature is to restrict the maximum RPM limit the engine can reach.
This is useful in various situations e.g. where you let someone else drive your car.

Set your desired value of Valet RPM delta in your ROM
IMPORTANT NOTICE: Valet RPM Delta is an offset to the normal rev limiter
Effectively rev limit = rev limit - Valet RPM delta,
the higher the Valet RPM delta value the lower the actual rev limit becomes, the lower the Valet RPM delta value the higher the rev limit becomes.

To toggle the valet mode at anytime while stationary, perform the following sequence:

  1. Make sure the engine is OFF, turn the key to the on/ign position, DO NOT START THE CAR
  2. Set the rear defog switch to OFF
  3. Fully HOLD down the accelerator pedal
  4. Set the rear defog switch to ON
  5. Release accelerator pedal
  6. Set the rear defog swtich to OFF
  7. Valet mode toggle is complete

Launch control

The purpose of this feature is to allow you to hold your foot planted to the throttle while stationary and forcing an RPM delta (offset to real rev limit) that allows the car to hold a user desired rev limit and launch with as much less wheelspin as possible when releasing the clutch.

Of course this RPM limit must be disabled after the car has reached a specified speed threshold.

The actual logic/algorithm is like this:

read vehicle speed
if vehicle speed > speed threshold then

no adjustment to real RPM

else

adjust real RPM by RPM delta

pass control to rev limiter check (fuel cut)

Effectively rev limit = rev limit - LC RPM delta, the higher the LC RPM delta value the lower the actual rev limit becomes, the lower the LC RPM delta value the higher the rev limit becomes.

Set your desired value of LC RPM delta in your ROM
IMPORTANT NOTICE: LC RPM Delta is an offset to the normal rev limiter

To disable this function set the parameters as follows:
LC RPM delta = 0
LC disable speed threshold (KMH or MPH) = 0

Lets see some examples and interesting extra features

Launch control enabled, from stationary to 10km/h
rev limit is 7200rpm
LC speed threshold=10km/h
LC RPM delta=1700rpm
rev limit will be 5500rpm (7200-1700) till vehicle reaches 10km/h

Valet mode
rev limit is 7200rpm
LC speed threshold=255km/h
LC RPM delta=3200rpm
rev limit will be pegged to 4000rpm (7200-3200)

Normal operation (feature disabled)
rev limit is 7200rpm
LC speed threshold=0km/h
LC RPM delta=0rpm
no change to rev limit (7200-0)

Stationary rev limit
rev limit is 7200rpm
LC speed threshold=0km/h
LC RPM delta=3200rpm
rev limit will be 4000rpm only when stationary (7200-3200)

Wastegate + boost map switching

The purpose of this feature is to allow you to switch between two different boost and wastegate maps

These are the tuneable switchable maps (Primary/Alternate)

  1. Primary target boost (BAR/PSI). This is the map that used by default when your first flash it to your car or switch from alternate or anytime you perform a RESET.
  2. Alternate target boost (BAR/PSI). This is the alternate target boost map used when you switch from primary
  3. Primary max wastegate duty. This is the map that used by default when your first flash it to your car or switch from alternate or anytime you perform a RESET.
  4. Alternate max wastegate duty. This is the alternate max wastegate duty map used when you switch from primary
To switch maps at anytime while driving perform the following sequence:
  1. While driving, set the rear defog switch to OFF
  2. Select 4th or 5th gear, reduce engine RPMs to 2000 or lower
  3. While fully HOLDING down the accelerator pedal, set the rear defog switch to ON
  4. Map swithing is complete
IMPORTANT NOTICE: BE EXTRA CAREFUL when switching maps, as switching is almost instant