Page 1 of 1
IAC still missing steps?
Posted: Mon Sep 07, 2009 5:11 am
by Philip Lochner
Hi guys
I don't want to stir but sincerely would like to know if the latest B&G code is still missing steps during the engine warm up cycle. Ken has been able to make IAC behave 100% reliable (even with the resistors under the MS2 board) in closed loop - always on (but not moving only - AFAIK) in the Extra code.
I've been running on Extra code since B&G 2.86 (when IAC would still misbehave now and then requiring a restart) but there are specific reasons (It has to do with off-roading conditions when you want to slow the vehicle down to well below idle speed but not disengage the clutch) why I would like to know if IAC has perhaps been sorted in the mean time. I found using a minimum step size of 8 worked fairly well with 2.86 but not always.
Re: IAC still missing steps?
Posted: Mon Sep 07, 2009 8:54 am
by Philip Lochner
Lance wrote:Why don't you compare the source codes and let us know what the differences are?
1) What I know about source code is dangerous;
2) There might be ethical reasons
Lance wrote:FWIW, I don't have any problems with my GM IAC, and haven't for a long time
Thanks Lance. This is all I need to hear. The thing is that the 2.86 code is running on a game viewer I squirted some time ago (150 miles from my home) and I know it does not idle at the same idle speed with every start due to this issue. Its not intolerable but just not consistent and it is noticeable and it bothers me a bit. I'm having to decide what to do about it. Upgrading to 2.889 to solve this issue would be easy (just flash the 2.86 msq) but going to Extra fw (for the sake of closed loop idle) would be a lot more work and MAY present issues - when I'm not there.
Re: IAC still missing steps?
Posted: Mon Sep 07, 2009 2:20 pm
by ForumAdminTeam
Guys,
In fact, our rules on discussing the merits of different codes
require referencing the source:
4.b) Posts and threads comparing the merits or 'features' of code versions from different authors must remain factual, and must be based on the contents of the actual source code, not hearsay, supposition, or any other source of claimed benefits. This is because such discussions can become inflammatory, derogatory, and filled with false or misleading information. The MegaSquirt® EFI controller effort is, above all, an educational project, and users *will* learn something by trying to make sense of the source code. Those unwilling to do this are not qualified to comment on anyone's code, much less compare them. Discussions of various code versions from different authors must respect both the authors and the codes of all developers. Posts comparing codes that do not meet the above restrictions will be removed, and the poster(s) may be warned or sanctioned.
http://www.megamanual.com/rules.html
Forum Admin Team
Re: IAC still missing steps?
Posted: Tue Sep 08, 2009 6:49 am
by grippo
I think the answer to the question of the differences in the code is that extra has closed loop idle. If certain stepper motors/ installations result in missed steps, no code can really fix the missing steps - it's not a code issue but a hardware issue. However, you can do things to make the problem imperceptible. If there were a feedback that indicated the position ( for example a linear pot) then you could keep giving step commands until it got to the desired position. But that is not a trivial addition. We tried accumulating steps and then commanding them all at once, that helped a lot of people. But it is still not perfect.
To make it perfect you need closed loop idle. This in effect keeps giving the motor step commands until it gets the idle rpm where you want it. To do that right is not a trivial task, and I know Ken has spent a great deal of time on it. We have not got round to putting it in the B&G code because we don't have a lot of time, and we have other priorities, namely the model based work. When this is done and tested we expect closed loop idle to fall out of it naturally.
Re: IAC still missing steps?
Posted: Wed Sep 09, 2009 9:17 am
by Philip Lochner
Thanks Lance
1) Done
2) using 4ms (tried many values in fact)
3) using 8
4) Yep, understood that IAC needs a reference to work from, in this case the fully open position. Found 160 to be a good start value that still ensured 100% retraction. (Closed loop uses the fully closed position as the reference)
5) This is where the trouble starts....
The Rover V8 EFI has two idle air passages, the "base idle" circuit and the IAC idle circuit. These two circuits allow air past the throttle plate and run in parallel. "No" air comes through the throttle plate and can not be adjusted either. Neither circuit is large enough to supply the full amount of idle air. I tried it but then whichever circuit used would generate a most intolerable whistling.
The "base idle" circuit can be adjusted and should be adjusted for about 500rpm while the IAC circuit is fully closed. The balance of idle air thus comes from IAC which is why it should and can not close fully. This is also then why changes in its final position result in different idle speeds.
You did raise an important issue though Lance: Always on vs moving only.
I did not try "always on" (with 2.86) as at that time I believed that either the IAC would be fried or my MS2 would. Closed loop for IAC (Extra FW) ONLY works on "always on" (in my case at least) and I have since come to realise that, even though the IAC gets rather hot, it seems to be OK as mine is still working fine though I've done trips of several hours at a time. I have found though that my MS enclosure gets SUBSTANTIALLY hotter than before with "moving only" and I now leave the top cover off for better ventilation as a precaution. I'm convinced it is the stepper chip being always on that generates all that heat.
Knowing now that the IAC should be OK I should try the "15 minute always on" setting. Chances are, that will work! (and a FW upgrade will then not be necessary)