Miata Turbo Forum - Boost cars, acquire cats.

Miata Turbo Forum - Boost cars, acquire cats. (https://www.miataturbo.net/)
-   MEGAsquirt (https://www.miataturbo.net/megasquirt-18/)
-   -   Brain MS3X Idle 'Issues' (Idles at 3k) (https://www.miataturbo.net/megasquirt-18/brain-ms3x-idle-issues-idles-3k-92783/)

sonofthehill 04-20-2017 10:42 PM

I agree, don't touch the PID's if the idle valve is stable.

Without looking at anything. How about another parameter that you have messed with, that moves a bunch when your idle problem occurs in your log.

ridethecliche 04-20-2017 10:58 PM

I mean, I could go right back to the base tune that Brain sent me tonight and then make changes ONLY to the engine state settings. I might start there and see how it goes. The only changes I made between things idling well and going nuts were:
1) Engine states. But this is something that's necessary for the new firmware. I could always come back down to 1.4, but I'm guessing it's just a matter of time till I have to go up again. Or not. I got these as described in a previous post. I believe my fast accel rpmdot might be incorrect, which is why I'll test that again later. As Dr. Boone stated, the 'correct' numbers don't really help with idle, i.e. if they're too close to the values one gets, it causes idle to trigger slow accel/decel and run an annoying loop there. My goal adjusting pid gains and pid delay was to 'blunt' this. (that's what the manual says anyway!)

2) VEAL. Self explanatory. I can add a filter here to tell it to not touch anything below 1-1.2k rpm.

3) Idle valve output test. I did this on the test mode to figure out what my open and close settings were. I didn't know what the homing steps were, so I left them as is and just started from the middle of my range and went up till I stopped getting higher idle and then down till I stopped dropping rpms. I think this is the right way to do it.

4) Adjusted closed loop idle initial values. The numbers Brain had put here were very different from the numbers I got from my idle valve.

5) Changed values for wideband because it had the wrong voltage:lamba readings for the xseries.

Sonofthehill, when I'm having this issue, the idle valve is cycling through a range of about 5 every few seconds. I think that has something to do with the engine states oscillating...

dr_boone 04-20-2017 11:14 PM

Open up the engine states page and just let it idle. If it changes state while it should be idling. Adjust accordingly after it stays in idle then you can tune your idle if needed. Mine did the crazy idle with my map too high and with the slow acceleration and decell to tight with the idle. When you get the states tuned your idle should be much better. Mine idles well now

VcrMiata 04-20-2017 11:32 PM

In my little experience with tuning engine states I have discovered that the slow deceleration setting does not work if you set to max idle RPMdot + a few RPM.
The setting must account for the maximium RPMdot encountered while converging on the idle target RPM otherwise you will oscillate in and out of closed loop idle, which is what I see in your log.
For example: my maximum RPMdot while in idle is similar to yours, around 50 RPM, however my maximum RPMdot while ramping to the target idle RPM can be as much as -450 so I set my slow deceleration to around 500.

Also, I think there is a problem in the 1.5.1 beta where target idle RPM is not reset if you drop out of CL idle and then re-enter idle engine state shortly after.
My guess on how things work ...
Entry into idle appears to be a two phase operation:
1) when entering idle engine state, the PWM duty cycle is set to idle initial value table value based on current RPM (not MAT/CLT target RPM mapped value)
2) after idle engine state meets closed loop entry criteria; the idle target RPM PWM is set based on initial value table from 1) and then ramps down from current RPM down to the initial value table PWM value based on MAT/CLT target RPM value.

However, if you drop out of closed loop idle due to exceeding the slow deceleration value, re-entry into idle engine state returns PWM to the value associated with the initial value table based on the current RPM but when entering closed loop idle, the target RPM and associated PWM is not set based on the initial idle engine state RPM again, instead the target RPM continues to ramp down and therefore the PWM as derived from the initial value table which will continue to ramp down too. This means the difference from idle engine state PWM and closed loop PWM is greater which causes an even greater RPMdot value in an attempt to reach the target RPM - oscillation in and out of closed loop idle will result.

The following shows the issue when my slow deceleration was set to 300 instead of 500 - at 500 this no longer occurs:
https://cimg3.ibsrv.net/gimg/www.mia...7556a58956.png

ridethecliche 04-21-2017 12:26 AM

Thank you both! I'll try to adjust things accordingly. I did notice improvement with the values way higher than I thought they should be...

I'll compensate with the exaggerated slow deceleration. That had helped when I was working on it in the parking lot. I just thought I was overcompensating for errors elsewhere. I looked through my logs and my most negative RPMdot during those fluctuations is -300. I'll start with that and see if it helps. Also, my RPMdot max is 300 during that time. Did you find that increasing slow acceleration threshold was necessary at all? I set mine to 100 but might consider raising that next if the idle issue doesn't resolve with just the change to the decel value.

Ugh, should I just go down to 1.4?

ridethecliche 04-21-2017 03:03 AM

2 Attachment(s)
It's definitely a bit better now with the more exaggerated slow accel/decel threshold, but it still acts weird when it's all warmed up and idling...
The PWM idle moves around quite a bit too. I wonder if this is due to the idle valve value being too low though. I don't know enough to say. Brain, what say you?

Braineack 04-21-2017 09:32 AM

you know what's a good way to tune engine states? 1.4.1

Onyxyth 04-21-2017 09:47 AM

I would make a few changes, I'm sure Braineack can weigh in too.

