Guide updates and tuning notes by email → Follow us

Home › Q&A › Tuning

How does the E38 ECU use MAF versus VVE tables for fueling, and how do I trim each one?

The E38 is a torque-based controller that runs a hybrid airflow model: it uses the MAF and the virtual VE (VVE) table together, blending between them based on operating conditions — the MAF generally owns steady-state airflow while the VVE covers transients and low-flow areas. Trim them one at a time: fail the MAF (set the MAF Fail Frequency High to 0 Hz) to force pure speed density and calibrate the VVE tables from fuel trims or a wideband, then re-enable the MAF, calibrate the MAF curve, and run the blended hybrid mode the way GM intended.

Last updated

Who this applies to

  • Computers: E38, E67
  • Transmissions: (fueling, trans-agnostic)
  • Not for: P01/P59 Gen III (conventional VE table, no VVE); E92 Gen V (different torque model)

HP Tuners VCM Editor — trimming VVE, then MAF, then running hybrid (recommended)

  1. Force speed density: Engine Diag > Airflow > MAF Fail Frequency High = 0 Hz. Failing the MAF puts the E38 in SD mode. MAF Fail High = 0 Hz
  2. Drive at steady state only (filter out transients), logging fuel-trim or wideband error against the GMVE airflow math, and correct Engine > Airflow > Speed Density > VVE cells. trim VVE from steady-state error
  3. Restore the MAF fail frequency, calibrate the MAF curve, then run the blended hybrid mode — MAF plus VVE together. hybrid mode: MAF + VVE

Big cam or boosted setups where MAF placement is compromised (MAF-less, VVE-only)

  1. Keep the MAF failed (0 Hz) and run VVE-only permanently; note the E38 also has an upgraded OS option that replaces the coefficient-based VVE with a conventional editable VE table. VVE-only or upgraded-OS VE table

Careful

  • Never tune the VVE and MAF at the same time from the same error data — calibrate one with the other forced out, or the errors fight each other.
  • Only use steady-state data for airflow trims; transients (tip-in, decel) corrupt both MAF and VVE error math.

More in who tunes it, or build a checklist for your swap with the tune checklist tool.

Go deeper

Check this first

  1. Check whether the tune is actually in hybrid mode: look at Airflow > Dynamic high-RPM disable/reenable — if the disable is set low (e.g. 400 RPM), the ECM runs MAF-only above that RPM.
  2. Log MAF airflow vs GMVE airflow at steady state; big divergence at low flow with a big cam is normal — that range is VVE-dominant from the factory.

Try this, then this

  1. If trims swing wildly after a cam/intake change, fail the MAF and re-trim the VVE first — the VVE is the foundation the blend starts from. — A wrong VVE corrupts the MAF error math too, since the blend leans on both. Worked if: Trims stabilize in SD mode before the MAF is re-enabled.
  2. If low-RPM fueling won't settle with a big cam, accept VVE dominance down low or run VVE-only rather than fighting the MAF in reversion-prone airflow. — The factory strategy already leans on speed density at low flow; a lumpy cam makes MAF readings there unreliable. Worked if: Idle and tip-in fueling stay consistent.

How you know it's fixed

  • With the MAF failed, fuel trims/wideband error are near zero across the VVE table.
  • With the MAF re-enabled and VVE restored, switching between hybrid and MAF-only barely moves fuel trims.
  • No lean/rich spikes on throttle transitions in the log.

Key numbers

WhatValue
E38 MAF-fail settingMAF Fail Frequency High = 0 Hz forces speed density
E38 dynamic airflow switchoverAirflow > Dynamic high RPM disable controls MAF-only vs blend
E38 intended airflow modehybrid MAF + VVE is the intended operating mode

Time and cost: 2-4 hours of logging and editing per table if the fuel system and injector data are already right.