Jump to content

Config:Fuel: Difference between revisions

From epicEFI Wiki
Line 218: Line 218:
== Injector Advance Assisted Tuning ==
== Injector Advance Assisted Tuning ==


'''Enable'''
epicEFI firmware includes the '''Injector Advance Tuning Tool'''. This enables the optimization of the injector close angle (also called end-of-injection) by offsetting it on a schedule. This enables you to test out the injection end angle by listening how the engine runs.


Let's say the injector needs to close at 90 degrees crankshaft angle and the tool is enabled and configured for -10 and +10 degrees. The injection end-of-injection will be changed by each step each number of cycles from 80 to 100 degrees.
==== Enable ====
Enable Injector Advance Tuning Assist
Enable Injector Advance Tuning Assist


'''Degrees per step'''
==== Degrees per step ====
How many degrees to increment each scheduled event.


Degrees per step
==== Cycles per step ====
 
How many crankshaft cycles occur per step.
'''Cycles per step'''
 
Cycles per step
 
'''Min RPM'''


==== Min RPM ====
Enable above this RPM
Enable above this RPM


'''Max RPM'''
==== Max RPM ====
 
Disable above this RPM
Disable above this RPM


'''Start Retard (deg)'''
==== Start Retard (deg) ====
 
Start injector advance offset
Start injector advance offset


'''End Retard (deg)'''
==== End Retard (deg) ====
 
End injector advance offset
End injector advance offset


== Fuel trim cyl 1 ==
== Fuel trim cyl x ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 2 ==


~~PLACEHOLDER~~
This is the fuel trim per-cylinder.
 
== Fuel trim cyl 3 ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 4 ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 5 ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 6 ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 7 ==
 
~~PLACEHOLDER~~
 
== Fuel trim cyl 8 ==
 
~~PLACEHOLDER~~


= Staged injection =
= Staged injection =
Line 283: Line 252:
== Staged Injector Settings ==
== Staged Injector Settings ==


'''Staged Injection Enable'''
==== Staged Injection Enable ====
 
This is the master switch for staged injection.
~~PLACEHOLDER~~
 
'''Secondary injector flow'''


This is your injector flow at the fuel pressure used in the vehicle
==== Secondary injector flow ====
See units setting below
The flow rate of the secondary injectors.


