User Tools

Site Tools


boostcontrol

ECU-based Boost Control

ECMLink's boost control functions are modeled after the factory implementation provided by Mitsubishi on 1995+ DSMs and Lancer EVOs. The idea is to start with a base duty cycle curve that fairly closely produces the desired boost and then let the ECU do some minor error correction to keep things in line.

The idea is not to just dial in a desired boost and let the ECU try to achieve it for you. You won't be happy with the results. Your boost pressure will either spike too high or take too long to build or oscillate too much.

Instead, you want to start with a good base duty cycle table and then let the ECU fine tune from there.

Main sections

To keep this page more “readable”, we're going to split the following sections out.

Logging support

There are several log values available for working with the Boost tab.  These include the following.

  • WGSBoostTarget - The current value the ECU is using from the Boost Target table.  This is what the ECU considers its current boost target value used to drive error correction (when enabled).
  • WGSGear - The gear the ECU is using for both the Boost Target Target and Base Duty Cycle tables.  This is just a sanity check so you can see for sure which gear the ECU believes you're in.
  • WGSDuty - The current WGS duty cycle used by the ECU.  This is the final duty cycle, which will include any active error correction (WGSTrim).
  • WGSTrim - The current amount of error correction applied on top of the base duty cycle.
  • ECUBoost - The ECU's idea of boost based on the configuration entered into the ECU-side of the ECU Inputs tab.

Technical details

The ECU's WGS output is fixed at 17hz (period of 0.06 seconds).

A “duty cycle” here refers to how much of each 0.06-second period is considered “active” versus “deactive”.  A duty cycle (DC) of 100%, for example, just means the output is always active (tied to ground).  Likewise, a DC of 0% just means it's always deactive (the output is floating).

Values between these two extremes indicate how long the output is held active before being deactivated during each 0.06-second interval.  A DC of 75%, for example, means the output will be tied to ground (active) for 0.75 * 0.06 = 0.045 seconds and then switched off (deactive) for the remaining 0.015 seconds, then switched on again for 0.045 seconds and switched off again for 0.015 seconds, etc.

This provides a relatively smooth analog approximation to a variable value using an on-off solenoid and a digital output from the ECU.  Digital outputs and simple solenoid air valves are much less expensive than analog alternatives and provide reasonable approximations.

boostcontrol.txt · Last modified: 2024/03/15 11:16 (external edit)