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
- Place the contents of the patch package you wish to unpatch in a folder of your choice
- Open your patched ROM file in EcuFlash
- Set all patch parameters to zero (0)
- Save ROM file and exit EcuFlash
- Navigate to your EcuFlash XML folder (on a typical installation that is C:\Program Files\OpenECU\EcuFlash\rommetadata\subaru\)

- With a text editor (e.g. notepad) open the file named xxxxxxxx.xml (where xxxxxxxx is your specific ROM internal id)
- Navigate to the end of the file
- Remove all text related to patch parameters before the “</rom>”

- Save and exit
- Copy this ROM file to the same folder as above
- Make sure your ROM image file has a .hex extension (change/rename extension if needed)
- Run unpatch.bat
- Proceed with on screen instructions
- Process is succesfully finished only if message "Unpatched xx bytes" is displayed
- Now you can use this ROM file for futher patching
Patching
- Extract downloaded FFS+LC patch .zip file into a seperate folder, now you should have these files:
- TinyPatcher.exe
- Patch.bat
- UnPatch.bat
- patch.dif
- ecuflash xml.txt
- Into the same folder place a copy of your ROM image file.
- IMPORTANT: Only RAW binary ROM images are supported
- IMPORTANT: 16bit ROM images must be 192K
- 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
- If you will be using the batch file make sure your ROM image file has a .hex extension (change/rename extension if needed)
- Double click on Patch.bat, a command window will appear, then follow on screen instructions to apply the patch
- If process finishes without any error message(s), your ROM image file is patched and ready to be used
- 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

- Navigate to your EcuFlash XML folder (on a typical installation that is C:\Program Files\OpenECU\EcuFlash\rommetadata\subaru\)

- With a text editor (e.g. notepad) open the file named xxxxxxxx.xml (where xxxxxxxx is your specific ROM internal id)
- Navigate to the end of the file and just before the “</rom>” paste the text you copied before. Save and close

- Open EcuFlash and your patched ROM. If you see the message below make sure you answer YES

- 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

- Click on newly added patch maps, all of them should be set to 0 the first time you open the ROM. Any other value possibly means you have applied the patch to an incompatible ROM. DO NOT TRY TO USE THIS ROM TO YOUR CAR

- Ready!
Flat foot shifting
The purpose of this feature is to allow you to hold the throttle fully open while shifting gears.
The FFS limiter is enabled when the vehicle speed is above the LC speed threshold and the clutch pedal is depressed.
What benefits can you expect from using FFS?
- Reduced stress on the transmission when used properly
- Boost will not drop between shifts as the throttle remains wide open
Set the new FFS RPM Delta parameter to the value of your choice
FFS rev limiter will be active when vehicle speed is greater than the LC speed threshold
Another parameter you might want to raise is the "Rev limit fuel resume", this is located in the Misc category.
This parameter controls when will the fueling will resume after hitting the limiter (limiter being LC, FFS or normal).
More specific, the ECU will not allow fueling until the manifold ABSOLUTE pressure drops below the value set in this parameter.
By default this is set to 1.68 bar/24.36 psi absolute pressure. In practice, if when using LC/FFS the absolute pressure you build is higher than this value, you will experience "car falls on its face"
IMPORTANT NOTICE: FFS RPM Delta is an offset to the normal rev limiter
Example
Rev limit is 7000rpm
FFS RPM delta=2000rpm
FFS RPM limit will be 5000rpm (7000-2000)
Recommended 1st test procedure, vehicle must remain stationary during the test
- Assuming REV LIMIT = 7000
- Set LC speed threshold to zero (0)
- Set LC RPM delta to 3000
- Set FFS RPM delta to 2000
- Flash ROM to car
- Start the car, let it idle-warm up
- Gear set to neutral
- Press throttle pedal fully down
- Car should limit ~4000 (LC limiter)
- While holding the throttle pedal fully down, depress the clutch
- Car should limit ~5000 (FFS limiter)
- Let off clutch, car should limit back to ~4000
- Let off throttle, car should idle normally
- Test 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 - RPM delta, the higher the RPM delta value the lower the actual rev limit becomes, the lower the RPM delta value the higher the rev limit becomes.
Lets see some examples and interesting extra features
IMPORTANT NOTICE: LC RPM Delta is an offset to the normal rev limiter
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)