All guides
Guide · updated 22 October 2026

Boost control: how it works and how to tune it

How a turbo is held at the boost you want, the two ways an ECU controls it, how the common ECUs lay it out, and a safe order for tuning it.

What boost control does

A turbo makes more boost as exhaust energy rises. Left alone it keeps rising, so every turbo system has a wastegate: a valve that lets exhaust bypass the turbine. Boost control decides when the wastegate opens.

The wastegate actuator has a spring. Boost pressure reaches the actuator through a hose and pushes against the spring, and when it is high enough the wastegate opens. That pressure is called spring pressure or wastegate pressure. With no boost controller, the engine runs at about spring pressure.

In the usual setup, an electronic boost controller can only keep the wastegate shut for longer, which raises boost above the spring. It can't open the wastegate earlier, so spring pressure is the lowest boost the controller can hold. To run less boost than the spring, fit a softer spring.

The boost control solenoid

The ECU controls boost with a solenoid valve in the hose to the wastegate actuator. It pulses the solenoid at a fixed frequency and varies the duty cycle, the share of each pulse that the valve is open. Each pulse bleeds some pressure away from the actuator, so the actuator sees less than the manifold does and the wastegate stays shut longer.

  • 0 % duty bleeds nothing off. Boost stays at spring pressure.
  • More duty bleeds more off. Boost rises above the spring.
  • How much boost a given duty makes depends on the solenoid, its plumbing, the wastegate and the turbo. The same duty on two cars rarely makes the same boost.

The solenoid frequency is a setting in the ECU. Use the frequency the solenoid's maker gives.

Open loop and closed loop

In open loop, a table gives the solenoid duty directly, usually by RPM and throttle position. The ECU outputs that duty and doesn't check what boost it got. It is simple and predictable, and it is the usual place to start. Boost still moves with things the table doesn't see, such as air temperature and altitude, so the same duty can make different boost on different days.

In closed loop, a table gives a boost target and a PID controller adjusts the duty to reach it, using the MAP sensor. Most ECUs also use a base duty, a starting duty for each target, so the PID only has to correct a small error. Closed loop holds boost more steadily, but a badly set PID overshoots, oscillates or reacts slowly.

Open loopClosed loop
Main table holdsSolenoid duty %Boost target pressure
Uses the MAP sensor to control boostNoYes
Follows weather and altitude changesNoYes
What you set upOne duty tableTargets, base duty and PID gains

A common route is to get the car running well in open loop, note the duty that makes each boost level, and use those duties as the base duty when you switch to closed loop.

How common ECUs handle boost control

The firmware decides which modes exist and how the tables are laid out. Tuning software shows the dialogs and tables the firmware's INI file declares.

Speeduino

The Boost Control dialog sets the output pin, the solenoid frequency and the control type, open loop or closed loop. The 8×8 boost table, RPM against throttle, holds duty % in open loop and boost targets in kPa in closed loop, so switching the mode changes what the same table means. Closed loop adds valve minimum and maximum duty, an enable threshold, PID gains and a Base duty for closed loop table with a starting duty for each target. Boost Cut sets an overboost limit, and Boost by Gear adjusts boost for each gear.

rusEFI and epicEFI

There is an open-loop duty table and a closed-loop target table in kPa, each by RPM against a load axis you choose. In closed loop the open-loop table is the base duty and the PID adds a correction on top. Extra tables can switch in under conditions you set, and an overboost cut pressure cuts power above a set boost.

MegaSquirt MS3

There are open-loop duty tables and closed-loop target tables, with a second set that can be switched in. In closed loop a bias duty table, by RPM and boost target, gives the starting duty. Overboost protection cuts fuel, spark or both above a set pressure.

TunerStudio

TunerStudio, the tuning software from EFI Analytics used with all of these, doesn't control boost itself. It shows the boost dialogs and tables the INI declares, and you fill the tables in by hand or with its table editing tools.