'''Secondary injector flow compensation mode'''
See [[Config:Fuel#Injector flow|Injector flow]]


None = I have a MAP-referenced fuel pressure regulator
==== Secondary injector flow compensation mode ====
Fixed rail pressure = I have an atmosphere-referenced fuel pressure regulator (returnless, typically)
The flow compensation mode.
Sensed rail pressure = I have a fuel pressure sensor


'''Secondary injector reference pressure'''
See [[Config:Fuel#Injector flow compensation mode|Injector flow compensation mode]]


This is the pressure at which your injector flow is known.
==== Secondary injector reference pressure ====
For example if your injectors flow 400cc/min at 3.5 bar, enter 350kpa here.
The secondary injectors reference pressure.


'''Use small pulsewidth correction lookup curve'''
See [[Config:Fuel#Injector reference pressure|Injector reference pressure]]


Use small pulsewidth lookup for staged injection
==== Use small pulsewidth correction lookup curve ====
See [[Config:Fuel#Use small pulsewidth correction lookup curve|Use small pulsewidth correction lookup curve]]


== Staged Injector Deadtimes ==
== Staged Injector Deadtimes ==
This is the deadtime of the secondary injectors.


~~PLACEHOLDER~~
See [[Config:Fuel#Injector Deadtimes (BatV vs fuel pressure)|Injector Deadtimes (BatV vs fuel pressure)]]


== Staged Injector outputs ==
== Staged Injector outputs ==


'''Injection Stage 2 Output 1'''
==== Injection Stage 2 Output x ====
These are the physical output pins for the secondary injection stage.


injectionPinsStage2 1
== Staged Injector % table ==
?highlight=class~outputs


'''Injection Stage 2 Output 2'''
~~PLACEHOLDER~~


injectionPinsStage2 2
== Staged Injector Small Pulsewidth Table ==
?highlight=class~outputs


'''Injection Stage 2 Output 3'''
This is the small pulsewidth correction for the secondary injection stage.


injectionPinsStage2 3
See [[Config:Fuel#Primary Injector Small Pulsewidth Table|Primary Injector Small Pulsewidth Table]]
?highlight=class~outputs


'''Injection Stage 2 Output 4'''
= Target AFR =
This is the target lambda/air fuel ratio that is used for corrections, [[Config:Fuel#Long Term Fuel Trim|LTFT]], [[Config:Fuel#Short Term Fuel Trim|STFT]] and fuel calculations.


injectionPinsStage2 4
= Target AFR warmup enrichment (CLT) =
?highlight=class~outputs
This is the AFR ratio target correction in regards to warmup enrichment.


'''Injection Stage 2 Output 5'''
1.0 means no correction.


injectionPinsStage2 5
1.2 means 20% richer fuel target
?highlight=class~outputs


'''Injection Stage 2 Output 6'''
0.8 means 20% leaner fuel target


injectionPinsStage2 6
= Manual warmup enrichment (CLT) =
?highlight=class~outputs
This is the manual warmup enrichment in regards to coolant temperature. This is a global multiplier.


'''Injection Stage 2 Output 7'''
1.0 means no correction.


injectionPinsStage2 7
1.2 means 20% richer mixture
?highlight=class~outputs


'''Injection Stage 2 Output 8'''
0.8 means 20% leaner mixture


injectionPinsStage2 8
= Intake air temp correction (IAT) =
?highlight=class~outputs
This is the intake air temp correction curve. This is a global multiplier.
 
== Staged Injector % table ==
 
~~PLACEHOLDER~~


== Staged Injector Small Pulsewidth Table ==
1.0 means no correction.


~~PLACEHOLDER~~
1.2 means 20% richer mixture


= Target AFR =
0.8 means 20% leaner mixture
 
= Target AFR warmup enrichment (CLT) =
 
= Manual warmup enrichment (CLT) =
 
= Intake air temp correction (IAT) =
~~PLACEHOLDER~~


= Deceleration fuel cutoff (DFCO) =
= Deceleration fuel cutoff (DFCO) =
'''Enable Coasting Fuel Cutoff'''


==== Enable Coasting Fuel Cutoff ====
This setting disables fuel injection while the engine is in overrun, this is useful as a fuel saving measure and to prevent back firing.
This setting disables fuel injection while the engine is in overrun, this is useful as a fuel saving measure and to prevent back firing.


'''Disable fuel cut on clutch'''
==== Disable fuel cut on clutch ====
 
Inhibits DFCO from activating when the clutch is pressed. This helps prevent transient knock during shifts.
True: Inhibits DFCO from activating when the clutch is pressed. This helps prevent transient knock during shifts
False: Do not take clutch state into account.
 
'''No cut below CLT'''


==== No cut below CLT ====
Fuel cutoff is disabled when the engine is cold.
Fuel cutoff is disabled when the engine is cold.


'''RPM cut fuel above'''
==== RPM cut fuel above ====
 
This sets the RPM above which fuel cut is active.
This sets the RPM above which fuel cut is active.


'''RPM restore fuel below'''
==== RPM restore fuel below ====
 
This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle
This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle


'''Vehicle speed cut above'''
==== Vehicle speed cut above ====
 
Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.
Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.


'''Vehicle speed restore below'''
==== Vehicle speed restore below ====
 
Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.
Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.


'''Cut fuel below TPS'''
==== Cut fuel below TPS ====
 
Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position.
Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position.


'''Cut fuel below MAP mode'''
==== Cut fuel below MAP mode ====


Fixed: MAP threshold cut fuel when conditions are met
* '''Fixed''' - MAP threshold cut fuel when conditions are met
Table: Use a curve to vary the MAP threshold based on engine RPM
* '''Table -''' Use a curve to vary the MAP threshold based on engine RPM
 
'''Cut fuel below MAP'''


==== Cut fuel below MAP ====
MAP value above which fuel injection is re-enabled.
MAP value above which fuel injection is re-enabled.


'''Fuel cut delay'''
==== Fuel cut delay ====
 
Delay before cutting fuel. Set to 0 to cut immediately with no delay. May cause rumbles and pops out of your exhaust...
Delay before cutting fuel. Set to 0 to cut immediately with no delay. May cause rumbles and pops out of your exhaust...


'''Inhibit closed loop fuel after cut'''
==== Inhibit closed loop fuel after cut ====
 
Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.
Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.


Line 429: Line 371:
~~PLACEHOLDER~~
~~PLACEHOLDER~~


'''Ignition retard during cut'''
==== Ignition retard during cut ====
 
Retard timing by this amount during DFCO. Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.
Retard timing by this amount during DFCO. Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.


'''After cut timing ramp-in time'''
==== After cut timing ramp-in time ====
 
Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.
Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.


= DFCO MAP to RPM threshold =
= DFCO MAP to RPM threshold =
~~PLACEHOLDER~~
DFCO will activate when operating below this curve. Used to allow a higher threshold at low RPM where less vaccuum is generated.
 
= Long Term Fuel Trim =
= Long Term Fuel Trim =
This configures the Long Term Fuel Trim. This is used to trim fuel over long periods of time, such as injector aging or similar factors.
This configures the Long Term Fuel Trim. This is used to trim fuel over long periods of time, such as injector aging or similar factors.
{{Info|To enable long term fuel trims, short term fuel trims should be configured and active.}}


== Long term fuel trims ==
== Long term fuel trims ==
Line 449: Line 390:
=== Long term fuel trim ===
=== Long term fuel trim ===


'''Gathering Data'''
==== Gathering Data ====
 
Enables lambda sensor long term fuel corrections data gathering into LTFT trim tables
Enables lambda sensor long term fuel corrections data gathering into LTFT trim tables
{{Info|To enable long term fuel trims, short term fuel trims should be configured and active.}}


'''Time const'''
==== Time const ====
Commonly referred as Integral gain.


Commonly referred as Integral gain.
Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 30.0 means it will try to make most of the correction within 30 seconds, and a value of 300.0 will try to correct within 5 minutes.
Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 30.0 means it will try to make most of the correction within 30 seconds, and a value of 300.0 will try to correct within 5 minutes.
Lower values makes the correction more sensitive, higher values slow the correction down.
Lower values makes the correction more sensitive, higher values slow the correction down.


'''Max add'''
==== Max add ====
 
Maximum % that the long term fuel trim can add
Maximum % that the long term fuel trim can add


'''Max remove'''
==== Max remove ====
 
Maximum % that the long term fuel trim can remove
Maximum % that the long term fuel trim can remove


'''Learning deadband'''
==== Learning deadband ====
 
When close to correct AFR, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.
When close to correct AFR, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.


'''Apply Correction'''
==== Apply Correction ====
Apply LTFT trims into fuel calculation on top of VE table.


Apply LTFT trims into fuel calculation on top of VE table.
We do not adjust VE table automatically, please click 'Apply to VE' if you want to adjust your VE tables and reset trims.
We do not adjust VE table automatically, please click 'Apply to VE' if you want to adjust your VE tables and reset trims.


'''Enable Autosave LTFT'''
==== Enable Autosave LTFT ====
 
Automatically save Long Term Fuel trim to backup
automatically save Long Term Fuel trim to backup


'''Enable Writes While Engine runs (experimental) every 10 minutes'''
==== Enable Writes While Engine runs (experimental) every 10 minutes ====
This enables configuration writes every 10 minutes while the engine runs.
{{Warning|This feature is experimental and could result in tune loss on the ECU. Use with caution.}}


~~PLACEHOLDER~~
==== Refresh TS with live write every 10 minutes ====
Refreshes TunerStudio with the live write.
{{Warning|This feature is experimental and could result in tune loss on the ECU. Use with caution.}}


'''Refresh TS with live write every 10 minutes'''
==== Flash Write delay after engine off - seconds ====
 
Delay flash write after engine stop for this long.
~~PLACEHOLDER~~
 
'''Flash Write delay after engine off - seconds'''
 
Delay flash write after engine stop for this long
 
=== Commands ===
 
=== Status ===
 
=== Trim bank 2 ===


== Long Term Fuel Trim Bank 1 - BACKUP ==
== Long Term Fuel Trim Bank 1 - BACKUP ==
PLACEHOLDER
This is the bank 1 long term fuel trim backup. On ECU boot, this is copied into the active table.


== Long Term Fuel Trim Bank 2 - BACKUP ==
== Long Term Fuel Trim Bank 2 - BACKUP ==
PLACEHOLDER
This is the bank 1 long term fuel trim backup. On ECU boot, this is copied into the active table.


= Short Term Fuel Trim =
= Short Term Fuel Trim =
Line 508: Line 439:


== Short term fuel trim Setup ==
== Short term fuel trim Setup ==
=== Bank 1 ===
=== Input/Learning state ===
=== Output correction ===


=== Short term fuel trim ===
=== Short term fuel trim ===


'''Short term fuel trim'''
==== Short term fuel trim ====
 
Enables lambda sensor closed loop feedback for fuelling.
Enables lambda sensor closed loop feedback for fuelling.


'''CAN BOX AFR Trim range ADD MAX (+) (lambda)'''
==== CAN BOX AFR Trim range ADD MAX (+) (lambda) ====
 
maximum afr trim
maximum afr trim


'''CAN BOX AFR Trim range REMOVE MAX(-)(lambda)'''
==== CAN BOX AFR Trim range REMOVE MAX(-)(lambda) ====
 
minimum afr trim
minimum afr trim


'''Logged Tuned VE correction multiplier'''
==== Logged Tuned VE correction multiplier ====
 
Multiplier for corrections applied to tuned VE that's logged
multiplier for corrections applied to tuned ve that's logged
 
'''Startup delay'''


==== Startup delay ====
Delay after starting the engine before beginning closed loop correction.
Delay after starting the engine before beginning closed loop correction.


'''After DFCO delay'''
==== After DFCO delay ====
 
Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.
Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.


'''After DFCO pause or disable STFT'''
==== After DFCO pause or disable STFT ====
This eliminates the interference between [[Config:Fuel#Deceleration fuel cutoff (DFCO)|DFCO]] and SFTF.


true=pause, false=disable STFT after DFCO is active
* '''True''' - Pauses the short term fuel trim
 
* '''False''' - Disable STFT after DFCO is active 
'''Minimum CLT for correction'''


==== Minimum CLT for correction ====
Below this temperature, correction is disabled.
Below this temperature, correction is disabled.


'''Use AFR (Gasoline scale) or Lambda for limits'''
==== Use AFR (Gasoline scale) or Lambda for limits ====
 
Use Lambda or AFR for limits
Use Lambda or AFR for limits


'''Minimum AFR for correction (Gasoline scale)'''
==== Minimum AFR for correction (Gasoline scale) ====
 
Below this AFR, correction is paused
Below this AFR, correction is paused
This is corrected for current flex fuel %


'''Maximum AFR for correction (Gasoline scale)'''
This is corrected for current flex fuel percentage.


==== Maximum AFR for correction (Gasoline scale) ====
Above this AFR, correction is paused
Above this AFR, correction is paused
This is corrected for current flex fuel %


'''Minimum Lambda for correction'''
This is corrected for current flex fuel percentage.


==== Minimum Lambda for correction ====
Below this Lambda, correction is paused
Below this Lambda, correction is paused
This is corrected for current flex fuel %


'''Maximum Lambda for correction'''
This is corrected for current flex fuel percentage.


==== Maximum Lambda for correction ====
Above this Lambda, correction is paused
Above this Lambda, correction is paused
This is corrected for current flex fuel %


'''Adjustment deadband_rich - MAX RICH %'''
This is corrected for current flex fuel percentage


==== Adjustment deadband_rich - MAX RICH % ====
When close to correct AFR from rich side, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.
When close to correct AFR from rich side, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.


'''Adjustment deadband_lean - MAX LEAN %'''
==== Adjustment deadband_lean - MAX LEAN % ====
 
When close to correct AFR from lean side , pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.
When close to correct AFR from lean side , pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.


'''Ignore error magnitude (error is always 0.1% - simple mode)'''
==== Ignore error magnitude (error is always 0.1% - simple mode) ====
 
If enabled, adjust at a constant rate instead of a rate proportional to the current lambda error. This mode may be easier to tune, and more tolerant of sensor noise.
If enabled, adjust at a constant rate instead of a rate proportional to the current lambda error. This mode may be easier to tune, and more tolerant of sensor noise.
=== Bank 2 ===
=== Input/Learning state ===
=== Output correction ===


== Short term fuel trim Time Constant (I) ==
== Short term fuel trim Time Constant (I) ==


~~PLACEHOLDER~~
This is the integral component of the short term fuel trim.


== Short term fuel trim Add Authority (+) ==
== Short term fuel trim Add Authority (+) ==
Line 605: Line 515:
= VE Table Switch =
= VE Table Switch =


== VE Table Switch 1 Settings ==
== VE Table Switch x Settings ==


'''VE Table Switch 1 Pin'''
==== VE Table Switch x Pin ====
Full table switch or blend pin.


Full table switch or blend pin
==== VE Table Switch x Pin Mode ====
?highlight=class~switch_inputs
This is the pin mode for the switch input pin.
 
'''VE Table Switch 1 Pin Mode'''
 
table switch pin mode
 
'''VE Table Switch 1 Parameter'''
 
~~PLACEHOLDER~~
 
'''VE Table Switch 1 Blend Mode'''
 
Blend mode adds or multiplies the switch table with base, default is switch.
 
'''VE Table Switch 1 Y axis override'''
 
~~PLACEHOLDER~~
 
== VE Table Switch 1 ==
 
~~PLACEHOLDER~~
 
== VE Table Switch 2 Settings ==
 
'''VE Table Switch 2 Pin'''
 
Full table switch or blend pin
?highlight=class~switch_inputs


'''VE Table Switch 2 Pin Mode'''
See [[Hardware:ECU input mode selection|ECU input mode selection]].


table switch pin mode
==== VE Table Switch x Parameter ====
 
This defines the table switch parameter.
'''VE Table Switch 2 Parameter'''
 
~~PLACEHOLDER~~
 
'''VE Table Switch 2 Blend Mode'''


==== VE Table Switch x Blend Mode ====
Blend mode adds or multiplies the switch table with base, default is switch.
Blend mode adds or multiplies the switch table with base, default is switch.


'''VE Table Switch 2 Y axis override'''
==== VE Table Switch x Y axis override ====
 
This overrides the Y axis of the table switch table.
~~PLACEHOLDER~~


== VE Table Switch 2 ==
== VE Table Switch x ==


~~PLACEHOLDER~~
This is the table which is used after switching/blending.


= Target AFR Table Switch =
= Target AFR Table Switch =
Line 663: Line 542:
== Target AFR Table Switch 1 Settings ==
== Target AFR Table Switch 1 Settings ==


'''Target AFR Table Switch 1 Pin'''
==== Target AFR Table Switch 1 Pin ====
 
Full table switch or blend pin
Full table switch or blend pin
?highlight=class~switch_inputs
'''Target AFR Table Switch 1 Pin Mode'''
table switch pin mode
'''Target AFR Table Switch 1 Parameter'''


~~PLACEHOLDER~~
==== Target AFR Table Switch 1 Pin Mode ====
See [[Hardware:ECU input mode selection|ECU input mode selection]].


'''Target AFR Table Switch 1 Blend Mode'''
==== Target AFR Table Switch 1 Parameter ====
This defines the table switch parameter.


==== Target AFR Table Switch 1 Blend Mode ====
Blend mode adds or multiplies the switch table with base, default is switch.
Blend mode adds or multiplies the switch table with base, default is switch.


'''Target AFR Table Switch 1 Y axis override'''
==== Target AFR Table Switch 1 Y axis override ====
 
This overrides the Y axis of the table switch table.
~~PLACEHOLDER~~


== Target AFR Table Switch 1 ==
== Target AFR Table Switch 1 ==


~~PLACEHOLDER~~
This is the table which is used after switching/blending.


= Fuel Corrections =
= Fuel Corrections =

Revision as of 19:10, 1 February 2026

Fuel menu

Fuel

This menu is used for any fuel-related configuration and tuning.

This menu enables the configuration of:

  • Physical hardware - output pins
  • VE tables
  • Fuel trims (short and long)
  • Lambda control (AFR correction)
  • IAT/CLT/Other corrections
  • Table switch
  • And others...

You can find the individual options below.

VE Table

This is the main VE table used for fuel calculations.

Override VE table load axis

Override the Y axis (load) value used for the VE table.

This is for advanced users only. If you aren't sure you need this, you probably don't need this.

Fuel strategy

See Fuel strategy.

Injector setup

This menu enables the configuration of the physical injector layout and output configuration

Injection configuration

Injection

Injection Enabled

Fuel Injection is enabled

Disable Fuel Pump

Disable fuel pump

Disable injector prime pulse

Do not prime injectors

Mode

This configures the injection model:

  • Simultaneous - All injectors are opened at the same time, with the fuel load being divided over the whole 720 degree cycle (a 4 cylinder engine will squirt 4 times over 720 degrees).
  • Sequential - All injectors are opened at their commanded angle and the cycle is tracked over 720 degrees. Requires Cam Sensor or phase guessing to function properly.
  • Batch - Injectors are opened at their commanded angle along with their wasted pair. The same principle as wasted spark.
  • Single Point - The same as simultaneous but with a single channel, with fuel calculations to suit.
Injectors are always wired to their respective cylinders and epicEFI handles the firing order and injector opening. Batch wiring is only needed when the ECU does not have enough outputs to wire single injectors to a single channel.

Alpha-N uses IAT density correction

When set to true, it enables intake air temperature-based corrections for Alpha-N tuning strategies.

Override VE table load axis

Override the Y axis (load) value used for the VE table.

This is for advanced users only. If you aren't sure you need this, you probably don't need this.

Override AFR table load axis

Override the Y axis (load) value used for the AFR table.

This is for advanced users only. If you aren't sure you need this, you probably don't need this.

Injection phase control mode

Defines when fuel is injected relative to the intake valve opening. Options include End of Injection or other timing references.

Injector Settings

Injector flow

This is your injector flow at the fuel pressure used in the vehicle.

See units setting below.

Injector flow units

Select whether to configure injector flow in volumetric flow (default, cc/min) or mass flow (g/s).

Fuel rail pressure sensor

Select which fuel pressure sensor measures the pressure of the fuel at your injectors.

Injector flow compensation mode

This is the injector flow compensation mode.

  • Manifold Referenced Pressure Regulator - The car is equipped with a manifold-pressure referenced pressure regulator.
  • Returnless fuel system - The car is equipped with a returnless fuel system (regulator in tank or dead-head system).
  • Sensed fuel pressure - The car is equipped with a fuel pressure sensor.

Injector reference pressure

This is the pressure at which your injector flow is known.

For example if your injectors flow 400cc/min at 3.5 bar, enter 350 here.

This is gauge pressure reference to atmospheric.

Use small pulsewidth correction lookup curve

Use the small pulsewidth correction table to correct small injector pulse width behaviour.

This feature should only be needed if running very big injectors (>1500cc) and you have idle fueling problems, or you want to limit the minimum pulsewidth. Do not use otherwise.

Fuel characteristics

Gasoline (E0) Stoichiometric ratio

Stoichiometric ratio for your primary fuel. When Flex Fuel is enabled, this value is used when the Flex Fuel sensor indicates E0.

E0 = 14.7

E10 = 14.1

E85 = 9.9

E100 = 9.0

Ethanol (E100) Stoichiometric ratio

Stoichiometric ratio for your secondary fuel. This value is used when the Flex Fuel sensor indicates E100, typically 9.0

Current Ethanol Content

Some pump gas has ethanol in it. Please adjust this to match what you fill up with.

Use this as default ethanol content for fueling when no flex sensor present.

This will scale Air/Fuel ratios and fueling accordingly.

Global Fuel Correction (1=100%)

This is the global fuel correction applied to the final pulse width.

Please note that this is a rudimentary correction and should be used only for troubleshooting and diagnostics.

Fuel flow rate smoothed alpha (display only)

This controls the logged "fuel flow rate" and how much smoothing is applied to that logged value. This has no actual impact on fuelling and the fuelling model.

Use absolute fuel pressure for dead time calculation

This changes the deadtime calculation to use absolute pressure. Otherwise, differential pressure is used.

Injection hardware

Injector Outputs

Injection Output x

This is the physical output pin for the injector output for cylinder x.

Injector Enable/Disable

Injector x disable

This menu is used to disable individual injector outputs for troubleshooting.

Cylinder Banks - Closed Loop Feedback

Cylinder x

Select which fuel correction bank this cylinder belongs to. Group cylinders that share the same O2 sensor 1.

Injector Deadtimes (BatV vs fuel pressure)

This table defines the Injector Dead Time. The dead time is the time in milliseconds that it takes for the injector to open and start spraying fuel. It is pressure and voltage dependant.

This table configures the relation of pressure/voltage and deadtime in ms.

Injector Timing Advance

This is injection angle in relation to TDC ignition stroke. Values are ATDC. i.e. If ignition timing is 14 advance, this value has to be -14 to match that event. -400 in this table would put injection well into the intake stroke. 50 here is 50 degrees after TDC compression stroke

Override the Y axis (load) value used for the injector advance table.

Override the Y axis (load) value used for the injector advance table.

Please note that this is a rudimentary correction and should be used only for troubleshooting and diagnostics.

Primary Injector Small Pulsewidth Table

This is the injector small pulsewidth correction. This table is used to re-map a small pulsewidth to a bigger one or vice-versa.

This is used to improve idle behaviour and other transient situations.

This feature should only be needed if running very big injectors (>1500cc) and you have idle fueling problems, or you want to limit the minimum pulsewidth. Do not use otherwise.

Primary Injector Small Pulsewth vs BatV multiplier

This is the small pulsewidth correction in relation to battery voltage. Small pulse width behavour can change with battery voltage, and this can be used to correct that behaviour.

This feature should only be needed if running very big injectors (>1500cc) and you have idle fueling problems, or you want to limit the minimum pulsewidth. Do not use otherwise.

Injector deadtime assisted tuning

epicEFI firmware includes an Injector Deadtime Tuning Tool that works by alternating between sequential injection and batch injection on a schedule.

This method works because switching between these two modes changes the number of injection events per engine cycle. In batch mode, the injector fires twice per cycle, while in sequential mode it fires once per cycle.

In both cases, the total amount of fuel delivered per cycle remains the same. The difference is that in batch mode the fuel is split into two injection events, whereas in sequential mode it is delivered in a single event. Since injector deadtime is added to every injection event, the total added deadtime per cycle differs between the two modes.

If the deadtime values are not accurate, switching between batch and sequential injection will result in a measurable change in AFR at the exhaust.

The epicEFI Injector Deadtime Tuning Assist automatically switches between sequential and batch modes on a set schedule, allowing you to log the AFR difference. You can then adjust the deadtime table until no AFR change is observed between the two modes, indicating that the injected fuel quantity is consistent in both cases.

It’s advisable to disable short-term fuel trims and to run this test with the engine fully warmed up.

At first, the engine may struggle to stay running when the mode switch occurs. This is expected if your deadtime values are off, since those inaccuracies are usually already “hidden” in the VE table.

If the engine goes too lean and won’t stay running, you can use the Global Fuel Correction to richen the mixture enough to keep it alive.

The Global Fuel Correction does not affect injector deadtime. It simply scales the overall fuel delivery, allowing you to keep the engine running while you dial in the correct deadtime values.

Enable deadtime tuning cycle

This is the master switch for the tool.

Use sequential

Enable sequential fuel mode into the scheduled switching.

Use batch

Enable batch fuel mode into the scheduled switching.

Use simultaneous

Enable simultaneous fuel mode into the scheduled switching.

Cycles

Switch fuel strategy every this many cycles of the engine.

Min RPM

Minimum RPM for the tool to run.

Injector Advance Assisted Tuning

epicEFI firmware includes the Injector Advance Tuning Tool. This enables the optimization of the injector close angle (also called end-of-injection) by offsetting it on a schedule. This enables you to test out the injection end angle by listening how the engine runs.

Let's say the injector needs to close at 90 degrees crankshaft angle and the tool is enabled and configured for -10 and +10 degrees. The injection end-of-injection will be changed by each step each number of cycles from 80 to 100 degrees.

Enable

Enable Injector Advance Tuning Assist

Degrees per step

How many degrees to increment each scheduled event.

Cycles per step

How many crankshaft cycles occur per step.

Min RPM

Enable above this RPM

Max RPM

Disable above this RPM

Start Retard (deg)

Start injector advance offset

End Retard (deg)

End injector advance offset

Fuel trim cyl x

This is the fuel trim per-cylinder.

Staged injection

This is the configuration for Staged Injection. Used for staging of injectors (primary-secondary) and the associated corrections.

Staged Injector Settings

Staged Injection Enable

This is the master switch for staged injection.

Secondary injector flow

The flow rate of the secondary injectors.

See Injector flow

Secondary injector flow compensation mode

The flow compensation mode.

See Injector flow compensation mode

Secondary injector reference pressure

The secondary injectors reference pressure.

See Injector reference pressure

Use small pulsewidth correction lookup curve

See Use small pulsewidth correction lookup curve

Staged Injector Deadtimes

This is the deadtime of the secondary injectors.

See Injector Deadtimes (BatV vs fuel pressure)

Staged Injector outputs

Injection Stage 2 Output x

These are the physical output pins for the secondary injection stage.

Staged Injector % table

~~PLACEHOLDER~~

Staged Injector Small Pulsewidth Table

This is the small pulsewidth correction for the secondary injection stage.

See Primary Injector Small Pulsewidth Table

Target AFR

This is the target lambda/air fuel ratio that is used for corrections, LTFT, STFT and fuel calculations.

Target AFR warmup enrichment (CLT)

This is the AFR ratio target correction in regards to warmup enrichment.

1.0 means no correction.

1.2 means 20% richer fuel target

0.8 means 20% leaner fuel target

Manual warmup enrichment (CLT)

This is the manual warmup enrichment in regards to coolant temperature. This is a global multiplier.

1.0 means no correction.

1.2 means 20% richer mixture

0.8 means 20% leaner mixture

Intake air temp correction (IAT)

This is the intake air temp correction curve. This is a global multiplier.

1.0 means no correction.

1.2 means 20% richer mixture

0.8 means 20% leaner mixture

Deceleration fuel cutoff (DFCO)

Enable Coasting Fuel Cutoff

This setting disables fuel injection while the engine is in overrun, this is useful as a fuel saving measure and to prevent back firing.

Disable fuel cut on clutch

Inhibits DFCO from activating when the clutch is pressed. This helps prevent transient knock during shifts.

No cut below CLT

Fuel cutoff is disabled when the engine is cold.

RPM cut fuel above

This sets the RPM above which fuel cut is active.

RPM restore fuel below

This sets the RPM below which fuel cut is deactivated, this prevents jerking or issues transitioning to idle

Vehicle speed cut above

Above this speed, allow DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.

Vehicle speed restore below

Below this speed, disable DFCO. Use this to prevent jerkiness from fuel enable/disable in low gears.

Cut fuel below TPS

Throttle position below which fuel cut is active. With an electronic throttle enabled, this checks against pedal position.

Cut fuel below MAP mode

  • Fixed - MAP threshold cut fuel when conditions are met
  • Table - Use a curve to vary the MAP threshold based on engine RPM

Cut fuel below MAP

MAP value above which fuel injection is re-enabled.

Fuel cut delay

Delay before cutting fuel. Set to 0 to cut immediately with no delay. May cause rumbles and pops out of your exhaust...

Inhibit closed loop fuel after cut

Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.

Use DFCO exit enrichment

~~PLACEHOLDER~~

DFCO exit enrichment max RPM

~~PLACEHOLDER~~

Ignition retard during cut

Retard timing by this amount during DFCO. Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.

After cut timing ramp-in time

Smooths the transition back from fuel cut. After fuel is restored, ramp timing back in over the period specified.

DFCO MAP to RPM threshold

DFCO will activate when operating below this curve. Used to allow a higher threshold at low RPM where less vaccuum is generated.

Long Term Fuel Trim

This configures the Long Term Fuel Trim. This is used to trim fuel over long periods of time, such as injector aging or similar factors.

To enable long term fuel trims, short term fuel trims should be configured and active.

Long term fuel trims

Trim bank 1

Long term fuel trim

Gathering Data

Enables lambda sensor long term fuel corrections data gathering into LTFT trim tables

To enable long term fuel trims, short term fuel trims should be configured and active.

Time const

Commonly referred as Integral gain.

Time constant for correction while in this cell: this sets responsiveness of the closed loop correction. A value of 30.0 means it will try to make most of the correction within 30 seconds, and a value of 300.0 will try to correct within 5 minutes.

Lower values makes the correction more sensitive, higher values slow the correction down.

Max add

Maximum % that the long term fuel trim can add

Max remove

Maximum % that the long term fuel trim can remove

Learning deadband

When close to correct AFR, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.

Apply Correction

Apply LTFT trims into fuel calculation on top of VE table.

We do not adjust VE table automatically, please click 'Apply to VE' if you want to adjust your VE tables and reset trims.

Enable Autosave LTFT

Automatically save Long Term Fuel trim to backup

Enable Writes While Engine runs (experimental) every 10 minutes

This enables configuration writes every 10 minutes while the engine runs.

This feature is experimental and could result in tune loss on the ECU. Use with caution.

Refresh TS with live write every 10 minutes

Refreshes TunerStudio with the live write.

This feature is experimental and could result in tune loss on the ECU. Use with caution.

Flash Write delay after engine off - seconds

Delay flash write after engine stop for this long.

Long Term Fuel Trim Bank 1 - BACKUP

This is the bank 1 long term fuel trim backup. On ECU boot, this is copied into the active table.

Long Term Fuel Trim Bank 2 - BACKUP

This is the bank 1 long term fuel trim backup. On ECU boot, this is copied into the active table.

Short Term Fuel Trim

This is used to configure STFT. This trim is applied fast and used to correct the fuel in very short periods of time.

Short term fuel trim Setup

Short term fuel trim

Short term fuel trim

Enables lambda sensor closed loop feedback for fuelling.

CAN BOX AFR Trim range ADD MAX (+) (lambda)

maximum afr trim

CAN BOX AFR Trim range REMOVE MAX(-)(lambda)

minimum afr trim

Logged Tuned VE correction multiplier

Multiplier for corrections applied to tuned VE that's logged

Startup delay

Delay after starting the engine before beginning closed loop correction.

After DFCO delay

Pause closed loop fueling after deceleration fuel cut occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel cut.

After DFCO pause or disable STFT

This eliminates the interference between DFCO and SFTF.

  • True - Pauses the short term fuel trim
  • False - Disable STFT after DFCO is active

Minimum CLT for correction

Below this temperature, correction is disabled.

Use AFR (Gasoline scale) or Lambda for limits

Use Lambda or AFR for limits

Minimum AFR for correction (Gasoline scale)

Below this AFR, correction is paused

This is corrected for current flex fuel percentage.

Maximum AFR for correction (Gasoline scale)

Above this AFR, correction is paused

This is corrected for current flex fuel percentage.

Minimum Lambda for correction

Below this Lambda, correction is paused

This is corrected for current flex fuel percentage.

Maximum Lambda for correction

Above this Lambda, correction is paused

This is corrected for current flex fuel percentage

Adjustment deadband_rich - MAX RICH %

When close to correct AFR from rich side, pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.

Adjustment deadband_lean - MAX LEAN %

When close to correct AFR from lean side , pause correction. This can improve stability by not changing the adjustment if the error is extremely small, but is not required.

Ignore error magnitude (error is always 0.1% - simple mode)

If enabled, adjust at a constant rate instead of a rate proportional to the current lambda error. This mode may be easier to tune, and more tolerant of sensor noise.

Short term fuel trim Time Constant (I)

This is the integral component of the short term fuel trim.

Short term fuel trim Add Authority (+)

~~PLACEHOLDER~~

Short term fuel trim Remove Authority (-)

~~PLACEHOLDER~~

VE Table Switch

VE Table Switch x Settings

VE Table Switch x Pin

Full table switch or blend pin.

VE Table Switch x Pin Mode

This is the pin mode for the switch input pin.

See ECU input mode selection.

VE Table Switch x Parameter

This defines the table switch parameter.

VE Table Switch x Blend Mode

Blend mode adds or multiplies the switch table with base, default is switch.

VE Table Switch x Y axis override

This overrides the Y axis of the table switch table.

VE Table Switch x

This is the table which is used after switching/blending.

Target AFR Table Switch

Target AFR Table Switch 1 Settings

Target AFR Table Switch 1 Pin

Full table switch or blend pin

Target AFR Table Switch 1 Pin Mode

See ECU input mode selection.

Target AFR Table Switch 1 Parameter

This defines the table switch parameter.

Target AFR Table Switch 1 Blend Mode

Blend mode adds or multiplies the switch table with base, default is switch.

Target AFR Table Switch 1 Y axis override

This overrides the Y axis of the table switch table.

Target AFR Table Switch 1

This is the table which is used after switching/blending.

Fuel Corrections

Barometric pressure correction

~~PLACEHOLDER~~

Charge temperature estimation

Mode

~~PLACEHOLDER~~

Increase rate limit

Maximum allowed rate of increase allowed for the estimated charge temperature

Decrease rate limit

Maximum allowed rate of decrease allowed for the estimated charge temperature

RPM+TPS mode

Low RPM/Low TPS

~~PLACEHOLDER~~

Low RPM/High TPS

~~PLACEHOLDER~~

High RPM/Low TPS

~~PLACEHOLDER~~

High RPM/High TPS

~~PLACEHOLDER~~

Airflow interpolation mode

Low flow coefficient

Heat transfer coefficient at zero flow. 0 means the air charge is fully heated to the same temperature as CLT. 1 means the air charge gains no heat, and enters the cylinder at the temperature measured by IAT.

High flow coefficient

Heat transfer coefficient at high flow, as defined by "max air flow". 0 means the air charge is fully heated to the same temperature as CLT. 1 means the air charge gains no heat, and enters the cylinder at the temperature measured by IAT.

Max air flow

High flow point for heat transfer estimation. Set this to perhaps 50-75% of your maximum airflow at wide open throttle.

User Switchable Lambda Target Multipliers

Target Lambda Multiplier 1 pin

Random fuel multiplier 1 pin ?highlight=class~switch_inputs

Target Lambda Multiplier 1 pin mode

~~PLACEHOLDER~~

Target Lambda Multiplier 1 value

Random fuel multiplier 1 value

Target Lambda Multiplier 2 pin

Random fuel multiplier 2 pin ?highlight=class~switch_inputs

Target Lambda Multiplier 2 pin mode

~~PLACEHOLDER~~

Target Lambda Multiplier 2 value

Random fuel multiplier 2 value

Target Lambda Multiplier 3 pin

Random fuel multiplier 3 pin ?highlight=class~switch_inputs

Target Lambda Multiplier 3 pin mode

~~PLACEHOLDER~~

Target Lambda Multiplier 3 value

Random fuel multiplier 3 value

Target Lambda Multiplier 4 pin

Random fuel multiplier 4 pin ?highlight=class~switch_inputs

Target Lambda Multiplier 4 pin mode

~~PLACEHOLDER~~

Target Lambda Multiplier 4 value

Random fuel multiplier 4 value

TPS Acceleration Enrichment/Wall Wetting AE

Acceleration enrichment Base settings(AE)

Acceleration Enrichment Methods

Enable TPS Acceleration Enrichment

TPS acceleration enrichment enabled

Enable wall wetting Acceleration Enrichment

Wall wetting accelerating enrichment enabled

Use MAP estimate during transient

During the TPS AE period, use the MAP estimate table value instead of true MAP (if greater than real MAP). This basically briefly runs in alpha-n during a transient, then returns to normal speed-density mode.

Wall Wetting

Wall fueling model type

Should we use tables to vary tau/beta based on CLT/MAP, or just with fixed values?

evaporation time constant / tau

Length of time the deposited wall fuel takes to dissipate after the start of acceleration.

added to wall coef / beta

0 = No fuel settling on port walls 1 = All the fuel settling on port walls setting this to 0 disables the wall wetting enrichment.

TPS AE: Settings

Enable TPS Acceleration Enrichment

TPS acceleration enrichment enabled

TPS AE fast or slow callback (20hz = false vs 200hz = true )

~~PLACEHOLDER~~

Delta TPS Average Smoothing Factor

A higher alpha (closer to 1) means the EMA reacts more quickly to changes in the data. '1' means no filtering, 0.98 would be some filtering.

Use calculated threshold from averaged delta tps

use calcualted threshold from averaged delta tps

Average static threshold curve and dynamic threshold

when using dynamic threshold from averaged and multiplied deltatps, average with static threshold curve

Sample Length

How long to look back for TPS-based acceleration enrichment. Increasing this time will trigger enrichment for longer when a throttle position change occurs.

Instant Fuel Pulse

Send a simultaneous shot to all injectors upon TPS AE

Instant Fuel Pulse Multiplier (global)

Extra shot multiplier

Instant Fuel Pulse Inhibit Cycles

Inhibit Extra Shot for this many cycles

TPS AE Burn Skip count

~~PLACEHOLDER~~

TPS Accel resets EGO to 0%

TPS AE resets current EGO to 0%

Inhibit closed loop fuel after accel

Pause closed loop fueling after acceleration fuel occurs. Set this to a little longer than however long is required for normal fueling behavior to resume after fuel accel.

TPS AE: Fuel multiplier by engine cycle

~~PLACEHOLDER~~

TPS AE: Delta TPS Average Multiplier for Dynamic Threshold

~~PLACEHOLDER~~

TPS AE: TPS change threshold by RPM

~~PLACEHOLDER~~

TPS AE: TPS vs CLT AE SCALE

~~PLACEHOLDER~~

Predictive Map Blend Duration

~~PLACEHOLDER~~

TPS AE: RPM correction

~~PLACEHOLDER~~

TPS AE: CLT correction

~~PLACEHOLDER~~

MAP estimate table

~~PLACEHOLDER~~

TPS AE instant pulse multiplier vs RPM

~~PLACEHOLDER~~

TPS AE instant pulse multiplier vs TPS

~~PLACEHOLDER~~

TPS AE instant pulse multiplier vs MAP

~~PLACEHOLDER~~

TPS AE instant pulse multiplier vs CLT

~~PLACEHOLDER~~

Evap from wall time

Stick to wall fraction

Evap from wall table

~~PLACEHOLDER~~

Stick to wall table

~~PLACEHOLDER~~

Throttle Model Flow

Throttle effective % area (TPS -> % tb1 area)

~~PLACEHOLDER~~

Throttle Model Flow Discharge Coefficient

~~PLACEHOLDER~~