muythaibxr wrote:The code that didn't have the issue you're having is 2.1.0. I think I introduced the fix in the first 2.1.1. I do not know which 3.0.x to tell you to go back to to get that change out.
I believe I already have the fix worked in to 3.0.x, so the next 3.0.x release should have it fixed.
I'm working on merging a bunch of other stuff though, so no idea when the next 3.0.x will be released.
Can you give me more detail about this fix, or the fix itself, so I can build my own 3.0.3? This has been holding me up for the past few weeks and I'd like to move forward.
Looking at the ms2_extra_idle.c from 3.0.3h, it looks like the valve IS supposed to close when above RPM threshold (idle_closed_loop_throttlepressed)... something I was originally told was not the case - IIRC, I was told that, by design, no PWM changes took place beyond the threshold. Has this been changed? If so, I think I like the new direction. It makes more sense to me to have the valve closed based on the delay when above the threshold rather than returning to the cranking position or staying at the last position.
Looking at this code, though, I don't see why it's staying open at high RPM in 3.0.3h. Is it an issue with the PID lockout (flagbyte2 & flagbyte2_runidle)? Or is idle_closed_loop_throttlepressed not being called for some reason? ...oh, maybe I get it... THROTTLEPRESSED... is this occurring because cranking position revs high enough to get beyond the threshold and then, since TPS = 0 and RPM > threshold, neither idle_closed_loop_throttlepressed nor whatever other code should taper after cranking get called?
I just diffed the 1.4 and 1.6 versions of ms2_extra_idle.c. The 1.6 version is the current one, the 1.4 version is what I was using, where I did not have these problems. The only significant differences I could see for regular CL operation were a new check for PID lockout based on RPMDOT, and, associated with that, a check for JUSTLIFTED. I am going to try playing around with the RPMDOT lockout setting to see if I can find a work around with the current code.