MEGAsquirt A place to collectively sort out this megasquirt gizmo

Idle RPM Timing Correction Clobbers Crank-To-Run Taper Time

Thread Tools
 
Search this Thread
 
Old 11-04-2023, 10:58 AM
  #1  
Junior Member
Thread Starter
 
intenseapple's Avatar
 
Join Date: Mar 2017
Posts: 169
Total Cats: 10
Default Idle RPM Timing Correction Clobbers Crank-To-Run Taper Time

Idle RPM Timing Correction (IRTC) is great, most people including myself use it for idle. There is one nagging issue I have noticed though: It clobbers crank-to-run taper time. During very cold starts I like to jump up to 1500 RPM after start and taper down to CL target RPM (1200-1300 RPM when very cold). Almost all modern vehicles do this from the factory, and crank-to-run taper time is designed to allow for this in MegaSquirt. However, having IRTC enabled with even mildly aggressive timing correction when RPM is higher than target essentially fights the crank-to-run taper time by pulling timing. The end result is that the IRTC pulls a bunch of timing right as the IACV duty is tapering down to it's normal run position and this combination causes a major undershoot in target RPM which is occasionally bad enough to cause a stall. My current solution has, reluctantly, been to set IRTC so it does not modify timing when idle RPM is higher than target.

The question then is: Why in the world is IRTC active during the crank-to-run taper time? Taper time is obviously a transient condition wherein CL idle controls (like IRTC) should be disabled. Later firmwares have even added the crank-to-run taper time setting to the closed loop idle page, so maybe they are on the right track.
intenseapple is offline  
Old 11-04-2023, 02:08 PM
  #2  
Tweaking Enginerd
iTrader: (2)
 
Ted75zcar's Avatar
 
Join Date: Mar 2013
Location: Boulder, CO
Posts: 1,778
Total Cats: 358
Default

Hmmm, sounds like you may not be understanding/using the features appropriately. You want to us CLT based rpm target, IIRC crank-to-run is primarily a fuel based feature with a short duration.
Ted75zcar is offline  
Old 11-04-2023, 02:48 PM
  #3  
Junior Member
Thread Starter
 
intenseapple's Avatar
 
Join Date: Mar 2017
Posts: 169
Total Cats: 10
Default

Originally Posted by Ted75zcar
Hmmm, sounds like you may not be understanding/using the features appropriately. You want to us CLT based rpm target, IIRC crank-to-run is primarily a fuel based feature with a short duration.
Crank-to-run taper time is a taper for IACV duty, it tapers from cranking duty to whatever your CL initial value table has over the specified number of seconds. And I don’t want a general coolant based RPM target in this case, I already have that set up. I want to idle higher than my CL target for a few seconds after startup, which is what crank to run taper is meant to do from everything I can find
intenseapple is offline  
Old 11-04-2023, 04:59 PM
  #4  
Tweaking Enginerd
iTrader: (2)
 
Ted75zcar's Avatar
 
Join Date: Mar 2013
Location: Boulder, CO
Posts: 1,778
Total Cats: 358
Default

Right right, my mistake.

Have you tried "use PID idle activation" as opposed to "Use Engine State"?
Ted75zcar is offline  
Old 01-03-2024, 03:12 PM
  #5  
Junior Member
Thread Starter
 
intenseapple's Avatar
 
Join Date: Mar 2017
Posts: 169
Total Cats: 10
Default

Originally Posted by Ted75zcar
Right right, my mistake.

Have you tried "use PID idle activation" as opposed to "Use Engine State"?
I experimented with this, but there is no way to get this to function how I want it to (and, AFAIK, how it should). I can only limit activation by coolant temp and delay time via custom activation parameters. Coolant temp is unhelpful as I want Idle Advance (IA) running at all temps. I would be fine having Idle RPM Timing Correction (IRTC) to only run when the engine is warm, but the custom activation applies to both IA and IRTC together. This means avoiding activation during crank-to-run via coolant temp is out. The delay is also worthless -- I would have to make it as long as my Crank to Run Taper Time which is currently 8 seconds, far too long to wait to enable IA and IRTC during normal warm running conditions.

I have thought about it every which way and it just doesn't add up -- IRTC should never activate until the crank-to-run taper time is over after startup to prevent it from pulling/adding a heap of timing while the engine is settling into idle RPM. Going to try and pursue this further on msextra but am doubtful on how far I will get.
intenseapple is offline  
Old 01-03-2024, 03:51 PM
  #6  
