Config:Setup
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.
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?