A safe order for tuning boost

  1. Check the MAP sensor covers the boost you plan to run, with some margin. A 250 kPa sensor reads up to about 21 psi of boost at sea level. Above its range it reads the same at every boost.
  2. Set the overboost cut a little above your first target before any boosted pull.
  3. Start at spring pressure: 0 % duty in open loop, or targets at spring pressure in closed loop. Tune fuel and timing at that boost first.
  4. Log MAP, boost target, duty, AFR and knock on every pull.
  5. Raise duty or targets a little at a time and check AFR, knock and timing at each step.
  6. Keep the peak within about twice the spring. Further than that, the wastegate is hard to control, and a stiffer spring holds boost more steadily.
  7. Ask for little or no boost below the turbo's spool range and at part throttle. A target the turbo can't reach yet winds the controller up, and boost overshoots when the turbo catches up.
  8. In closed loop, fill the base duty from your open-loop logs, then set the PID gains so boost reaches the target without overshooting.

Using efi2000 for boost control

efi2000 opens the same INI and MSQ files as TunerStudio, so the boost dialogs and tables above appear as your firmware declares them. It adds a generator for the first boost table, and checks and logs around it.

Boost table generator

Open the boost table under Tuning and click Generate boost table. Enter the wastegate spring pressure in psi or kPa, pick a profile and, if you want, a peak boost.

  • Safe start: spring pressure only. In open loop every cell is 0 % duty.
  • Street: about 25 % over the spring, and at most 35 kPa (about 5 psi) over it.
  • Performance: about 50 % over the spring, and at most 70 kPa (about 10 psi) over it.

Boost builds with throttle and across the turbo's spool range from Vehicle properties. Below that, the table asks for spring pressure in open loop, or atmospheric pressure in closed loop so the PID isn't winding up early. The table follows the tune's boost mode: open-loop duty, or closed-loop targets in absolute kPa. Speeduino's closed-loop base duty table is a separate table: open Base duty for closed loop and generate it too, so the PID starts from a duty for each target pressure.

Requests are capped at the boost limit in Vehicle properties. If the spring alone makes more than the limit, the generator says so, because no table value can hold boost below the spring. It also warns when the peak is more than twice the spring.

Before you apply it, you see the generated table and the values it used: spring, peak, throttle range, spool range and, in closed loop, barometric pressure. Applying is one undo step. Nothing is written to the ECU until you write it, and the generator works with no ECU connected.

With a 9 psi spring, the street profile asks for about 11 psi at full throttle above spool, which is 25 % duty in open loop. The performance profile asks for about 13.5 psi, which is 50 % duty. Open-loop duty is an estimate that assumes about 100 % duty would double the spring. Real valves vary, so log the first pulls and adjust.

The generator fills Speeduino's boost table in both modes and its base duty table, and MegaSquirt MS3's open-loop duty tables. rusEFI and epicEFI boost tables use a selectable load axis, which the generator doesn't fill yet; you edit those tables by hand.

Checks and logs

Spotter checks the AFR target and spark tables against the boost range you entered. Boost targets have to stay richer than full load, and boost the turbo can't reach gets no more timing and no leaner target than boost it can. Target tracking in the log viewer measures how closely a channel follows its target, overall and per region, boost included: AFR against AFR target, or MAP against the boost target when your firmware logs one. Every log efi2000 records marks each ECU write and burn, so you can see which pulls ran before and after a boost change.

Questions

What boost duty cycle should I start with?
0 %, which holds boost at spring pressure. Tune fuel and timing there, then add duty a little at a time while logging boost.
Should I use open-loop or closed-loop boost control?
Start in open loop. It is simpler and shows you what duty your setup needs for each boost level. Move to closed loop when you want boost to hold steady across weather and altitude, and use the open-loop duties as the base duty.
Why does boost overshoot in closed loop?
Usually the base duty is too high, the PID gains are too high, or the targets ask for boost below the spool range so the controller winds up before the turbo can respond.
Why can't I run less boost than my wastegate spring?
In the usual setup the controller can only keep the wastegate shut longer. At 0 % duty the wastegate opens at spring pressure, so the spring is the minimum. Fit a softer spring to run less.
Can I use a boost table from efi2000 in TunerStudio?
Yes. efi2000 reads the same INI definitions and MSQ tunes, and tunes save back to MSQ, so a tune with a generated boost table opens in TunerStudio.