MEGAsquirt A place to collectively sort out this megasquirt gizmo

Idle tuning instructions sticky request

Old 07-11-2011, 12:06 PM
  #1  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default Idle tuning instructions sticky request

Stable idle on my car seems to be the last piece of the puzzle that I need to solve. I get it spot on one day, then the next it seems like it isn't so good.

Would someone with a good understanding of the newer MS2/MS3 code be willing to write up a "sticky" worthy tuning guide? The msextra.com documentation is ok, but I never seem to get it quite right using those instructions.
miatauser884 is offline  
Old 07-11-2011, 01:12 PM
  #2  
Supporting Vendor
 
Matt Cramer's Avatar
 
Join Date: Sep 2006
Posts: 2,332
Total Cats: 67
Default

How's this?

http://www.diyautotune.com/tech_arti...le_tuning.html
__________________
Matt Cramer
www.diyautotune.com
Matt Cramer is offline  
Old 07-11-2011, 01:47 PM
  #3  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

Once you make sure your fuel and spark tables are smooth and consistent in your idle zone. I like to do the following things:

1. Learn your min/max idle duty %. You can do this two ways, the first being using idle valve test mode and bumping the duty up and down until you no longer see a noticable change in engine speed. remember the values, for a 90-93 you'll see it around ~25-62%. Aslo make sure to remember the RPMs these duty values obtain. The second method is using the Warm-up only mode and doing the same thing, just make sure you are doing it in an area that your CLT temp is sitting at. You should have one of your dashboard gauges displaying the idle PWM% so you know exactly what the MS is outputting.

2. Once you learn these values, plug them into your PID closed loop idle control parameters. So Idle Open Duty %, Idle Valve closed Duty %, RPM with valve closed, and RPM with valve open.

3. Now I like to start tuning, first, make sure your RPM targets are flat across the board for now, try 1000RPM to start. Now, turn PID values all to zero. Turn on your headlights and a/c blip the throttle and upset the idle and it will probably lock at >2500RPM. you can turn them off now. Now, start increasing the I value. When you slowly add I, you'll notice the RPMs slowly come down towards your target. Do this until you're within ~50RPM of your target...you'll notice the Idle PWM% moves in large chunks so it can only get close enough. Next start increasing P, cycle things like the headlights and a/c, the P term is used to reach your target faster when something causes it to move from your target...you should end up with a term that's above, maybe even double, that of I. Reduce it if you start to oscillate. Lastly you can increase D term, It dampens the effect so you dont overshoot the target when P and I are driving it up to the RPM target. You shouldn't need much.

This is the quick and dirty method and should get you rolling smooth and stable within a few minutes. Make sure the rest of the parameters are tuned to your liking, such as the TPS trigger, dashpot, delays, PID lockup settings, etc.
Braineack is offline  
Old 07-11-2011, 02:31 PM
  #4  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

I think this combination of information is excellent. I like the diyautotune instructions for getting things dialed in before closed loop, and then your explanation of the PID adjustment is great. I really think this is worth a sticky.

I started retuning yesterday. I dot to the point where my idle hung at ~ 2000 rpm. I figured something was wrong. I didn't think there was any way the I term would drop the idle so I started lowering the pwm duty curve.

Should the RPM target curve be set to what you want the idle to be, or is this a "fudge" factor that is used? I have mine set to 850 because that is where I want it to idle. Why did you choose 1000rpm? Should it be set above the desired target?
miatauser884 is offline  
Old 07-11-2011, 02:35 PM
  #5  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

