Jump to content

Stalling Issue


Nettlez

Recommended Posts

I have got an issue where the engine is stalling when coming to a junction, slow small drop in rpm and the engine just cuts out, it seems better when cold.

The map is from my old engine which was a 2.8 m50 engine, this is now a forged 3.15 m50 engine with mainly a different intake cam, lower compression ratio and slightly bigger turbo

I have tried upping the anti stall gain table for when hot considerably but no joy, I have also upped the other two idle gain tables a little but still no joy

Any help would be greatly appreciated, I am currently trying to run the engine in as its a fresh build but this is making life difficult

Here's the link to the log

http://s000.tinyupload.com/index.php?file_id=02198640419418476795

Current Map.pclr

Link to comment
Share on other sites

I dont think the log shows it stalling so we may not be seeing the real cause, but a couple of things I notice: 

  1. ISC RPM lockout is set quite high @1500RPM, something like 400RPM would be more normal.  This lockout is added on to your target idle RPM, so if your target idle is 1000RPM and your lockout is 1500RPM, then the ecu will try to take over idle control at 2500RPM, closing the idle valve trying to bring the RPM down to target.  Also, the minimum clamp needs to be set to 15% on these valves.
  2. Your Aux 2 frequency is set to 100Hz (I notice our E36 base map is also), that seems lower than expected to me.  The last car I tuned with the bosch 3 wire valve I used 200Hz and had good control range. 
  3. There are some odd spikes of low ignition dwell recorded in the log.  This may indicate a trigger issue.  Can you do a triggerscope at idle.

 

Link to comment
Share on other sites

4 hours ago, Adamw said:

I dont think the log shows it stalling so we may not be seeing the real cause, but a couple of things I notice: 

  1. ISC RPM lockout is set quite high @1500RPM, something like 400RPM would be more normal.  This lockout is added on to your target idle RPM, so if your target idle is 1000RPM and your lockout is 1500RPM, then the ecu will try to take over idle control at 2500RPM, closing the idle valve trying to bring the RPM down to target.  Also, the minimum clamp needs to be set to 15% on these valves.
  2. Your Aux 2 frequency is set to 100Hz (I notice our E36 base map is also), that seems lower than expected to me.  The last car I tuned with the bosch 3 wire valve I used 200Hz and had good control range. 
  3. There are some odd spikes of low ignition dwell recorded in the log.  This may indicate a trigger issue.  Can you do a triggerscope at idle.

 

Thanks for the info I will try adjusting it. Yeah I uploaded the wrong log sorry, heres the right one, it nearly stalls then actually does stall

http://s000.tinyupload.com/index.php?file_id=15704473844804950514

Also heres a link to a scope at idle

http://s000.tinyupload.com/index.php?file_id=05225190735803187576

Thanks

Link to comment
Share on other sites

I think Adam's first point around RPM lockout is probably going to fix it on its own. In that last log you can see the idle control taking over when you are at 2000rpm (58 sec) and its closing off the idle valve a whole lot over the next 5-6 seconds. It technically kicked in a couple seconds earlier but has a 2 second timer before it does anything. By the time you get to ~1000rpm where you want to idle, the idle valve has been closed from ~35 where it needs to be, down to ~11, which is clearly not a usable value. If idle control only had 2-400 rpm to work with, it would probably get through this within the 2 second decel timer, or at least not have time to do any real damage to the idle % number.

Your idle base number for 90degC should also be 35 rather than 30. This will mean the closed loop control is having to do "less work" and may make it idle better shortly after startup (when CL hasnt done its learning thing yet). Because this value is so far off, I suspect you haven't done the open loop idle tuning process that you should really do before switching to closed loop. You can fudge this though by starting it from cold with CL on, logging idle % while it warms up, then taking the logged CL values and putting them into the base target table. Then extrapolate this table down to really cold numbers.

Link to comment
Share on other sites

