Rev 2.1 of this is post is available - check it out - new and improved !
Overview
CLI is intended to help keep steady idle when load on the engine change, AC, fans, lights etc',
and when high or low CLT and MAT represented to the engine.
CLI control the idle valve which is an air valve that bypass the throttle.
You can help controlling the idle with ignition degree change:
More ignition degree = higher rpm.
Less ignition degree = lower rpm.
On my car it was not needed, but good to know.
After some time you run open-loop (PWM-Warmup) and all is good, meaning the idle valve is operational, you can get a relatively good idle and AFR, it is time to try CLI.
Let's dive in, put your swimsuit on.
Closed Loop Idle
CLI is dynamic air correction mechanism using PWM-idle air valve.
PWM-idle air valve allow air in the engine when the throttle is closed, when the gas paddle is lifted.
CLI will automatically control the PWM-idle air valve in order to take care of air supply to the engine.
Change "Algorithm" to "Closed-loop"
Main CLI menu:
The first sub menu - "Closed Loop Idle Valve setting" has a little misleading name, this settings define the behavior of the valve when releasing the throttle paddle not when CLI is on.
When in open-loop.
Eventually leading to idle.
So, in "Closed Loop Idle" settings, you define IAC(idle air control valve) behavior when in open-loop (PID disabled) and for closed-loop (PID enabled).
I know it is a little confusing, but this is how it is...
A part of CLI settings is open loop IAC behavior - on its way to closed-loop.
The other three PID menus define the delay, behavior and activation values for PID operation.
We start at the first sub menu:
Closed Loop Idle Valve setting:
Idle Valve Close Duty(%): Remember "Output Test mode - Idle Valve" ? put the value you've found, here.
(max closed %)
Idle Valve Open Duty(%): same as above (max opened %)
Dahspot Adder(%): The amount of valve % to add when throttle is lifted. (getting ready for idle rpm)
Dahspot Decay Factor(sec?): How long will it take the adder above to decline to 0 - leaving CLI to follow regular CLITR (Closed Loop Idle Target RPM)
Use Last Value Or Table: "Use initial value table" the other option "use last value" did not work good for me.
Use CLT Or MAT In Table Lookup: I use MAT
Close Delay(s): How long will it take the valve to close when throttle is pressed.
Leave Valve Closed Above(rpm): as it says.
For This Number Of Seconds(s): as it says.
Next sub-menu:
Closed-Loop Idle PID Delays And Behavior
PID Delay(s): tool tip
Crank To Run Taper(s): How long to keep following "Idle Cranking Duty/Steps" curve after engine start
PID Ramp To Target Time(s): tool tip
PID Control Interval(ms): tool tip
PID Disable RPMdot: tool tip
Closed-Loop Idle PID Activation Settings
Idle Activation TPS Threshold(%): highest TPS that allow PID activation.
RPMdot Thershold(rpm/sec): RPM change speed, how fast the rpm change, close to idle or in idle it will be slow (30rpm/sec is slow)
Max Decel Load(%): Lowest MAP that allow PID activation, should be a little below idle MAP.
PID Lockout On Switch Active: If clutch switch is present you can use it here as CLI activator.
PID RPM Window Size (1=Off): tool tip(?)
Closed Loop Idle PID Gains
tool tips
Settings and settings...., let's talk about the whole CLI concept and what happens when.
When I was tuned to run PWM-Warmup (open-loop idle) I had the IAC (Idle Air Control) set to a specific (low) value for idle.
Goods:
- Easy to set up
- Works (sometimes)
Bads:
- Not dynamic - when load at idle is represented to the system the idle rpm will drop and may even stall, same with low\high CLT and MATit would not "care", it would just do the same (same IAC %) leading to oscillation, too low or too high idle.
- When the throttle is lifted and the clutch is pressed, the rpm run down pretty fast, the static IAC % will not be enough to "hold" and "stop" the rpm from taking a deep dive below desired idle...
CLI - what happen when.(max closed %)
Idle Valve Open Duty(%): same as above (max opened %)
Dahspot Adder(%): The amount of valve % to add when throttle is lifted. (getting ready for idle rpm)
Dahspot Decay Factor(sec?): How long will it take the adder above to decline to 0 - leaving CLI to follow regular CLITR (Closed Loop Idle Target RPM)
Use Last Value Or Table: "Use initial value table" the other option "use last value" did not work good for me.
Use CLT Or MAT In Table Lookup: I use MAT
Close Delay(s): How long will it take the valve to close when throttle is pressed.
Leave Valve Closed Above(rpm): as it says.
For This Number Of Seconds(s): as it says.
Next sub-menu:
Closed-Loop Idle PID Delays And Behavior
PID Delay(s): tool tip
Crank To Run Taper(s): How long to keep following "Idle Cranking Duty/Steps" curve after engine start
PID Ramp To Target Time(s): tool tip
PID Control Interval(ms): tool tip
PID Disable RPMdot: tool tip
Closed-Loop Idle PID Activation Settings
Idle Activation TPS Threshold(%): highest TPS that allow PID activation.
RPMdot Thershold(rpm/sec): RPM change speed, how fast the rpm change, close to idle or in idle it will be slow (30rpm/sec is slow)
Max Decel Load(%): Lowest MAP that allow PID activation, should be a little below idle MAP.
PID Lockout On Switch Active: If clutch switch is present you can use it here as CLI activator.
PID RPM Window Size (1=Off): tool tip(?)
Closed Loop Idle PID Gains
tool tips
Settings and settings...., let's talk about the whole CLI concept and what happens when.
When I was tuned to run PWM-Warmup (open-loop idle) I had the IAC (Idle Air Control) set to a specific (low) value for idle.
Goods:
- Easy to set up
- Works (sometimes)
Bads:
- Not dynamic - when load at idle is represented to the system the idle rpm will drop and may even stall, same with low\high CLT and MATit would not "care", it would just do the same (same IAC %) leading to oscillation, too low or too high idle.
- When the throttle is lifted and the clutch is pressed, the rpm run down pretty fast, the static IAC % will not be enough to "hold" and "stop" the rpm from taking a deep dive below desired idle...
The first trigger that will make MS look into this menu and check what to do is: throttle lift.
When you lift your feet from the throttle, MS is checking to see what IAC % to use in order to give the rpm a "soft" landing just before (=Dashpot Adder) idle (PID idle).
Ok ?
MS will find the answer in "Closed-Loop Idle Initial Values" - meaning, what IAC % @ what MAT/RPM.
I will address this table in a sec.
MS checks the CLT and the looks at CLITR (Closed-Loop Target RPM) to know what IAC % to use.
Next,
So, now the IAC is standing by opened, rpm is decreasing, MS checks for Closed-Loop Idle PID Activation Settings, TPS is good, RPMdot will be good when the rpm will get close to idle range and Max decel Load will be here when the rpm has "landed" and the engine is close to normal idle MAP (around 30kpa).
NOW ! PID takes control of the rpm following Closed Loop Idle PID Gains as behavior guidelines.
k ?
1. Throttle lifted
2. IAC % for RPM soft "landing"
3. RPM "landed"
3. PID conditions are met
4. PID controls idle
5. Throttle pressed
6. PID disabled
7. IAC closed
Good ? k !
Closed-Loop Idle Initial Values:
This is the default map values, it is good to start with, I think it will give a little high initial idle but it is great to start with.
After you see/feel that CLI is working, you can tune this little map.
How to tune it ?
Start with 40% in all cells, and keep in mind that low MAT will need less % and high MAT will need more %.
Tune it !
MegaLog Viewer - MLV
If you want to check CLI status in MLV - if MS is in CLI or not, you can choose "status2", when it is 0 CLI is off, when it is 128 CLI is on.
When status2=128 it means that PID is enabled !
The whole IAC % landing the rpm is happening before that (every time you lift your feet from the throttle), so you can see in the log that the IAC% is up and status2=0 this is because PID is not active yet, but the IAC % is ready for the rpm...
k ?
Tuner studio
You can add a CLI indicator to TS - just remember it is just the PID activation indicator !
More REV2 to come....