Boost (WGS)
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.
ECMLink has a helper function in the datalog tab's right click menu (called Set boost tables) that will get your base tables setup pretty well once you have manually configured the Base Duty Cycle table to be in the area you want to work in. More details on this function will be provided on our support wiki.
"Boost" Target
When error correction is enabled, this table defines the target boost value the ECU should compare against the current boost value to determine how much error correction to apply to the current duty cycle.
When error correction is disabled, this table has no operational effect on anything.
To use this table (or, rather, to use boost error correction at all), you must configure the Manifold pressure (MAP) pin assignment and the MAP sensor type drop down in the ECU-side of the ECU Inputs tab.
Base Duty Cycle
This is the base duty cycle the ECU will use for a given gear and engine RPM point. This is the starting point for the BCS output.
If error correction is enabled, this value will be adjusted based on the difference between the current boost value and the target value defiend by the Boost Target table. The WGSTrim variable (loggable item) tells how much correction the ECU is applying to the base table at any given moment. You can use the WGSErrorCorr table in Direct Access to adjust how quickly the ECU changes duty cycle as a function of boost error.
If error correction is disabled, the value looked up in this table is the value the ECU will use without any adjustment.
Options
Enable boost control - Check this box to enable custom WGS output controls based on the tables defined in this tab. When this box is unchecked, the ECU is left to do stock control of the WGS output (which is typically locked it at 100% DC).
Use 1st gear only - Check this box to disable the 2nd and 3rd gear rows of both the Boost Target and Base Duty Cycle tables. We would only recommend using this option if you have error correction disabled. The reason being that the Boost Target table really does change substantially based on gearing and road inclination. Higher gears and steeper hills build boost at lower engine speeds. This combined with the ECU's error correction logic can result in significant overshooot when you have only a single row controlling the boost target.
Use LatestSpeed for gear selection - When this box is checked, the ECU will use vehicle speed instead of gear ratio to select the gear rows of the Boost Target and Base Duty Cycle tables. This is primarily provided for automatic transmissions where gear ratio isn't a reliable indication of gear due to the effect of the torque converter. When this box is checked, you'll want to change the WGSGear table in Direct Access to have values related to the raw LatestSpeed variable (instead of the raw WGSGearRatio used by default). Display LatestSpeed on your graph using the Raw value -> button in the Display Values dialog.
Disable error correction - When checked, the ECU will not adjust the value pulled from the Base Duty Cycle table. This effectively disables the Boost Target table.
Lock at 0% below - Locks the WGS duty cycle to 0% (full off) below the specified boost pressure. Useful when you want to just leave the solenoid alone when idling and cruising. Might be useful with some aftermarket solenoids that may tend to over heat if left active for too long. Suggested value here would be around 0 psia (atmospheric pressure).
And then 100% below - Locks the WGS duty cycle to 100% (full on) below the specified boost pressure once the Lock at 0% threshold is reached first. Useful when you want to tweak boost behavior while boost is building. Use with care as you can easily introduce a good bit of boost spike with this function.
Solenoid selection
It may seem simple to grab a solenoid and wire it up. But there are a LOT of considerations you have to keep in mind. Not only does the solenoid have to be electrically compatible with the ECU's drivers, but the solenoid has to operate properly under high pressure conditions.
The ECU expects the solenoid to provide around 28-33 Ohms resistance. If you use a solenoid with too little resistance (or draws too much current under any condition), you run the risk of blowing the ECU's internal driver. The "typical" GM BCS, for example, will blow the 1990-1997 ECU's BCS driver if wired straight to the ECU. You have to wire a big series resistor and, possibly, a protection diode across the BCS pins to prevent damage to our ECUs when running the GM BCS.
The factory EGR and fuel pressure solenoids are options, but do not seem to work properly above 20psi. These solenoids either hang open or get locked closed (depending on configuration) under high boost conditions, making them unsuitable for this application.
The factory boost control solenoid (BCS) does actually work, but it's only a 2-port solenoid. Which means you'll need to wire it up with a restrictor (we've found that a 0.025" restrictor works well) similar to the stock configuration and you'll need to remove the internal restrictor found in the stock BCS itself. The one advantage here is that you can plug the solenoid directly into the factory harness without need for cutting and soldering wires into place. You'll just spend some time locating an appropriate restrictor "pill" from somewhere. These are probably readily available, though. Just search for "EVO" boost pills or something similar.
The one 3-port solenoid that we've tested to work well without any modification or restrictor setup is made by Ingersoll-Rand. It's Aro model number P251SS-012-D. You can find this solenoid on Grainger's site by searching for that part number or Grainer's part number SJJ52. Or we'll have this solenoid available on our website bundled with appropriate 1/8" NPT nipples to go to 3/16" vacuum lines.
You typically wire the solenoid directly to factory BCS wires. You can use the ECU Wiring Information page on our wiki for details if you need them, but you basically just locate the factory BCS wires under the hood and cut/solder/heatshrink your new solenoid into place. Using a stock BCS does have the advantage of plugging directly into the harness.
Typical configuration
How you physically install your boost control solenoid depends on which type of wastegate actuator you have and how you want to run it (direct vs. bleeder). Details on this will be covered on our wiki.
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.