Idle Speed Control

This section applies to all Bank to Bank ECUs, as well as Sequential ECUs with the Idle Air Control option.

 

Idle Speed vs. Coolant Temp


This is a 2D graph used for controlling idle speed as a function of engine coolant temperature.  The horizontal axis of the graph represents engine coolant temperature, and the vertical axis of the graph represents the targeted idle speed.

In order to maximize the range over which the ECU can control idle speed, there is a simple idle calibration process that should be followed.  Refer to the above diagram.  The green trace represents the targeted idle speed, and the blue cross-hairs represent the actual engine speed and temperature.  The cross-hairs should be locked on to the green trace any time the engine is idling, and the targeted IAC position should be near its minimum as well.  This allows the IAC motor to open as far as possible in the event of heavy engine loading during idle (A/C compressor engaging, electric fans turning on, etc.).  At normal operating temperature, simply adjust the throttle blades on the throttle body so that the cross-hairs are locked onto the targeted RPM trace, and the targeted IAC position is 15-25 counts (seen in the "IAC Target" sensor in the dashboard above).

 

Throttle Follower


The throttle follower is a feature used to help prevent an engine from stalling when the throttle goes from open to closed.  The line you see in the above graph is used to determine the minimum target position for an idle air control (IAC) motor.  The theory of operation is as follows:

The purpose of the IAC motor is essentially to provide a controllable vacuum leak.  The ECU can command the IAC motor to open and allow more air to enter the engine, or it can command it to close and allow less air in.  More air will mean more engine speed and vice versa, so an IAC motor can be used to control engine speed.  As seen in the graph below titled "Idle Speed vs. Coolant Temperature", a desired engine idle speed can be programmed by the user, and the ECU will use the IAC motor to keep the engine idling at this speed.  However, as the throttle opens further and engine speed goes well above the targeted idle speed, the ECU will tell the IAC motor to close all the way in an attempt to bring engine speed back to its targeted value.

The throttle follower graph is used to set a minimum IAC position through a portion of the throttle position range.  Since the ECU will first try and close the IAC to the lowest possible target, defining the minimum target position will essentially "lock" the target IAC position to that minimum as long as the engine is still running above the targeted idle speed.  With this method, the targeted IAC motor position can essentially be defined as a function of throttle position.

The above diagram is an excellent example of a typical throttle follower calibration.  At the lowest TPS position, where the engine is assumed to be idling, the throttle follower graph is kept to its minimum setting.  At idle, the ECU will determine the IAC position necessary to achieve the target idle speed, so defining a minimum IAC position would limit the available range of IAC movement.  Once the throttle position moves above the maximum TPS reading for idle, the throttle follower should open the IAC motor further and further as throttle position increases.

Using the above diagram as an example, assume that the engine is running and the throttle position is at 32%.  According to the graph, the IAC will be opened 70 counts at this throttle position.  Now, let's assume that the throttle is quickly closed - as if the driver quickly lifted off of the gas pedal.  The TPS will return to its idle position, but the IAC motor will still be opened much further than it needs to be to maintain the targeted idle speed.  Rather than "slamming shut" like the throttle blades did, the IAC motor will close slowly, easing the transition from cruising RPM to idle RPM and preventing engine stalls that can occur under these conditions.

 

Starting IAC Position vs. Coolant Temp


This is a 2D graph used for controlling the targeted IAC position when the engine is cranking as a function of engine coolant temperature.  The horizontal axis of the graph represents engine coolant temperature, and the vertical axis of the graph represents the targeted IAC position when the engine begins to crank.  It will stay in this position until the ECU switches in to run mode.  Opening the IAC motor before starting the engine allows bypass air to enter the engine during cranking, eliminating the need to depress the throttle to get the engine started.  The opening of the IAC motor during cranking also produces a brief RPM "flare-up" common to IAC-equipped engines.  You can raise or lower this flare-up by increasing or decreasing the starting IAC position.

Timing Trim


This is a 2D graph used to vary ignition timing to help regulate idle speed.  The horizontal axis of the graph represents the difference between the actual idle speed and the target idle speed, and the vertical axis of the graph represents the number of degrees to alter the ignition timing.  If the idle speed is too high, the ECU will retard the timing by the amount specified in the graph.  If the idle speed is too low, the ECU will advance the timing by the amount specified in the graph.  It is recommended to set this entire table to zero as a starting point.  Add timing trim only if you are otherwise unable to achieve a smooth, stable idle.

Idle Parameters


This is a form used for setting gain controls on the idle air control motor and for setting a threshold on the TPS position where the ECU no longer considers the engine to be idling.  The IAC "P" gain value can be set from 0 to 255.  Raising this value will cause the IAC motor to open or close further in an attempt to correct the idle speed.  The IAC "D" gain value can also be set from 0 to 255.  Raising this value will cause the IAC motor to open or close faster in an attempt to correct the idle speed.  The default values of 32 for the P gain and 4 for the D gain are generally close to correct for most applications.

An excellent way to better understand these settings is to liken them to a sensitivity control on a cruise control circuit.  If the circuit was set for maximum sensitivity (gain values both set to 255) the accelerator pedal would go to the floor as soon as you dropped below the target speed, and the pedal would drop to an idle as soon as you were going too fast.  If the circuit was set for minimum sensitivity (gain values set to 0) the accelerator pedal would hardly move if you were going too fast or too slow, and you would almost never be traveling at the desired speed.  This same concept applies to how your IAC motor will regulate idle speed.

The "Max. TPS for Idle" field is used to set the threshold where the ECU no longer considers the engine to be idling.  It is recommended to observe the TPS reading at an idle and setting this field to that number plus one.  In other words, if your TPS reads 10% at an idle, set this value to 11.  When the TPS percentage exceeds the value specified in this field, the IAC motor will be "locked" into the position specified in the throttle follower graph, and the Timing Trim graph will not be used.