Yeah I have done what Adam put and took it for a couple of drives and it seems loads better with just those few changes, it hasn’t stalled while driving. It been stalling on start up though, I have been reviving it a little for like 10 seconds then it’s fine.

No I haven’t done the open loop idle tuning process, Im just running the map from when it was last time on the old engine, I will have to look into what you have said, fingers crossed it will improve it further with these changes! 

Link to comment
Share on other sites

1 hour ago, cj said:

I think Adam's first point around RPM lockout is probably going to fix it on its own. In that last log you can see the idle control taking over when you are at 2000rpm (58 sec) and its closing off the idle valve a whole lot over the next 5-6 seconds. It technically kicked in a couple seconds earlier but has a 2 second timer before it does anything. By the time you get to ~1000rpm where you want to idle, the idle valve has been closed from ~35 where it needs to be, down to ~11, which is clearly not a usable value. If idle control only had 2-400 rpm to work with, it would probably get through this within the 2 second decel timer, or at least not have time to do any real damage to the idle % number.

Your idle base number for 90degC should also be 35 rather than 30. This will mean the closed loop control is having to do "less work" and may make it idle better shortly after startup (when CL hasnt done its learning thing yet). Because this value is so far off, I suspect you haven't done the open loop idle tuning process that you should really do before switching to closed loop. You can fudge this though by starting it from cold with CL on, logging idle % while it warms up, then taking the logged CL values and putting them into the base target table. Then extrapolate this table down to really cold numbers.

So just to clarify for simple me, by logging idle % you mean idle position in the log parameter list? 

 

Also by saying my base number for 90 degrees should be 35 does that mean that anything above that should also be 35? So 35 at 100 degrees? 

Link to comment
Share on other sites

4 hours ago, Nettlez said:

So just to clarify for simple me, by logging idle % you mean idle position in the log parameter list?

Yes - the logged value is "idle postition (%DC)" 

In my scribbled on screenshot below you can see that about 8-9 seconds into your log, your ECT is 89*C and the idle position at this time was just on 35%, so this value clearly works. 

Based on this, i'd say change the current "30" in idle base table @90* to be "35" instead. As for what you do with the cells in the rest of the table, you should really just warm it up from 0/5/10/whatever ambient is near you, and without touching anything, just record the values that closed loop is using to get the idle you want, then put those into the base table. The quick and dirty way to get a good start point is take the 1x known value you now have, and follow the same pattern you currently have - eg same value from 70 up, adding 2-3 points every 10 deg below this. So yes, 80 and 100 would both also be 35.

image.png.bbc8a08260f8285b6a11866266ecef60.png

Link to comment
Share on other sites

  • 2 weeks later...
On 4/25/2019 at 4:34 AM, cj said:

Yes - the logged value is "idle postition (%DC)" 

In my scribbled on screenshot below you can see that about 8-9 seconds into your log, your ECT is 89*C and the idle position at this time was just on 35%, so this value clearly works. 

Based on this, i'd say change the current "30" in idle base table @90* to be "35" instead. As for what you do with the cells in the rest of the table, you should really just warm it up from 0/5/10/whatever ambient is near you, and without touching anything, just record the values that closed loop is using to get the idle you want, then put those into the base table. The quick and dirty way to get a good start point is take the 1x known value you now have, and follow the same pattern you currently have - eg same value from 70 up, adding 2-3 points every 10 deg below this. So yes, 80 and 100 would both also be 35.

image.png.bbc8a08260f8285b6a11866266ecef60.png

Just noticed my idle ignition control was set to 2000, should this be 1400 so it’s online with the idle speed control total? 

Link to comment
Share on other sites

There can be reasons you would want this to be different (such as trying to get revs to drop quickly to X then drop slowly from there down to idle), but its probably a good idea to start with them at the same value so you can tell if you are dealing with all idle values or all normal values. Remember that ignition idle rpm cutout is an absolute value, and throttle idle rpm cutout is value + target idle value.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...