I'm in the process of supercharging my Z and thought it would make for a nice example of tuning the car with romraider if and when I get to it.
I'm currently waiting for a warranty part from HKS and have been putting the car together enough that it can be driven as NA in the meantime. I've been looking into the ECU side trying to learn what is necessary for accomplishing this without blowing the engine to smithereens and there are still a host of things I'm not completely clear upon and if anyone is willing to help me out it would be much appreciated!
I intend to update this thread with any future issues/challenges/solutions so hopefully at the end it would serve as a useful reference to others.
Setup:
- DW300 340lph fuel pump
- DW600 injectors
-- Flow rates: 654, 654, 660, 660, 666, 672 @ 3 bar (Measured)
-- Flow rates: 708, 708, 714, 714, 721, 727 @ 3.5 bar
- HKS supercharger kit with GTS8555 compressor
-- 120 mm pulley
-- No intake restrictor, limit throttle valve maximum opening via ECU instead
- Stock engine internals
- No fuel return
- External flexfuel system, so ECU should still think it is running gasoline, except timing trims if I only use E85
- External wideband o2 sensors, Innovate DLG-1
- CD415 ECU
- Modest power target (<400hp at the crank)
Tuning notes:
Injectors
- New size via scaling K-value
-- OEM flow rate: 320 @ 3.5 bar
-- ( old injector size / new injector size ) * old K-value = new K-value
-- ( 320 / 708 ) * 27 592 = 12 471
-- ( 320 / 708 ) = 0.4519774
- Scale Cylinder Filling Up Efficiency Scaler (mPT100)
-- Why does this need to be scaled, what does it effect?
-- Scale by multiplying with ( old / new injector size )
- Modify minimum injector pulse width
- Modify injector latency at 14 V
- ITAC goes from 0-100 in NA roms and 0-200 in FI roms. Does it need to be scaled to match FI roms? If so, how to do it properly and what does it effect?
Fueling
- Adjust target AFRs !!! This only sets what the ecu's goal is, does not guarantee it is hit !!!
- Fuel compensation maps (steady state, decel, accel) for main changes
-- transient (decel, accel) are used to compensate for the distance between MAF and combustion chamber. How sensitive is this, and does it need to be adjusted due to the HKS kit? The MAF location is not completely identical to factory intake, but is the change large enough to warrant changes?
Timing
- Ignition timing trim maps are probably enough?
Air flow
- Use MAF Table to calibrate air flow with steady state driving in open loop and partial load <= 60% engine load
-- Is it enough to set the target AFR to something besides 14.7 to force open loop, say 14.0?
- MAF factor for scaling signal in case voltage bottoms out
Throttle
- Disable DBW torque flag so pedal <-> throttle movement is 1:1
-- Personal preference, only reason to not do this is if I get cruise control to work at some point as this disables it
- What should be changed if one wants to limit maximum throttle valve opening?
-- Target Throttle Valve Opening Table?
Transmission
- Increase engine torque maps based on dyno results to increase line pressure and prevent clutch slipping and burning out clutch packs
Datalogging:
- Use romraider with openport 2.0 adapter for logging
-- Expose vITAC, vQH0, vMBTCAL, vTQH0AP & vKMRM RAM parameters
-- romraider should support innovate Wideband AFR logging
-- First test connection to ECU was a failure. Not sure why.
- Megalog HD viewer for post processing/data analytics
I've added the following definitions to CD415.xml and modified them in order to take the larger injectors into account. The car started right up but it's idling really rich, around 10.2 AFR so either I've missed something or my memory locations are not all correct. If anyone more knowledgeable than me would be kind enough to confirm whether all these are correct, it would be highly appreciated!
Code:
<table name="Cranking Base Fuel Schedule Table" storageaddress="0x9794"/>
<table name="Injector Magnification Reciprocal Number" storageaddress="0x6476"/>
<table name="Fuel Injector Latency Adder" storageaddress="0x5C31"/>
<table name="Fuel Injector Latency at 14V" storageaddress="0x6165"/>
<table name="Minimum Injector Pulse Width" storageaddress="0x64FC"/>
<table name="Cylinder Filling Up Efficiency Scaler" storageaddress="0x651A"/>
Changes to aforementioned tables
- K-value -> set to 12 471
- Cranking Base Fuel Schedule Table -> multiplied all values with k-value scaler (0.4519774)
- Injector Magnification Reciprocal Number -> unchanged
- Fuel Injector Latency Adder -> set to 0.15 ms/V
- Fuel Injector Latency at 14V -> Set to 1.3 ms
- Minimum Injector Pulse Width -> multiplied with k-value scaler => 0.44 ms
- Cylinder Filling Up Efficiency Scaler -> multiplied with k-value scaler => 8.76 ms