Tweaking Enginerd
iTrader: (2)
 
Ted75zcar's Avatar
 
Join Date: Mar 2013
Location: Boulder, CO
Posts: 1,778
Total Cats: 358
Default

So am I to understand that PID idle activation triggers during crank-to-run? (I haven't looked at this, or if i did it was years ago and have forgotten)
Why do you care about Idle Advance in this otherwise open-loop condition?
Ted75zcar is offline  
Old 01-03-2024, 04:13 PM
  #7  
Junior Member
Thread Starter
 
intenseapple's Avatar
 
Join Date: Mar 2017
Posts: 169
Total Cats: 10
Default

Originally Posted by Ted75zcar
So am I to understand that PID idle activation triggers during crank-to-run? (I haven't looked at this, or if i did it was years ago and have forgotten)
Why do you care about Idle Advance in this otherwise open-loop condition?
As of 1.5.2, yes, PID idle triggers during crank-to-run. However, the actual PID algorithm is not running during this period, it just linearly tapers CL RPM target from whatever the RPM is when it enters CL down to the actual CL RPM target found in the table of the same name. It also linearly tapers PWM Idle Duty from the cranking % down to the run % as determined by the initial value table during this time. CL idle algorithm is not actually running, but all of the associated thing (Idle VE, Idle Advance, IRTC) are active.

I don't care all that much about Idle Advance during this short crank-to-run period, but I do care about having it after the car is idling normally, regardless of temperature.
intenseapple is offline  
Old 01-03-2024, 04:33 PM
  #8  
Tweaking Enginerd
iTrader: (2)
 
Ted75zcar's Avatar
 
Join Date: Mar 2013
Location: Boulder, CO
Posts: 1,778
Total Cats: 358
Default

ahh, well that is a pickle. At least it sounds like you have a straight-forward ask for the devs ... PID idle activation should not be triggering during crank-to-run. This is easy enough to implement in code.
Ted75zcar is offline  
Old 01-03-2024, 09:01 PM
  #9  
Retired Mech Design Engr
iTrader: (3)
 
DNMakinson's Avatar
 
Join Date: Jan 2013
Location: Seneca, SC
Posts: 5,009
Total Cats: 857
Default

My IRTC only pulls 3* max. It adds up to 16* or18* (I don’t remember which). In other words, use it to fight droop, but not to fight flair.

DNM
DNMakinson is offline  
Old 01-03-2024, 10:46 PM
  #10  
Junior Member
Thread Starter
 
intenseapple's Avatar
 
Join Date: Mar 2017
Posts: 169
Total Cats: 10
Default

Originally Posted by DNMakinson
My IRTC only pulls 3* max. It adds up to 16* or18* (I don’t remember which). In other words, use it to fight droop, but not to fight flair.

DNM
This is probably the best workaround. Actually started experimented with it today and it helped, just have to make sure RPM doesn’t dip too low during taper time or weird stuff can happen when IRTC adds too much timing.
intenseapple is offline  
Old 01-08-2024, 11:17 AM
  #11  
Retired Mech Design Engr
iTrader: (3)
 
DNMakinson's Avatar
 
Join Date: Jan 2013
Location: Seneca, SC
Posts: 5,009
Total Cats: 857
Default

@intenseapple I note that my idle advance setting doesn't kick in until about 5 seconds after start.

One lingering issue that many people have, that may be your issue, is that; under Closed-Loop Idle Settings, PID delay needs to be set to "3". If less, then you will get an occasional move into PID prematurely, even at start-up.

I have that set, and then Crank to Run set at 5.

In Idle Advance Settings, I have Use PID Activation set.

I note that my Idle Advance does make a step change when it comes on, not just the RPM timing correction, so that, too, could be an issue if your Idle Advance is much different from your normal advance settings in the idle region (as mine is). Idle Advance and Correction both turn out at the same time after the 5 second programmed delay.

DNM

DNMakinson is offline  
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
Icedawg
MEGAsquirt
1
06-06-2022 08:35 PM
mxteryman
MEGAsquirt
9
07-30-2021 07:45 PM
nnowa07
MSPNP
4
05-19-2019 06:44 PM
falcon
ECUs and Tuning
3
06-21-2011 12:12 PM
ZX-Tex
Adaptronic
66
09-14-2010 10:01 PM



Quick Reply: Idle RPM Timing Correction Clobbers Crank-To-Run Taper Time



All times are GMT -4. The time now is 12:32 PM.