Jump to content

Config:Setup

From epicEFI Wiki

Vehicle Information

This is used for basic engine and car information.

Engine Configuration

Number of cylinders

This is the physical number of cylinders (as in holes in the block) instead of logical cylinders (injector pairing etc.)

Displacement(L)

This is the displacement of the engine in liters. Example: 3.0

Firing order

This is the firing order of the engine. Please pay attention to choose the correct firing order and the correct number of cylinders. Firing order is handled by the firmware, so injector and ignition outputs are wired by number (INJ1 to Injector 1, INJ2 to Injector 2 etc.)

Use custom firing order

Enables a custom firing order.

See Custom Firing Order.

Engine metadata

This is the metadata about the engine and the vehicle itself. It is used by the msq viewer and the epicEFI AI agent.

Engine make and year

For example GM, Chevrolet, BMW.

Manufacturer engine code

For example 2JZ, BAM, LS1 etc.

Vehicle name

This is the name of the vehicle. For example Honda Civic.

VIN

This is the vehicle VIN number. Used by the OBD2 broadcast and also accessible via Lua.

Compression ration

The engine compression ratio. This is not used for any calculations of the fuel/ignition and is just there for reference.

Forced induction?

Does the engine have a turbo or supercharger. This is not used for any calculations and is there just for reference.

Fuel

Fuel strategy

Determines the method used for calculating fuel delivery.

  • Speed Density - Uses intake manifold pressure (MAP) and intake air temperature (IAT) to calculate air density and fuel requirements. This is a common strategy, especially for naturally aspirated or turbocharged engines.
  • Alpha-N - Uses throttle position as the primary load input for fuel calculation. This strategy is generally used in engines with individual throttle bodies or those that lack a reliable MAP signal.
  • MAF Air Charge - Relies on a Mass Air Flow (MAF) sensor to measure the amount of air entering the engine directly, making it effective for engines equipped with a MAF sensor.
  • Lua - Allows for custom fuel calculations using Lua scripting, enabling highly specific tuning applications where the other strategies don't apply.
  • MAF/MAP - The same as MAF Air Charge but a secondary blend table is used to blend the fuel load with the MAP sensor. Used for advanced setups where both MAF and MAP are used, and user decides how much of each calculation of AIRMASS to use for fueling calculations.
  • Throttle Model Flow - Uses "flow through an orifice" set of Bernouli's equations to attempt to calculate air mass. This is experimental/for educational purposes only.

Limits and Protection

This is a set of engine protection features and basic limiters such as the RPM limit and boost cut.

Limits and Fallbacks

Cut fuel on RPM limit

When enabled, this option cuts the fuel supply when the RPM limit is reached. Cutting fuel provides a smoother limiting action; however, it may lead to slightly higher combustion chamber temperatures since unburned fuel is not present to cool the combustion process.

Cut spark on RPM limit

When selected, this option cuts the spark to limit RPM. Cutting spark can produce flames from the exhaust due to unburned fuel igniting in the exhaust system. Additionally, this unburned fuel can help cool the combustion chamber, which may be beneficial in high-performance applications. Be careful enabling this: some engines are known to self-disassemble their valvetrain with a spark cut. Fuel cut is much safer.

Rotational REV limit

Rotational Idle as rev limit.

Rotational REV LIMIT window(RPM)

Rotational REV LIMIT window. Cut starts at HARD LIMIT - this window

