Page 1 of 1

Feature discussion: cranking PW taper

Posted: Wed Oct 05, 2011 9:23 am
by hoveringuy
In converting my BMW M54 from the factory ECU to MS3, I have the luxury of being able to swap back and forth to see how the factory ECU behaves when I need to set Megasquirt parameters. Most are fairly straightforward, like fuel timing, cranking ignition advance and so on.

When it comes to cranking Pulsewidths, I found the results weren't as easy to translate. Attached is a composite picture of the prime and cranking pulsewidths over a span of 10 cranking revolutions. As the engine cranks the PW for cranking fuel decreases. This was consistent over a a great span of temperatures, the final cranking pulse is typically 25% less than the first one.

This makes sense to me because as the engine cranks the manifold pressure is drawn down and decreases from 100KPa; having a constant PW would effectively make the charge richer.

I would love to emulate the behavior of the stock ECU in that it always starts on the first crank, the tapering PW may help.

My suggestion would be to allow cranking PW to decrease by XX% over 10 engine revolutions.
OEM cranking fuel.jpg
I logged the starting pulsewidths with the fuel pump disabled over a great range of termperatures. The graphical data look like this:
cranking pulsewidths.jpg

Re: Feature discussion: cranking PW taper

Posted: Thu Oct 06, 2011 7:03 am
by hassmaschine
that's pretty cool. a 2 point curve could handle it (or I guess one data field, assume the other end was 100%). Anything that could decrease cranking time and make the engine start more reliably would be a win in my book.

Re: Feature discussion: cranking PW taper

Posted: Thu Oct 06, 2011 10:55 am
by tpsretard2
I would LOVE to see this happen.
I think it would take care of a good few starting problems.

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 8:55 am
by hoveringuy
I see that the factory ECU's scale cranking PW down with the number of crank pulses (I'm guessing they assume a MAP profile with number of cranking revolutions).

Since we have MAP, how about an option to scale the cranking PW to baro? 100% would scale pwcalc1 down 1:1 with reduction in MAP so it would be 70% of initial value when MAP is 70KPa. 50% would scale it down less, it would be 85% of the initial value when MAP is 70KPa. 0% would use the table value only.

I would be very interested to see how this effects starting!

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 9:32 am
by elaw
It's interesting, I've also thought about whether cranking PW taper would be helpful.

But my reasoning has centered not around MAP but around the fact that presumably when you begin cranking, the port walls will be completely dry so some fuel from the first few squirts would land on the walls and not be available for combustion. Presumably as cranking continues (and/or after the engine starts) that fuel would evaporate (and get replaced with other fuel, that's where EAE comes in).

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 9:42 am
by jsmcortina
elaw wrote:It's interesting, I've also thought about whether cranking PW taper would be helpful.

But my reasoning has centered not around MAP but around the fact that presumably when you begin cranking, the port walls will be completely dry so some fuel from the first few squirts would land on the walls and not be available for combustion.
Correctly set priming pulse _ought_ to cater for that though?

James

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 11:27 am
by elaw
True... although one thing I've never been clear on is exactly when the priming pulse happens? Naturally the fuel pump would have to build up pressure first or not much fuel is going to come out when the injectors are pulsed. Of course the other side of the coin would be if the driver quickly turns the key from "off" through "run" to "start", the cranking cycle will begin very quickly, possibly before a delayed priming pulse would have time to happen.

One interesting approach, if the priming pulse does occur a fixed time after power-up, would be to add the priming pulse width to the injection pulse width for the first injection (on each cylinder) if injection starts before the priming pulse has a chance to occur.

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 12:29 pm
by hoveringuy
elaw wrote:True... although one thing I've never been clear on is exactly when the priming pulse happens?
Fuel pump is turned on and priming begins almost immediately after the variables are initialized, and before the main loop. So, as soon as key goes to IGN position. Fuel pump runs for 2 seconds if there is no crank, or until rpms drop back below 50 if it did crank.

I think it's conceivable that prime will be inconsistent given that the priming command happens instantaneously after the fuel pump is turned on and pressure may/may not have built.

In the BMW, prime happens at first crank rotation, AFTER the pump has run.

It bugs me that when I need to turn the key to IGN to connect the laptop to the Megasquirt that I am priming.

I would like to see prime moved to after the skip pulse to 1) ensure system is pressurized and 2) let me apply power without priming

The prime code could be moved to the ISR_Ign_Timer INTERUPT section and executed when pulse_no == no_skip_pulses

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 12:36 pm
by jsmcortina
Hold the throttle wide open at key on to prevent priming fuel pump operation.

James

Re: Feature discussion: cranking PW taper

Posted: Fri Oct 07, 2011 12:43 pm
by hoveringuy
jsmcortina wrote:Hold the throttle wide open at key on to prevent priming fuel pump operation.

James
Good tip!

Re: Feature discussion: cranking PW taper

Posted: Mon Oct 10, 2011 6:59 am
by hoveringuy
I've been logging each start, before I crank it over I record the CLT temp and the cranking pulsewidth. Priming is constant, but I change the cranking PW curve. The idea is that I should be able to graph where it does start, and where it's too rich or too lean. Problem is, the best I've been able to do is to determine where it's "most likely to start".
ScreenHunter_13 Oct. 10 06.43.jpg
Units are degrees F and and percent Req_fuel

The tapering cranking PW is the only thing the OEM ECU does differently but it started every time!

Edited to add units to chart.

Re: Feature discussion: cranking PW taper

Posted: Mon Oct 10, 2011 7:22 am
by jsmcortina
There must be some other problem to have that many no-start events. Also what are the units on the plot?

James

Re: Feature discussion: cranking PW taper

Posted: Mon Oct 10, 2011 6:19 pm
by hoveringuy
Attached are my MSQ and a start followed by a no-start. It's been hit or miss on the starts and if someone can find something I've screwed-up or can improve I'd appreciate it.

Sometimes I can crank 5 or 6 times with no start, but if I swap the stock ECU it will start instantly.