AFR target tables: what to target and how to set them
What the AFR target table does, how the common ECUs lay it out, typical starting targets for each operating region, and how to check the engine is reaching them.
What the AFR target table does
The AFR target table says what air-fuel mixture you want at each RPM and load. The VE table is then tuned so the engine actually reaches those targets, and closed-loop correction and autotune both compare the wideband reading against them.
Because VE is tuned to reach the targets, set the targets first. Changing a target after VE is tuned moves the fuelling in that region, and on some setups you will need to re-check VE there.
AFR depends on the fuel. Stoichiometric is about 14.7:1 for petrol and about 9.8:1 for E85. Lambda divides AFR by the fuel's stoichiometric ratio, so lambda 1.0 is stoichiometric for any fuel. If you switch fuels or run flex fuel, lambda targets are easier to keep right.
How Speeduino, rusEFI and MegaSquirt lay it out
| Firmware | Table | Units |
|---|---|---|
| Speeduino | 16×16 AFR target table | AFR, 7.0 to 25.5 |
| rusEFI, epicEFI, FOME | 16×16 target table | Lambda or AFR, depending on the display setting |
| MegaSquirt MS3, MS3Pro | 16×16 AFR target table | AFR or lambda |
The grid a MegaSquirt uses depends on the hardware: 8×8 on MS1, 12×12 by default on MS2 and MicroSquirt with 16×16 supported by many MS2-Extra versions and updates, and 16×16 on MS3 and MS3Pro. On MegaSquirt-3 the INI notes that the AFR table is only a reference unless 'incorporate AFR' is turned on, in which case it becomes part of the fuel calculation. On the others the target mostly drives closed-loop correction and VE tuning. Check how your firmware uses it before you change values.
Typical starting targets
These are common starting points for a petrol engine with a wideband sensor. They are not limits for your engine. Detonation margin, fuel quality, compression, cooling and the engine builder's advice all matter more than a generic table.
| Region | AFR (petrol) | Lambda |
|---|---|---|
| Idle | 13.8 to 14.7 | 0.94 to 1.00 |
| Light cruise | 14.7 to 15.5 | 1.00 to 1.05 |
| Naturally aspirated full load | 12.5 to 13.2 | 0.85 to 0.90 |
| Boost | 11.5 to 12.2 | 0.78 to 0.83 |
| Overrun / decel | Lean or fuel cut | Above 1.0 |
- Blend between regions. A sudden step in target between neighbouring cells makes a step in fuel.
- Go richer as boost rises rather than holding one value across the whole boost range.
- Start conservative (richer) at full load and boost, and lean toward your goal only with logs and knock monitoring.
A safe order for setting targets
- Match the table's load axis to the VE table's, so the same cell means the same operating point in both.
- Fill idle and cruise first, around stoichiometric.
- Set full load and boost rich, then blend the cells in between.
- Tune VE until measured AFR follows the targets at idle and cruise.
- Work up through load in small steps, logging each pass, before leaning any full-load or boost target.
How efi2000 helps
The table generator builds starting AFR target, VE and spark tables from the engine details in Vehicle properties. You preview the generated values before applying them.
Spotter checks the AFR target table against the same idle, cruise, full-load, boost and overrun regions as the VE and spark tables, and flags cells that look wrong for the boost you plan to run. Target tracking in the log viewer measures how closely AFR followed target, overall and per region, and autotune proposes VE corrections from the gap between measured AFR and your target.
Questions
- Should I use AFR or lambda?
- Either works for a single fuel. Lambda is easier when you change fuels or run ethanol blends, because lambda 1.0 means stoichiometric for every fuel.
- What AFR should I run under boost?
- Many petrol turbo setups start around 11.5 to 12.2 AFR (lambda 0.78 to 0.83) and only lean out with knock monitoring and logs. The safe value depends on your engine, fuel and timing.
- Why doesn't my AFR match the target?
- The target only says what you want. If VE is off, measured AFR won't follow it until VE is tuned, and closed-loop correction may be limited or off in some regions. Target tracking in efi2000 shows where and by how much it misses.