Rotational REV LIMIT max multiplier(#)

Rotational REV LIMIT max multiplier for accumulator max, higher number - more distinct patterns

Rotational cut spark

@ggurov?

Rotational cut fuel

@ggurov?

Rotational Rev Limit absolute ignition

Rotational Rev Limit absolute ignition (-20 = atdc 20 degrees)

Use CLT RPM limit curve

If enabled, use a curve for RPM limit (based on coolant temperature) instead of a constant value.

RPM hard limit(RPM)

@ggurov?

RPM limit hystheresis(RPM)

Sets a buffer below the RPM hard limit, helping avoid rapid cycling of cut actions by defining a range within which RPM must drop before cut actions are re-enabled. Hysterisis: if the hard limit is 7200rpm and value is 200rpm, then when the ECU sees 7200rpm, fuel/ign will cut, and stay cut until 7000rpm (7200-200) is reached.

Low oil pressure protection

Oil pressure protection prevents engine damage by reducing engine speed. Requires a oil pressure sensor to be fitted.

Enable low oil pressure protection

This is the master switch for the oil pressure protection.

No fuel until oil pressure (CRANKING)

Prevent fuel injection until minimum oil pressure is reached.

Minimum oil pressure for fuel injection (CRANKING)(kPa)

Minimum oil pressure required to allow fuel injection at cranking.

Minimum oil pressure after start withing timeout (RUNNING)(kPa)

Expected oil pressure after starting the engine. If oil pressure does not reach this level within 5 seconds of engine start, fuel will be cut. Set to 0 to disable and always allow starting.

Low oil pressure protection timeout (RUNNING)(sec)

Delay before cutting fuel due to low oil pressure. Use this to ignore short pressure blips and sensor noise.

Minimum oil pressure (RUNNING)

2D map of the minimum oil pressure while running. kPa vs RPM.

High oil pressure protection

This is a feature that prevents the engine from reaching too high oil pressures to prevent gallery plugs and VVT components.

High oil pressure protection timeout (sec)

Delay before cutting fuel due to extra high oil pressure. Use this to ignore short pressure blips and sensor noise.

Lambda Protection

This enables the usage of a Wideband Oxygen Sensor to protect against lean conditions.

Enable lambda protection

This enables the lambda protection. Requires a Wideband Oxygen Sensor.

Check above load(%)

This is the load trigger point for Lambda Protection. This dictates when the protection feature is armed.

and above TPS(%)

This is the TPS arm point for the lambda protection. Used to prevent lambda protection during deceleration fuel cut and cruising transients.

and above RPM

This is the RPM arm point for the lambda protection.

and after delay(s)

This is used to delay the lambda protection feature by a set time to prevent oscillation and transient activation of the lambda protection.

Then cut fuel until:

Load less than (%)

The lambda protection feature is disabled after the load drops below this percentage.

and TPS less than(%)

The lambda protection feature is disabled if the TPS drops below this point.

and RPM less than(%)

The lambda protection feature is disabled if the TPS drops below this point.

Lambda Difference Table

This table dictates the difference between the target lambda and the measured lambda value from the Wideband Oxygen Sensor.

Trigger

The trigger dialog is used to configure the main primary and secondary triggers. Triggers can be cam or crank driven and numerous OEM trigger mechanisms are supported.

For a list of supported OEM triggers, see Triggers

For info about the universal crank decoder, see Triggers → Universal Trigger System.

Note: Whenever possible, we recommend the usage of the OEM trigger system except on low resolution triggers like Distributors or Suzuki G13B.

Primary Trigger

This is the primary trigger configuration. Can be cam or crank driven.

Strokes

This settings determines if the trigger is tracked over 360 or 720 degrees of crankshaft rotation.

Trigger type

This configures the primary trigger type.

For a list of supported OEM triggers, see Triggers.

For info about the universal crank decoder, see Triggers → Universal Crank.

Total tooth count (number)

This is the total number of teeth on the primary missing teeth wheel, including the missing teeth. For the common Bosch 60-2 trigger, this would be 60.

Only valid for the Missing tooth trigger.

Missing/skipped tooth count (number)

The number of missing teeth on the primary missing teeth trigger wheel.

Only valid for the Missing tooth trigger.

Skipped wheel location

This determines where the trigger wheel is located. This enables the mounting of missing tooth trigger wheels in the distributor or on the camshaft.

  • Crankshaft - The primary wheel is located on the crankshaft
  • Camshaft - The primary trigger wheel is located on the camshaft. This enables tracking over the 720 degree cycle.

Trigger angle(deg btdc)

Angle between Top Dead Center (TDC) and the first trigger event. Positive value in case of synchronization point before TDC and negative in case of synchronization point after TDC.

Also see Trigger Angle.

Crank Sensor (Primary Channel)

This is the hardware specific input pin of the primary trigger channel.

To find the actual value for your hardware, see Hardware.

Primary Edge

This determines if the tooth should be handled on the rising, or the falling edge of the input signal.

For more info, see Edge Detection.

Secondary channel

This is the secondary crankshaft hardware specific input pin. Used on some setups where there are two trigger wheels on the crankshaft such as Audi 135 or Magneti Marelli Microplex (sensor reads the ring gear and a single, secondary tooth provides phase location).

This does not provide tracking over the 720 degree cycle.

To find the actual value for your hardware, see Hardware.

Secondary Edge

See Primary Edge.

Enable noise filtering

This setting enables mild noise rejection. Use this setting if you have any trigger issues generated by EMI or electrical noise (trigger wiring close to spark plug wires).

Cam Inputs

This configuration is used to set up the type of camshaft trigger. Many camshaft triggers are supported (such as the common Single Tooth) as well as common triggers found on common European engines such as Bosch Quick Start (as used on the Audi 1.8T and 2.7T engines).

Cam mode (intake)

The trigger pattern on the intake cam.

See Cam Triggers.

Cam mode (exhaust)

The trigger pattern on the exhaust cam.

See Cam Triggers.

Cam sensor bank 1 intake

This is the physical hardware pin of the bank 1 intake camshaft sensor. Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve Timing.

To find the actual value for your hardware, see Hardware.

Cam sensor bank 1 exhaust

This is the physical hardware pin of the bank 1 exhaust camshaft sensor.

To find the actual value for your hardware, see Hardware.

Cam sensor bank 2 intake

The same information as for Cam sensor bank 1 intake but for the bank 2 intake camshaft.

To find the actual value for your hardware, see Hardware.

Intake Cam Edge Select

See Primary Edge.

Exhaust Cam Edge Select

See Primary Edge.

VVT offset bank 1 intake(value)

Angle between cam sensor and VVT zero position on the bank 1 intake camshaft. Adjust this offset so that the measured camshaft position is zero in the default position. See Variable Valve Timing for more details.

VVT offset bank 1 exhaust(value)

Angle between cam sensor and VVT zero position on the bank 1 exhaust camshaft.

VVT offset bank 2 intake(value)

Angle between cam sensor and VVT zero position on the bank 2 intake camshaft.

VVT offset bank 2 exhaust(value)

Angle between cam sensor and VVT zero position on the bank 2 exhaust camshaft.

Cam for engine sync resolution

Select which cam is used for engine sync. Other cams will be used only for VVT measurement, but not engine sync for the 720 degree cycle.

Require cam/VVT sync for ignition

Some engines are OK running semi-random sequential while other engine require phase synchronization.

Enable pre-sync fuel

This enables fuel injector pulses before the actual sync occurs to facilitate faster starting. This functionality injects the specified number of times, each teeth as configured up to a threshold (to prevent flooding).

Pre-sync fuel tooth count (first time)(teeth)

Number of teeth before firing pre-sync fuel pulse.

Pre-sync fuel tooth count repeat every X teeth

Repeat pre-sync fuel injection every X teeth

Pre-sync fuel max events

This caps the number of pre-sync fuel events to the specified number.

Pre-sync fuel multiplier

Fuel multiplier for pre-sync pulse (relative to cranking fuel).

Maximum cam/VVT sync RPM

Below this RPM, use camshaft information to synchronize the crank's position for full sequential operation. Use this if your cam sensor does weird things at high RPM. Set to 0 to disable, and always use cam to help sync to the crankshaft.

Minimum cam/VVT sync RPM

Above this RPM, use camshaft information to synchronize the crank's position for full sequential operation. Use this if your cam sensor does weird things at low RPM. Set to 0 to disable, and always use cam to help sync crank.

Skip pulses at startup(count)

Some trigger hardware may generate noise when the engine starts moving. Set this to ignore the first pulses when the engine starts moving.

Guess sync RPM threshold(rpm)

This is a mechanism that enables full engine 720 degree cycle sync without a camshaft angle sensor. This functions by switching the phase of the ignition/and injection until the sync RPM threshold is reached and the engine is assumed to be synced.

For this to be enabled, Cam mode (intake) or Cam mode (exhaust) must be set to Sync By Trying.

RPM threshold for sync success detection. Must be lower than actual cranking RPM. User must determine their actual cranking RPM without plugs and set this threshold accordingly.

Guess Sync Phase Attempts

Number of guessing phase shift events before giving up.

Guess Sync Check 1 (slow)

@ggurov what is this?

Guess Sync Check 2 (fast)

@ggurov what is this?

Guess Sync Angle(deg)

@ggurov not clear

Custom Firing Order

This can be used to define a custom/odd firing order for your specific engine. This is used in the rare case your specific firing order is not listed under Firing order.

Enable custom firing order

If the custom firing order should be enabled.

Note: Is is really rare that you would need this.

Firing Order Sequence

Specify the firing order sequence of your engine. The firing order sequence is defined up-to 12 cylinders.

Universal Cam

See Triggers → Universal Trigger System.

Universal Crank

See Triggers → Universal Trigger System.

Missfire detection

This functionality can be used to log and detect individual cylinder missfires.

Cylinder Contribution Windows (deg)

@ggurov: needs more info

Cylinder Contribution Phase (deg)

@ggurov: needs more info

Cylinder RPM Delta Smoothing Factor (0 - 1)

Exponential moving average smoothing factor for cylinder RPM delta (0-1). Higher = less smoothing, more responsive. Typical: 0.5-0.8.

Odd Fire Cylinder Offsets

Offset angle for each cylinder if you have an odd fire engine, like a V-Twin or some V6/V10 engines.

Positive numbers retard, negative numbers advance.

Offset cylinder X (deg)

Per-cylinder ignition and fueling timing correction for uneven engines.

SD Card

The ECU logs to the SD card when it is powered without USB connected and if the USB is not inserted within 15 seconds. When connected via USB, the ECU mounts the SD card to the PC. (Note: Not all boards support self-powering via USB and not all boards feature SD cards).

SD Card Logging

This enables or disables SD card logging

CS Pin/SPI

This is the physical pin configuration of the SD card interface.

To find the actual value for your hardware, see Hardware.

Always start in logging mode

Write SD card log even when powered by USB

SD logger rate

Rate the ECU will log to the SD card, in hz (log lines per second).

SD logger mode

  • Normal - Will write a standard MLG of sensors, engine function, etc. similar to the one captured in TunerStudio
  • Trigger logger - Will write a high speed log of trigger events (warning: uses lots of space!)

SD logger max file size (MB)

The individual file size limit

SD logger file index

The index of the current SD log fie

SD commands

These are a set of commands to safely manage the SD card to prevent filesystem corruption

  • Mount to PC - Mounts the SD card to the PC connected via USB
  • Mount to ECU - Mounds the SD card to the ECU and disconnects it from the PC.
  • Unmount - Unmounts the SD card from the ECU, so that it can be safely removed
  • Format - This formats the SD card
  • Rotate log file - Rotates the current log file and starts a new one

Fail reports - Remove all fail reports

Executed only when SD card is mounted to ECU

@ggurov: What is this?

Outputs

This page configures all the standard outputs one would expect from a ECU (fuel pump, tacho etc.)

Main relay

The ECU supports powering of the main relay to feed the ECU, as well as power hold after key-off (this requires the Key-In input).

Output

The physical hardware pin the main relay will be driven on.

To find the actual value for your hardware, see Hardware.

Output mode

See ECU output mode selection.

Main relay shutoff delay(sec)

This enables the ECU to be powered after the key has been removed. Requires the Key-In input.

Fuel Pump

This is the output configuration for the fuel pump relay.

Please note that on most cars the fuel pump feeds the injectors, so please enable the fuel pump while testing the fuel injectors.

Disable Fuel Pump

This disables the fuel pump output. Used for diagnostics.

Output

The physical hardware pin the fuel pump relay will be driven on.

To find the actual value for your hardware, see Hardware.

Output mode

See ECU output mode selection.

Fuel pump TPS prime

Press throttle past threshold to trigger fuel pump prime while the engine is stopped.

Fuel pump TPS prime threshold(%)

This is the threshold when the fuel pump will be activated while the engine is stopped.

Fuel pump TPS prime duration(s)

The duration for how long to prime the fuel pump.

Disable Fuel Pump Prime

This disables the fuel pump prime.

Prime delay

This is the fuel pump prime delay.

Prime duration

Duration of the fuel pump prime.

Disable injector prime pulse

This disables the injector prime pulse.

Fuel pump button

Enables wiring of an external fuel pump override switch

Fuel Pump Button Mode

See ECU input mode selection.

Tachometer output

This configures the tachometer drive.

Output

The physical hardware pin of the tachometer output.

To find the actual value for your hardware, see Hardware.

Output mode

See ECU input mode selection.

Pulse Mode

This selects the the type of the output mode.

  • Duty Cycle - Treat the pulse duration value as a duty cycle (the 0.5 value represents 50%)
  • Constant Time - Treat the pulse duration value as a millisecond value (raw pulse duration)

Pulse per Rev

This represents the number of pulses per crankshaft revolution. This can be used to drive 6 cylinder tachometers with a 4 cylinder engine, for example.

Startup sweep time(s)

Total time for the tach to sweep up then back down at startup. Set to 0 to disable sweep.

Startup sweep RPM

Maximum RPM for the startup tach sweep.

Sweep uses Tach Correction

If the tachometer sweep should respect the #Tach Correction Curve.

Starter Control

This enables the starting of the engine using a start/stop button.

Start/Stop Button Input

This is the physical hardware pin for the start/stop button.

To find the actual value for your hardware, see Hardware.

Require Foot On Pedal To Crank

This settings enables the inhibition of the starter output if the clutch pedal is not pressed.

Start/Stop Button Input Mode

See ECU input mode selection.

Start Request Button Inverted

This settings enables the inversion of the starter request button.

Starter Control Output

This is the physical hardware pin for the start/stop button.

To find the actual value for your hardware, see Hardware.

Start cranking maximum time(s)

This is the maximum time the starter can run, if the engine is not starting.

Supress On Start Up (ms)

@ggurov: Not clear

Starter Disable

This functionality enables the user to disable the starter if the engine is running. This can be used to prevent accidental presses of the starter button if Starter Control is not used and the starter is wired directly to a button.

Output

This is the physical hardware pin for the starter disable output relay.

To find the actual value for your hardware, see Hardware.

Output mode

See ECU output mode selection.

Speedometer output

This is the electronic speedometer output, this can be used to propagate a CAN speed value to a physical speedometer.

Output

This is the physical output pin of the speedometer output.

To find the actual value for your hardware, see Hardware.

Output mode

See ECU output mode selection.

Pulse per km

Number of speedometer pulses per kilometer travelled.

Startup sweep time(s)

Total time for the speedometer to sweep up then back down at startup. Set to 0 to disable sweep.

Startup sweep speed(km/h)

Maximum speed for the startup speedometer sweep.

Sweep uses speedo correction

If the sweep should respect the Speedo Correction Curve.

Check Engine Settings

Check engine light, also malfunction indicator light. Always blinks once on boot.

Output

This is the physical output pin of the check engine light.

See ECU output mode selection.

Output mode

See ECU output mode selection.

Warning Period(s)

@gurov: Not really clear