*******************
Update 3rd October 2017
Version 1.4 available on git.
https://github.com/aijii/MerpMod/tree/aijmod1.4You will also need the Ecuflash base definitions to go with it. Use this branch of subarudefs when compiling:
https://github.com/aijii/SubaruDefs/tree/MerpMod_aijMod_1.4There are addresses defined in the header files to cover ports to the following ROMS:
* A2UG002T
* A8DH200V
* A8DH200Z
* AZ1G701V
* AZ1G500G
* AZ1G202G
* AZ1G900C
* AZ1G101M
* AZ1G101N
* AZ1E400C
* AZ1N100M
** Disclaimer **
I have removed all built patches as you need to build this yourself and verify that everything that is there is correct. By downloading and using this source code, you take full responsibility, it is still experimental and some of the ports and functionality need proper testing which I do not have the means to do.
Buy a bench ECU, make an SH-Boot cable and have backup travel plans ready if you attempt to use this software on your car.
*******************
Hi all,
A few years ago I decided to pick up from where Merp left off with the Merpmod switch build.
The base Merpmod "Switch" build that I started from features:
* Launch Control (Compensated timing/fuel, locked timing/fuel not implemented)
* Flat Foot Shifting (Static and Auto, based on gear ratios) <- I'm still toying with auto mode, don't have it set up right yet
* Speed Density
* Check Engine Light Flashing on a handful of error codes
* 3 x 2 Map switching and blending, controllable via si-drive and/or TGV inputs. Timing, Boost and Primary Open Loop Fueling, with an injector scalar multiplier that follows eth content. Enough for basic flex but not enough for me

Early in November 2015 I worked, with andea’s help, to produce an updated version of Merpmod that "rounded off” Merp’s original implementation of map blending to provide end-to-end flex-fuel support for the 2008 STI (AZ1G202G).
The early November 2015 build added:
* Failsafe on flex sensor input to work with the Blueflex stuff with CEL flash if sensor out of range
* Different blend curves for boost/timing/fuel/speed-density
* Cranking/Tipin/Startup enrichment blending multiplier tables
This version is available elsewhere on these forums.
I worked in conjunction with td-d and some local tuners to improve the patch from this point and was given some cool ideas. So I added the following features to what I’ve coined “Aijmod - release candidate 1.3":
* Revamped Definitions layout, easier to follow categorisation of tables
* Reworked the way inputs are polled/updated to be more modular for future expansion of code
* Added Rear o2 input option
* Added MAF input option (for full SD cars)
* Overhauled the CEL Flashing code. There is now a failsafe function that runs regularly that checks all the various failsafe triggers and set flags for each one. Again boring, but more modular for future expansion. Needed to do this for the next bit
* added failsafe fueling additive function, with switches for various trigger conditions (EGT, severe knock, Lean boost, ECT). I was going to make this a multiplier, but it just adds a fixed additive whilst any trigger condition is active. An improvement would be a decay function that slowly decays away the fuel additive once the warning condition clears
* Added dual blended MAF scaling tables for CL fueling tweaks, and added options to the MAF Mode table to select dual blended MAFs for full MAF mode, or blended MAF/SD mode.
* Added dual blended front O2 scaling tables for CL fueling tweaks. This was suggested, in conjunction with the last item for a way to achieve a leaner CL burn on e85
* Changed from fixed blend curves for boost, timing, fuel and SD to 4 selectable blend curves for OL Fueling, CL Fueling,Base Timing, Knock Control (KCR), WG, Boost, MAF and Speed Density Tables (multiplier tables such as injector scaling, cranking fuel, tip-in and startup enrich will always follow the master blend ratio), i.e. carberry-esque
* added an ECU calculated Injector Duty Cycle parameter (loggable, hopefully more accurate than RR post-logging calculated value), and added a failsafe trigger and corresponding CEL flash failsafe action if above a threshold
* added wideband sensor capability off any of the currently defined inputs
* added lean boost failsafe trigger.
* added a switch to the valet WGDC/Boost tables as an additional failsafe action that is selectable for a bunch of triggers to set the valet mode flag, quick and dirty way to limit boost but there are already merpmod valet mode WG and TB tables... why reinvent the wheel
* added fuel pressure sensor capability off any input with scalings etc
* added fuel pressure delta calculation (loggable) and failsafe trigger if above a threshold
Some screenshots:
Attachment:
12694907_10153350012821935_8081276442666193109_o.jpg [ 255.99 KiB | Viewed 14102 times ]
Attachment:
12640231_10153350013086935_3728066905794583399_o.jpg [ 213.48 KiB | Viewed 14102 times ]
Attachment:
Screen Shot 2017-01-16 at 1.23.08 pm.png [ 1.12 MiB | Viewed 14101 times ]
The patch has been out in the wild for some time with a limited set of competent local tuners (GIR, MSR), with a number of ADM/EDM/SADM cars defined. I haven’t yet released the source code for the advanced/RC1.3 version and am not sure what I want to do in this regard.
I have a number of other ideas I want to implement in 2017, however I figured it would be worthwhile posting about my progress so far.
Lastly I'd really like to thank:
* Merp for getting the workspace together and getting the Merpmod project to where it was left!
* td-d who has been a huge help all the way through on the disassembly side
* andea for helping me with getting the first build compiling correctly!
Cheers,
aijii-