Subaru Impreza GC8 & RS Forum & Community: RS25.com - View Single Post - DIY: ProjectLambda Stock ECU Reflash Tuning (Master Reference Thread)
View Single Post
Old 08-23-2016, 09:51 AM  
ImprezaRSC
2.0L Turbo
 
Car: 2000 2.5RS BRP
Fav Mod: 8 SEMA awards.
Join Date: Jul 2004
Trader Rating: (2)
Posts: 1,170
Cool DIY: ProjectLambda Stock ECU Reflash Tuning (Master Reference Thread)

Ok. Let's do this.

Project Lambda Tuning

*Disclaimer* This is a technical reference guide. No more. No less. No guarantees are expressed or implied. Period. Save the debates and **** measuring for the dyno and the track.

Prior RS25.com Thread:
https://www.rs25.com/forums/f5/t22102...ing-again.html


User's Build Threads:
(Post your build thread link and I'll add it here.)

ImprezaRSC DrunkenBoxer 2.0


Prologue

Plenty of us have waited a long, long time for a reflashing option for the late model GC Imprezas. For about $400, this is a decent option for fine tuning adjustment of available factory parameters on the older ECU. This was a suitable compromise for me between a standalone and swapping a WRX ECU + harness. I'll forever be a fan of the direct nature of stand-alone systems; they just do what you tell them. This tuning options allows you to at least wrangle the stock ECU and rope it in under your saddle. Plenty of the functionality you don't have to actually use until it is needed, similar to open source reflashing.

This thread is meant to be an explanation and a how-to guide for end-users and tuners. There is no handbook, to date, and the software is also still technically in beta testing. Tuners will find it easy to use. If you are an end user who helps your friends debug their stuff, then that's about the skill level you need to work with this on your own.

This software is a good stepping stone for advanced users. Beginners should still consult with a qualified tuner. There are still software revisions and new features being added. The attraction as an end user was the stability. It has never crashed my laptop or bricked my ECU. That is at least a very good start. I have a background in automotive product development, tech writing, and software so the current incubation stage of this software is a familiar place to me. Some of the functions will seem a little weird and may not be in the final release version. I have been working with the software now as and end user and tester for about 3 months and like what I see. It has not been a painful or expensive experience.

As always, datalogging is your friend and will be how you judge your results along with your own tangible experiences like listening for spark knock or knowing what causes CELs. The dyno comes after, not before, the ECU is pleased.

(This needs to be said...)It's still important to have good support for your build, beyond earmarked threads. Find good people, pay them fairly, and don't **** on them. Jon at Fuji Factory has been very helpful since my engine combination is his brainchild. Mike has been helpful with the software since he wrote it. I had to fill in the details by turning the wrenches, polishing the computer tuning, and debugging the electronics of the swap. I took a chance on several new things and am happy with the results. I'm leery of dynoing it until the software is a little further along, like being able to raise the redline. I'm still leaving a lot on the table. /rant

Let's get to it by going down the line on available features and what they do. Screenshots added for reference 8/26/16



Configuration

Airflow Scalar This is more for readouts and logging than ECU calculation. It lets you know where you're going with airflow measurement moreso than the ECU.

E85 scalar value-0.96212
93 scalar value-1.47763

Load Scalar--this is essentially where you can scale your injectors. It doesn't read as simply as plugging in injector sizing. Mike is very helpful with these two figures to get you started. I used the following for my 440 injectors on E85 and gas.

E85 scalar value-0.05589
93 scalar value-0.03949

When both of the above values are correct, you are off to a good start on dialing in the rest of the mapping accurately.

You'll find that many of these settings are simply "1" = "on" and "0" = "off".

Learning Enable (useless). I killed 2 IAC valves with it.
Set to 1, the ECU will learn and adjust it's fuel trims and timing.
Set to 0, the mapping stays static.

VSS Error Fuel cut enable (useless)
Set to 1, the ECU will enable fuel cut for vehicle speed sensor errors
Set to 0, the ECU will disable fuel cut for vehicle speed sensor errors

Sustained High RPM fuel cut enable (useless)
Set to 1, the ECU will enable injector fuel cut at high rpm trailing throttle just like the factory.
Set to 0, the ECU disables this factory feature.

Evap leak test enable
Set to 1, the ECU will keep checking for evaporative pressures being inline with its expectations
Set to 0, turns this hippie crap off.

Fuel level sensor enable.
Set to 1, the factory fuel level sensor is enabled which keeps your gas gauge working. If you have an aftermarket fuel cell, then you likely don't have the sender operating anyway.
Set to 0, turns this thing off.

Fuel temperature sensor enable
Set to 1, this enables the factory fuel temperature sensor to keep working. It can vary the functionality of the ECU on ethanol because it runs colder.
Set to 0, turns this hippie crap off.

Evap system enable
Set to 1, keeps the factory evap solenoids and logic enabled.
Set to 0, turns this hippie crap off.

Vent Solenoid enable
Set to 1, keeps the factory evap solenoid functioning. If you have an aftermarket fuel cell then you've likely removed this.
Set to 0, turns this hippie crap off.

PCV solenoid enable
Set to 1, keeps the electronic PCV solenoid functioning. Some older ECUs have an electronic PCV solenoid installed instead of the analog temperature enabled unit.
Set to "0, turns this hippie crap off.

Power Steering Switch Enable
Set to 1, keeps the factory power steering switch enabled. If you have changed to a manual rack, then you don't need this.
Set to 0, turns this hippie crap off.

Air Assisted Injector Valve Enabled

Set to 1, this keeps the factory air assist valve working. Those with later model intake manifolds that delete this antiquated auxiliary system will find this useful.
Set to 0, turns this hippie crap off.

Cooling Fan Temperature Threshold
This is a 2x2 mapping table with two temperature triggers and an on/off option. You can control when the main and backup fans come on and turn off. You can make the fans come on sooner or later according to temperature in Celcius.



Map Sensor
Eh...leave this one alone if you are using the factory map sensor. This table will let you adjust offset and slope for a 2-3bar map sensor for reading boost. Until then, don't mess with it.



O2 sensors
This can be handy, but doesn't really need to be adjusted for much. It can go a little stupid with E85-E98 ethanol and this keeps the ECU from hunting so much for the right o2 signal readings.

Front o2 calibration
Mapping reference table for front o2 sensor voltage, referencing lambda value by o2 sensor voltage.

Rear o2 maximum STFT
Mapping reference table by g/s of airflow and maximum % fuel trim to be applied. This can minimize adjustability of fuel trims according to the rear o2 readings, extending catalytic convertor lifespan. You can tame the fuel trims by turning this down or make them more sensitive.

Rear o2 minimum STFT
Mapping reference table by g/s of airflow and minimum % fuel trim to be applied. This sets the "floor" of adjustability of fuel trims according to the rear o2 readings. You can tame the fuel trims by turning this down or make them more sensitive.

[i]Closed Loop-Minimum Coolant Temperature (Useful)
What is the minimum temperature for closed loop fueling you would like? Set this to 205C to stay in open loop. Race tune only. Expect fouled plugs or o2 sensors from extended use. Best for rounds of racing with extended WOT use instead of extended street cruising at legal speeds.



Limiters

Rev limiter so far is fairly useless. Doesn't work in gear.

We'll cover this more when they actually work. You can move high rpm fuel cut down, but not up at this point in time. I have it working in neutral, but not in gear. Bypassing the neutral safety switch and clutch switches did not work.



Fuel Injectors

injector end angle Mapping table, 16x16. This is the timing of the fuel injector firing, defined by crank angle and coolant temperature. Default is 230deg. I was able to clean up fuel trims and improve mileage by adjusting this. I have an earlier crank angle figure (210deg) at low rpm to introduce the fuel a little sooner. I have a later crank angle figure (250) at high rpm considerate to my head/cam combination.

(These next two don't translate like other injector latency settings. Don't go plugging in wild figures according to another software's figures)
injector latency slope/volts
Static figure for injector ramp up time. 0.10ms is the factory setting. I have not needed to adjust this even on 440 injectors.

injector latency offset
Static figure for average injector pulsewidth. I lowered mine to 1.74ms for the 440 injectors from 1.78

Minimum injector pulsewidth
Static figure for minimum injector on-time. I lowered mine a fair bit to 1.20ms for the 440 injectors to clean up idle and transitional fueling.



Fuel-Base
This tab has tables for base fueling in closed loop.

These next few tables read a little differently than you may have seen on other programs. It reads by kPa and RPM.

Volumetric Efficiency
This is a 16x16 mapping table for fueling based on a volumetric efficiency reference. The reference cell is called upon by RPM and kPa, both of which can be rescaled. You might notice the kPa reference having a slope to the numbers. Low and high airflow rates are spaced closer together, per factory.

Volumetric Efficiency - Atmospheric pressure bias
This is a 16x16 mapping table for atmospheric pressure reference adjustment. It also reads with RPM by kPa

Volumetric Efficiency - Throttle Compensation
This is a 16x16 mapping reference table for VE compensation. It is another reference table that adjusts by throttle position percentage and kPa

Cranking Base Injector Pulse Width (MT)
This is a 16x3 instructional table in need of a bit better labeling. It reads by coolant temperature and 1 of 3 modes (Test A, Test B, Normal). Basically, it can help you dial in your cranking fueling for better start up with manual transmissions.

Cranking Base Injector Pulse Width (AT)
This is a 16x3 instructional table in need of a bit better labeling. It reads by coolant temperature and 1 of 3 modes (Test A, Test B, Normal). Basically, it can help you dial in your cranking fueling for better start up with automatic transmissions.



Fuel-Power Mode
This is basically your open loop fueling, blended into the closed loop base figures.

Power Mode - Initial Fuel Ratio
This is another 16x16 reference table for the the initlal open loop fuel ratio. It is read with throttle position percentage by RPM. When you get so far into the throttle to turn on open loop fueling, this is the figure it starts to use before arriving at its final lambda value.

Power Mode - Final Fuel ratio
This is yet another 16x16 reference table for the final open loop fuel ratio desired. It is again read with throttle position percentage by RPM. This is the final fuel ratio you wish to arrive at in open loop. The computer provides a way to get there with blending and delay triggers, shown next.

Power Mode - Blend Delay
This is an arbitrary factory timer to complete the blending of open loop to closed loop fueling.

Power Mode - Enable Delay
This is an arbitrary counter for which to enable the blending and begin coming out of closed loop.

Power Mode - Throttle Enable (MT)
This is a 16 cell single column reference table for when to enable open loop on a manual trans. I hit open loop between 15% and 5% throttle. For purposes of my own build, I need to be able to hit open loop rather quickly at low throttle percentages because of how much air my motor gobbles up. 20% throttle will slap the rev limiter with my Fuji Factory twin throttle manifold.

Power Mode - Throttle Enable (AT)
This is a 16 cell single column reference table for when to enable open loop on an automatic trans.




Spark Timing
This tab is for adjusting available spark tables and parameters

Base Spark (MT)
This is a 16x16 reference table for ignition spark advance for manual transmission cars, measured in BTDC. You can enter negative values where needed. There is no open loop adjustment, but there is a learned spark table where you can let it add as much timing as you feel safe doing.

Base Spark (AT)
This is a 16x16 reference table for ignition spark advance for automatic transmission cars, measured in BTDC. You can enter negative values where needed. There is no open loop adjustment, but there is a learned spark table where you can let it add as much timing as you feel safe doing.

Learned Spark (MT)
I play it safe with this table. Rather than using a lot of base timing and setting this table to negative values,
I set base timing conservatively and let the ECU add timing that it is comfortable with. Knock control is not a hard coded thing, and it does have some inherent adjustability behind the scenes. Best to leave that functionality as. No heroics here.

Learned Spark (AT)
Same as above, just for AT cars.

Base Spark - Traction control enabled
My early manual car doesn't have this. I've never messed with it.

Closed throttle spark
This is another one of those weird 16x3 tables. It reads by engine speed vs. ATrive, AT:Park/Neutral, and MT. I set my base spark to match this table to eliminate the afterfire on quick throttle inputs.

Closed Throttle Spark - Coolant Temperature Compensation
This is a 16 cell single column table allowing timing adjustment at closed throttle, based on coolant temperature.



Spark Timing - Knock Control
IAM initial starting value is hiding over here.



There's some usefulness here, but mostly not worth messing with. 2 tables were most useful for me.

Knock sensitivity
You can dial the knock sensor sensitivity up or down with this table. Higher values mean less sensitivity. Careful with this, as you can get more pinging and the ECU won't compensate for it. I turn it down a tad so the AVCS gear movement doesn't piss off the knock sensor, clacking a bit. Those of you with forged pistons that clack a little bit might need to adjust this.

Knock Sensitivity - Low Load compensation

This is a one-shot figure. Turn this figure up to turn down the sensitivity, just like in the above table. If you go the wrong way, you can get high voltage CEL codes because the ECU is panicking from all the noise at the sensor.


Idle Control

This section gets a little trick to explain. If you have a different intake manifold, deleted the air injection system, or run multiple throttles then these functions can be useful. After adjusting fueling for bigger injectors, you can fine tune the little things that cause stalling with these tables. These explanations are a little condensed just for readability.


Idle Speed Target MT
This is a 16x4 mapping table reading by Coolant temperature and Coast, Cold, Stop, and Drive. You can adjust your desired idle speed target here under those 4 driving conditions, by coolant temperature. It's a little weird to read, but again that is how you have to think when cracking the factory ECU. Someone else wrote the rules.

I have a higher idling combination to begin with, having multiple throttles. This lets me set my higher base idle target. The IAC valve operates in steps and is not currently adjustable in the software. This at least puts it in the right ballpark, eliminating CELs and further taming the driveability.

Idle Speed Target AT
This is a 16x4 mapping table reading by Coolant temperature and Coast, Cold, Stop, and Drive. You can adjust your desired idle speed target here under those 4 driving conditions, by coolant temperature. It adjusts by the same parameters, but your stall speed or a manual shifter gate might mess with it, IMO.



Idle Speed Target minimums
These 5 tables are best for adjusting low load idle targets for A/C and power steering. A dry sump would be a little more load, but by that point I hope you're running a stand-alone ECU. Removing A/C and P/S negates the need to adjust these.

Idle Spark Control
These 4 tables are useful for corrections to idle spark if needed. You can remove or add timing if idle gets too high or too low.

Idle Air tables
These are where the real meat is for keeping idle stable in a variety of driving instances. The above tables are targets. These tables are more of the actual adjustments for the IAC valve itself. Expect to spend some time fine tuning here if you've changed cams or the intake manifold.

Idle Air Base-This table is shown as a percentage of the IAC's flow. 20% of it's flow rate, 50% of it's flow rate, etc. It's important to get this table adjusted right, in line with your idle target.

Idle Air Engine Speed Compensation - WHEN the vehicle is moving, this 1x16 table kicks in. This will open the IAC a little more at given engine speeds. Don't try to radically ramp this up to add more air. I cheated here and it didn't work. Driveability was far too jerky, and you can actually kill the IAC from making it work too hard. I ramp mine steadily downward.

Idle Air Throttle Compensation - This table adds more IAC opening as you add more throttle. I tried to cheat here, too. It didn't work. More jerkiness. Ramp it steadily downward towards redline.

Idle Air Startup Compensation - This table can help aid with stalls after startup. You can add a fair bit of airflow here if you have to work the throttle a lot when cold to keep the engine running. Best to add airflow when cold. It's not really needed when warmed up. Bigger cams may need some adjustment here, FYI.

Idle Air Radiator Fan Compensation - This one cell adds a little bit of IAC flow percentage for when the fans come on. It basically counteracts increased load on the alternator. Don't get stupid with this figure.

Idle Air Trim Step tables - These are handy for stabilizing idle if it gets too high or too low. You can add some airflow when you need it and remove some when you don't.

Idle Fuel Cut on Error Speed Threshold - I turn this off to keep the ECU from killing fuel should the IAC functions go haywire. I haven't really needed it and just set it to zero to be safe.


Fuel Deceleration cut
This is new and I have not messed with it much at all. I'm thinking it can help further tame my idle with the a/c on. RPMs will drop a little too low sometimes. I'll update this later.


So, there you have it. This is everything the software can currently do. I'm not sure how much more power there really is left on the table. The advantage is being able to wrangle the factory ECU functions. This isn't as powerful as a standalone, but it beats the hell out of piggybacks for later model cars.

Last edited by ImprezaRSC; 03-27-2018 at 03:43 PM..
ImprezaRSC is offline   Reply With Quote