tune the lockout suggested. I use something like 80 rpmdot (just above what I see at idle) and then 29 Kpa (just below what I idle at (32-33kPa).

Yes, the RPM targets is where you want to idle vs. clt temp. I gradually taper from 1500 at like 30* to 850RPM at 130*.

I chose 1000RPM for all intents cause it's a clean number with a hash mark.



and really, the key to smooth idle is well tuned AFRs and spark. If those aren't smoothed and in order, the idle code will fight. For exmaple, if you turn on the a/c and the timing is in such a spot where it jumps from 10* to 18* or something and doesn't hold solid at one or the other, you'll find that the spark advance will actually cause the engine spee dto change...then the idle valve will try to compensate, the timing will change and both effect the idle speed reversely and you end up in an endless oscillation.
Braineack is offline  
Old 07-11-2011, 02:48 PM
  #6  
Elite Member
iTrader: (1)
 
Full_Tilt_Boogie's Avatar
 
Join Date: May 2009
Location: Jacksonville, FL
Posts: 5,155
Total Cats: 406
Default

Brain speaks the truth; transitions in timing can make the idle very erratic.

Often times Ill make the idle part of the ignition map totally flat to start, then make small changed where needed. Thinking of the map in cells can be misleading, the interpolation between the idle cells and the cells just outside of that range can sometimes be dramatic, so its good to not only make the idle area smooth, but also make a smooth transition into the cells just outside of idle.

If it simply refuses to cooperate you can also fatten it up a bit, but that obviously not ideal.
Full_Tilt_Boogie is offline  
Old 07-11-2011, 04:21 PM
  #7  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

Would you guys elaborate a little more on tuning the idle cells? Typically I just pick a bunch of cells around where I idle and make all of the fuel cells the same and timing cells the same.

If you are in fact tuning the cells so the afr stays the same, or gVE as I've seen before (I thought his was just the fuel cell value) How are you increasing and decreasing the idle to get to the cells around the one it naturally idles? idle valve test mode?
miatauser884 is offline  
Old 07-11-2011, 05:34 PM
  #8  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

keep gVE stable. make sure it doesnt go rich or lean when you flip up your lights, or happen to idle faster or slower...the whole region needs to be tuned.

here's my idle map...you can see there's not big changes...the large step in fueling also has a large step in MAP...where the change between 35 and 25kPa rows is pretty much nil. Obviously at 45kPa my A/C is running.
Attached Thumbnails Idle tuning instructions sticky request-idle_ve.jpg   Idle tuning instructions sticky request-settings.jpg  
Braineack is offline  
Old 07-11-2011, 06:59 PM
  #9  
Junior Member
 
Greg G's Avatar
 
Join Date: Jun 2007
Posts: 411
Total Cats: 0
Default

Wow, nice. So tempting...
Greg G is offline  
Old 07-11-2011, 07:28 PM
  #10  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

what's the significance of the rpmdot disable? I think mine is significantly different. What's the method behind finding this value?
miatauser884 is offline  
Old 07-11-2011, 08:15 PM
  #11  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

seeing what your rpmdot at idle is and then putting the value around 10-15 above it. pid lockout means your idle hangs really high.
Braineack is offline  
Old 07-11-2011, 10:04 PM
  #12  
Senior Member
iTrader: (3)
 
Clos561's Avatar
 
Join Date: Nov 2009
Location: Royal Palm Beach, FL
Posts: 725
Total Cats: 5
Default

so i click, start up/idle then closed loop idle valve settings? i dont see where the values from there can be put into the closed loop pid settings
Clos561 is offline  
Old 07-12-2011, 12:42 AM
  #13  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

What are you guys setting your min value in the pwm duty table?

Edit:
4 hours of idling and I finally have something that is approaching a decent idle. Most of my setting swere still spot on from the first time I found them, idle valve etc. A big issue I am having now is that my VE cells have to be whole numbers, no decimals. I can't get the VE rock solid. It will oscillate from 15.0-15.2. Now I know, richen it up and it will be easier, and this might be how I have to do it. I'll play with the VE a little more on another day. Thanks for the great thread!

Last edited by miatauser884; 07-12-2011 at 01:22 AM.
miatauser884 is offline  
Old 07-12-2011, 07:32 AM
  #14  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

no reason to attempt to idle that lean. running it at 14.5 or 14 will make life easier and the engine will be happier.
Braineack is offline  
Old 07-12-2011, 08:43 AM
  #15  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

If we determine that an idle is tuned well, what should we do about the pwm duty table? Just pick a value that helps maintain the desired idle, or set it to the min. duty that the valve will see?
miatauser884 is offline  
Old 07-12-2011, 08:44 AM
  #16  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

if you have a pwn duty table available, that means you're not using closed loop.


the pwm cranking duty table is used to set your idle speed during/after cranking, before your PID kicks in, via the crank to run taper timer.
Braineack is offline  
Old 07-12-2011, 11:27 AM
  #17  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

Originally Posted by Braineack
if you have a pwn duty table available, that means you're not using closed loop.


the pwm cranking duty table is used to set your idle speed during/after cranking, before your PID kicks in, via the crank to run taper timer.
This makes sense. I'm running the mario version code. he did something so that you could control the idle valve for a given CLT during closed loop mode. I think my problem may be that this table is fighting the PID algorithm. I guess I need a better understanding of what is going on in the mario code. Any idea. My PWM duty table IS an option for closed loop.
miatauser884 is offline  
Old 07-12-2011, 11:34 AM
  #18  
Elite Member
Thread Starter
iTrader: (11)
 
miatauser884's Avatar
 
Join Date: Feb 2009
Posts: 2,959
Total Cats: 11
Default

Here is a screen cap of what I am talking about. I wonder if I should revert back to the regular code. Maybe this table is more of a bandaid for a less then ideal spark/ve tune around idle. It did seem to work, Almost making closed loop pointless. I gusee I'm a glutton poor punishment. I just can't accept not getting the PID tuned well.

miatauser884 is offline  
Old 07-12-2011, 12:27 PM
  #19  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,490
Total Cats: 4,079
Default

oh I dunno the mario code. It must be an open loop table used as a reference...that should be tuned without any closed loop. Then when you tune it and activate closed loop it has a reference point to work with, it'll default to the duty table, and use closed loop if it strays too far off the target.

it's a better way of doing it and I know Ken is working on something like that for Ms3.


and fwiw, all the closed loop code should be doing it rapidly getting to your target and then maintining it. Once you're at an idle speed, the idle duty should be more or less flat, only needing to compenstate for any changes in load/MAP/AFR/timing that effect the engine speed.

An open loop table only will output the dutys exact how that duty table dicates regardless of any other input.
Braineack is offline  
Old 08-28-2012, 11:21 PM
  #20  
Junior Member
 
MoonieGT's Avatar
 
Join Date: May 2010
Posts: 93
Total Cats: -1
Default

Originally Posted by Braineack
Once you make sure your fuel and spark tables are smooth and consistent in your idle zone. I like to do the following things:

1. Learn your min/max idle duty %. You can do this two ways, the first being using idle valve test mode and bumping the duty up and down until you no longer see a noticable change in engine speed. remember the values, for a 90-93 you'll see it around ~25-62%. Aslo make sure to remember the RPMs these duty values obtain. The second method is using the Warm-up only mode and doing the same thing, just make sure you are doing it in an area that your CLT temp is sitting at. You should have one of your dashboard gauges displaying the idle PWM% so you know exactly what the MS is outputting.

2. Once you learn these values, plug them into your PID closed loop idle control parameters. So Idle Open Duty %, Idle Valve closed Duty %, RPM with valve closed, and RPM with valve open.

3. Now I like to start tuning, first, make sure your RPM targets are flat across the board for now, try 1000RPM to start. Now, turn PID values all to zero. Turn on your headlights and a/c blip the throttle and upset the idle and it will probably lock at >2500RPM. you can turn them off now. Now, start increasing the I value. When you slowly add I, you'll notice the RPMs slowly come down towards your target. Do this until you're within ~50RPM of your target...you'll notice the Idle PWM% moves in large chunks so it can only get close enough. Next start increasing P, cycle things like the headlights and a/c, the P term is used to reach your target faster when something causes it to move from your target...you should end up with a term that's above, maybe even double, that of I. Reduce it if you start to oscillate. Lastly you can increase D term, It dampens the effect so you dont overshoot the target when P and I are driving it up to the RPM target. You shouldn't need much.

This is the quick and dirty method and should get you rolling smooth and stable within a few minutes. Make sure the rest of the parameters are tuned to your liking, such as the TPS trigger, dashpot, delays, PID lockup settings, etc.
I tried to give this a shot today using the second method identified in 1. above but I could not figure out how to enable warmup only mode and be able to adjust the min/max idle duty %. can some one direct me to the right menus in TS? Thanks.
MoonieGT is offline  
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
StratoBlue1109
Miata parts for sale/trade
21
09-30-2018 01:09 PM
Corky Bell
Prefabbed Turbo Kits
18
11-22-2016 09:01 PM
tazswing
Race Prep
20
10-03-2015 11:04 AM
The Gleas
MEGAsquirt
3
10-01-2015 09:30 AM


Thread Tools
Search this Thread
Quick Reply: Idle tuning instructions sticky request



All times are GMT -4. The time now is 05:04 PM.