I think lowering the Closed Loop Idle PID Gains slider a bit would be the most helpful. This looks like PID is overshooting, then overcompensating, overshooting again, etc.
Flatten your fueling for the idle cells. The ~6 or so block of cells near your idle range, make them all the same (and then lock them so VEAL can't change them). A bit richer than you have now would be good (14.5 or so AFR, maybe richer depending on how well your injectors perform).
You could also bring up your Idle Valve Minimum Duty a few %. So it doesn't command less than say 30%. In your logs its tipping down to your minimum of 27.8% and that's just before you hit ~700 rpm.

Your spark advance is oscillating too, but I don't know much about that. I want to suggest turning off / flattening the RPM based idle advance, to rule out more variables, but like I said I'm not familiar with it.

Braineack 04-21-2017 09:58 AM

from that log, it looks like it was idling well on a/c, then you blipped the throttle and turned off the a/c and disrupted everything.... is this correct?

you went really lean when you blipped the throttle, and fueling never really stabilized.

yeah the idle valve is swinging a bit, but it's a 2% swing. I think the fueling swing of 0.5ms of fueling is what's causing it (a 5% swing in the VE value).

notice how smooth it idles when your VE is locked at 60% when the a/c is running, vs when it's off in that log.



https://cimg8.ibsrv.net/gimg/www.mia...d962ad81c6.png


I'd probably change my idle ve table to look like this:

https://cimg1.ibsrv.net/gimg/www.mia...b0468db5ed.png


and then tune it in real life. Look at your MAP with a/c running, you're only using two rows because you never see map as high as 45kpa with the a/c running, your logs look like you hit a max of about 40kpa.

I see other things like the the a/c idle up duty % is too high. youre idling well above the 1000rpm target and at it's 5% limit to bring the valve back down. Which is surprising because going from 30% idle duty to 40% isn't a whole lot but bumping you up like 350rpm. quick math says use 6% adder instead.

ridethecliche 04-21-2017 10:13 AM

Thank you both.

Onyxyth, I noticed the spark advance too when I was watching things oscillate in my car. Brain, do you have any input for this? I.e. what to do about that one spark cell that's at 17 (from memory) and seems to make the oscillation more pronounced? Or do you think that fixing the fueling etc should keep things from jumping into that range?

I'll input the fueling changes that you're recommending. Should I modify the closed loop initial values table to match the ranges in your Idle VE table as well?

Re: blipping the throttle. Yes. I made some changes to the engine states (i.e. expanded the range of the slow accel/decel) and was trying to unsettle things to see if I could trigger the bad behavior after making said changes.

Should I enter idle test valve mode and basically make a chart of the idle valve value: rpm? Would that be helpful at all in figuring out the last bit of AC issues?

Braineack 04-21-2017 10:27 AM

yeah its always a good idea to plug in the actual min/max values.

sonofthehill 04-21-2017 11:42 AM

But don't make the initial values table match the idle be table.

Not having looked at your logs. If timing is jumping from 10° to 17° at idle can you just adjust the 17° cell that it is reaching to 10°? Timing fluctuations will cause idle changes.

dr_boone 04-21-2017 12:00 PM

Timing fluctuations will make the idle stable if done correctly. And the initial duty has to be tuned in 1.5

ridethecliche 04-21-2017 12:22 PM

There's one cell with 17 degree timing that seems to throw things off. I think brain's point was that if fueling is dialed in better, idle won't jump to that cell. I have no issue moving over the base timing cell (10 degrees) one more column over to smooth things out. There are two cells at 24 and 35 kpa and 1500 rpm that are 18 and 19 respectively. Realistically, the car shouldn't really be seeing them at all since it shouldn't be idling over 1000, but maybe it would make sense to smooth out the table a bit? Right now the RPM's are 500, 800, 1000, and 1500. Maybe moving things up to 600, 900, and 1200 would be better for sorting this out.

That said, this is something that I would touch only after making sure that other things like fueling, PID, and the initial duty table weren't affecting things since those might be responsible for causing the rpm fluctuation to begin with. I feel like adjusting spark to solve this is taking a hammer to solve things, no?

I think one of the things I'm going to do in the next bit is to take the car to a mechanic and see if I can pay one of the smaller shops in my neighborhood 5 bucks to get the timing checked. Or just get the stupid thing from HF. I'm 90% sure that mine is base timing because I had the car running stock with a new TB before the MS install and it wouldn't have run if the timing wasn't dead on 10 degrees since it's an NB and there's no way to advance it with everything stock.

sonofthehill 04-21-2017 12:31 PM

Fair enough.

Braineack 04-21-2017 12:45 PM

on your log, the timing is always targeting 10°, the adapative timing is what's causing it to move.

turn on spark map 1 on the log...

Braineack 04-21-2017 12:55 PM


Originally Posted by Braineack (Post 1407830)
on your log, the timing is always targeting 10°, the adapative timing is what's causing it to move.

turn on spark map 1 on the log...

https://cimg7.ibsrv.net/gimg/www.mia...e1b1443be5.png

ridethecliche 04-21-2017 01:23 PM

That's weird, it was going to the other boxes I mentioned the last time. Should show up in the idle log I posted a day or so ago. I'll make sure its on all the same.

Braineack 04-21-2017 01:24 PM

then your idle was either over 1500rpm or less than 800. :P

ridethecliche 04-21-2017 03:05 PM


Originally Posted by Braineack (Post 1407842)
then your idle was either over 1500rpm or less than 800. :P

Wouldn't it start making those changes if the idle went above 1k? Doesn't it interpolate between values internally?

Like here:

https://cimg9.ibsrv.net/gimg/www.mia...baf40599c6.png


All times are GMT -4. The time now is 05:40 AM.


© 2024 MH Sub I, LLC dba Internet Brands