Hot start, lean condition idea.

This is a forum for discussing the development and testing of alpha MS2/Extra code. Documentation
(Runs on MS2 and Microsquirt)

Moderators: jsmcortina, muythaibxr

Post Reply
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Hot start, lean condition idea.

Post by ol boy »

My 306 Ford suffers bad from the hot start lean condition. I've came up with a fix using flex fuel input over CAN bus. I have a Teensy3.2 receiving CAN messages and have figured out the 29bit CAN protocol to reply to request messages from MS. Long story short... I reply with ADC0-3 for baro and PWMCAN0-3 for flex fuel.

Under flex fuel I set the input as PWMCAN0. Set the ethanol limits to 90 for 50hz and 110 for 150hz. 24Mhz, 128 divider.. to get 100% correction from flex I send a value of 1886(100hz) over CAN for 100% correction of fuel(no correction). If the car has been driven and turned off, on next power up the teensy sees CLT and MAT above 90*F I send over CAN a PWM value of around 1500(150hz = +10% fuel ) and keep track of engine run time. Every second I add a value of 4 until I get back to 1886(100hz) CANPWM value. This takes roughly 96 seconds. At this time the engine has stabilized for the most part. Lean condition has past and the car drives nice again.

I have began to notice that the MAT temp seems to determine the initial amplitude needed to start with while the CLT determines the time needed for the enrichment. I'm slowly working on a pair of slope math to solve for time and amplitude and the degrading result.

Of course this would be a lot nicer if it was coded into the firmware...

Just talking out loud.
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
142 guy
Helpful MS/Extra'er
Posts: 58
Joined: Thu Oct 22, 2015 9:05 am

Re: Hot start, lean condition idea.

Post by 142 guy »

Just an observation that may or may not alter your correction algorithm.

A number of engines suffer from the hot restart / lean run condition. On some of these engines, my Volvo B20E included, the problem is caused by injector heating. Hot injector compensation to deal with this problem in EFI engines was a term that I first saw in a paper published by a Ford engineer. The engines that most commonly suffer from the problem are old school in-line engines with the intake manifold / injectors located over the exhaust manifold. Radiant heat from the exhaust manifold results in significant heating of the injectors following a hot shut down. The fixes for the problem have been varied - on the Jeep in line 4 & 6 engines Chrysler retro fitted insulating socks on the injectors and a heat shield over the exhaust manifold to reduce the radiant heating of the injectors. The only reason this matters is that the problem typically resolves itself by cooling of the injector body by fuel flow. Your inclusion of engine run time in the correction method probably reflects this cooling factor. However, from experimentation, I have found that the problem resolves itself faster if you drive the car versus let it idle - I speculate that the higher fuel flow rate through the injectors cools them faster. As such, a fixed run time number is not optimal; but, should work as long as it is based on the worst case of idling until the problem is resolved.

My bodge at addressing the lean run on start up is to rely on EGO correction and apply a hefty dose of ASE for high coolant temperatures. I could address the lean run without the ASE by relying just on EGO correction; but, that would require that I set the allowable EGO correction really high. That is not something that I want to do because unconstrained EGO correction can mask other problems. It has occurred to me that a viable solution might be to write a piece of code that allows a very large EGO correction following a hot restart (based on engine coolant temperature) which then tapers to a reasonable steady state EGO correction limit based upon engine run time ( the time integral of engine load would probably be a better factor). So far, my mixed EGO correction and ASE bodge works satisfactorily so I haven't been particularly motivated to investigate anything more sophisticated.

I will put the caveat on these observations that, aside from some discussion of hot injector problems on some Rover V8s, I thought that the hot injectors - running lean was largely a non issue on V engines because of the separation from the exhaust manifold.
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

Last week I was able to blend both MAT ans CLT to produce a variable time and amplitude for each start. CLT produces the time constant while MAT produces the amplitude start point.

I'm seeing something like +10% fuel needed to cover the initial hot start to keep a stabilized rpm/map reading and slowly reduce that fueling over the next 2 minutes. This is worst case with MAT being around 200F and CLT around the same. My MAT sensor is located in the intake runner about 6 inches from the intake valve.

On the hot injector causing the lean condition... I wounder if its the temp of the fuel causing the issue. I have large aluminum fuel rails that absorb massive amounts of heat which then boils off the fuel in the rail. My aftermarket FPR does not hold fuel pressure in the rail with the fuel pump off. Pressure drops and the fuel boils off at anything over 150F. On the next start up fuel needs to get pushed back through the rails and cool the rails enough to not boil off the fuel before the pressure comes up.

I think your (142 guy) idea that there is a mechanical issue causing the lean hot start and not a code or ECU hardware issue is correct. The hardest thing seems to admit there could be a mechanical issue that few have considered.
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
142 guy
Helpful MS/Extra'er
Posts: 58
Joined: Thu Oct 22, 2015 9:05 am

Re: Hot start, lean condition idea.

Post by 142 guy »

ol boy wrote:
On the hot injector causing the lean condition... I wounder if its the temp of the fuel causing the issue. I have large aluminum fuel rails that absorb massive amounts of heat which then boils off the fuel in the rail. My aftermarket FPR does not hold fuel pressure in the rail with the fuel pump off. Pressure drops and the fuel boils off at anything over 150F. On the next start up fuel needs to get pushed back through the rails and cool the rails enough to not boil off the fuel before the pressure comes up.

I think your (142 guy) idea that there is a mechanical issue causing the lean hot start and not a code or ECU hardware issue is correct. The hardest thing seems to admit there could be a mechanical issue that few have considered.
I am using an FPR that was originally native to a Nissan 280 ZX. Between the FPR and the check valve on my fuel pump, I will slowly loose static pressure in the system; but, it takes a couple of hours. I did check fuel rail temperature for a 4-5 minute delayed hot restart (so no significant loss in fuel rail pressure). Following the 2 second prime pulse; but, before the engine was started, the fuel rail temperature was < 40 deg C. The engine hood was open for this test and ambient temperatures were cool which probably contributed to the low rail temperature. With the < 40 C rail temperature the engine still displayed its full hot restart - lean run condition. So, in my particular case I had reasonable fuel temperatures and still suffered from the high AFR on restart. If you are completely losing fuel pressure, that probably complicates the problem.

Volvo introduced the Bosch D jet electronic EFI in 1970 so it was one of the first applications of a large scale production EFI system. For whatever reason, on my B20E engine Volvo cast the holes for the injectors right in the head directly over the intake valve (seemed like a good idea at the time?). Aluminum holders for the injectors were mounted on the head directly over the holes. Being mounted directly on a cast iron head with aluminum holders made for good heat transfer to the injector body. Volvo became aware fairly quickly that they had a hot restart / lean run condition. Under the right conditions it would be bad enough to prevent the cars from restarting. Volvo's retrofit patch was to install phenolic insulators between the injector holders and the head to reduce heat transfer to the injector body. This patch did not eliminate the problem; but, seemed to be good enough to allow the cars to start and once started the problem would typically resolve itself within a couple of minutes.

I did do a little bench experimentation with the injectors to try and determine whether the lean run problem was caused by a change in the flow rate through the injector or perhaps a drastic increase in the injector offset (open time) which would have a more significant effect on fuel delivery at idle. If the problem was just due to a change in offset due to elevated temperature, that might be easier to address in software. My experimentation was minimal and not conclusive; but, the results suggested that the lean run condition was due to the flow rate changing at higher injector body temperatures. If anything, it looked like the offset on my Bosch 036 injectors was less at higher temperatures which would tend to cause a lower AFR than a higher AFR.
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

I had a thought this morning on the ride into work. I've been fighting a morning to evening tune problem now for a few years. I've had to invert idle gas law correction to help even out the EGO correction as the engine warms up. My intake is an aluminum carb intake with injector bungs welded in. The motor is boosted and I routinely see intake temps around 135+ during normal crusing conditions. My MAT sensor is located in the intake runner close to the intake valve. I would assume the intake and injector should be close to that measured temperature. I really would like to find a way to measure fuel temperature and pressure. I do have a ford sensor that does this but it's too tall to fit in the fuel rail as is.
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
aceswerling
MS/Extra Newbie
Posts: 18
Joined: Thu May 26, 2016 2:29 pm

Re: Hot start, lean condition idea.

Post by aceswerling »

Jumping into this post rather late...

I've been working this same issue on my 95 Miata with MS3.

Like you, I thought the problem could be hot fuel so I adjusted the mixture based on temperature via a flex fuel sensor. I see 15-20% swings in fueling if I don't account for fuel temp and this keeps the engine from starting consistently. I also see lean AFRs when a hot engine is running

I've found that adjusting for fuel temp helps but hasn't fixed the problem. I see issues at fuel temperatures in the 90-120* range, which is below where we should get vapor lock. I also have to add fuel as the temperature increases at a rate that's greater than the density of the gasoline expands. This is based on data from BP on the properties of their gasoline. That strongly implies the issue isn't just fuel temp.

I've suspected the problem is in the fuel injectors and it appears others concur. It seems the problem is related to heat soak more than anything else. I placed insulation around my injectors but this hasn't made a difference. http://designengineering.com/fuel-injec ... universal/ I also verified that this behavior corresponds to temperature variation by checking injector temps with a handheld laser thermometer. The lean AFRs always happen when they get hot.

I asked Injector Dynamics about lean AFRs on restart when I bought my new injectors and they said they've never noticed a performance change based on temperatures. Regardless, I'm having the same problems with their EV14-based injectors that I had with those from Flow Force and there's clearly an issue.

I'm inclined to agree with ol boy that we need some kind of fueling adjustment based on a temperature input other than MAT and CLT. He's inferring there's an issue based on high readings, but I'm thinking a more direct adjustment based on input from a themo sensor placed on an injector would be better. As he noted, it would be nice if this were included in the firmware.
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

I want to monitor fuel pressure and temps along with ethanol content down the road. I have a Ford pressure/temp sensor but it's far to big to fit in the fuel rail. In the end I can create a trim for the fueling over CAN, based on all these inputs. I'm glade there are others seeing this problem and not jumping on the MAT heat soak bandwagon. My idle gas law curve is no longer a curve, nearly a flat line at 100%. I'm pulling 4% at lower temps and adding at 135* and higher. Just to toss out there... I have noticed some odd behavior when I remove the injector rails and reinstall. The idle quality improves for a few weeks then slowly gets crappy again. Maybe my o-rings are a bit worn out and leak air over time. idk..

Ryan
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

Back from the dead update. Got to love the mid summer weather here in SoAz. One day its 110 and clear skys, next it barly gets into the mid 80s and rainy.
Checked some datalogs and the car is idling around 11 AFR.. wtf.. it was at 13.5 a few weeks back when it was 90* by 10am. This morning was 70ish by 11am.

Whats the energy density per ms squirt change from say 60* to 140*? Doesnt help that my idle pw is only 1.4ms. I think im still in the non-linear part of the curve which adds to the problem.

I think i found a cheap and easy way to measure fuel temp. More to come on this.

Sent from my SCH-I535 using Tapatalk
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
DaveEFI
Super MS/Extra'er
Posts: 4175
Joined: Sun Apr 15, 2012 12:55 am
Location: SW London, UK

Re: Hot start, lean condition idea.

Post by DaveEFI »

On my RV8 fitted with Lucas flapper injection (early 80s), the retrospective factory mod for cars effected by hot re-start problems, was to fit a valve in the fuel return. On a hot restart, this closed and raised the fuel pressure to the maximum the pump can deliver when cranking. When the engine fires, the valve opens and pressure reverts to being controlled by the regulator.

The injectors are rubber mounted, so not in direct contact with the manifold.
Rover SD1 3.5 EFI
MS2 V3
EDIS
Tech Edge O2
London UK.
TurboBob
Master MS/Extra'er
Posts: 504
Joined: Sat Dec 02, 2017 10:24 am

Re: Hot start, lean condition idea.

Post by TurboBob »

another thought, is using the realtime clock and the small amount of ram inside. We could write current temps and current time to the ram, and upon key on, compare startup temps, last run temps, current time and last run time and see if we are in a hot-soak restart condition, and apply a correction for it, or choose a different ASE curve.

The OEMs have done this for years, and our current hardware (MS3-Pro module based in my case) supports this sort of thing.

TurboBob
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

Little bit of an update. Installed a fuel temp sensor so I can track whats going on as I drive around. Hot starts are interesting. Temps will be as high as 165ish on the first reading as fresh fuel pushes through the rails. Over 60 to 90 seconds the fuel temps fall down to 100ish degrees. This follows the hot start running lean issue for a minute or so. I wrote some code on my GPIO board to change the CANPWM value for the flex fuel input based on the fuel temp. 70*F is 100% correction(1875), as fuel temp goes up so does the correction(CANPWN gets small "higher freg" more fuel). My drive to and from work are too short to see much change in fuel temps, so this will take some time to sort. Found that every 15*F change is temp is 1% change in fueling. 40*F to 110*F is enough delta for 5% change.

I'm playing with the idea of removing most of the knock code from 3.4.2 and replacing it with fuel temp correction. Basically would be on/off, and a 2d line graph. x axis for temp, y axis for correction around 100%. Almost a cut and past of MAT correction stuff. You could either read an analog input into ADC5/6 and convert to *F or the raw temp x 10 over CAN. ie. 1853 is 185.3 degrees. For testing I'm sending values over CAN from the GPIO board.

Ryan
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
racingmini_mtl
Super MS/Extra'er
Posts: 9130
Joined: Sun May 02, 2004 6:51 am
Location: Quebec, Canada
Contact:

Re: Hot start, lean condition idea.

Post by racingmini_mtl »

ol boy wrote:I'm playing with the idea of removing most of the knock code from 3.4.2 and replacing it with fuel temp correction. Basically would be on/off, and a 2d line graph. x axis for temp, y axis for correction around 100%. Almost a cut and past of MAT correction stuff. You could either read an analog input into ADC5/6 and convert to *F or the raw temp x 10 over CAN. ie. 1853 is 185.3 degrees. For testing I'm sending values over CAN from the GPIO board.
Just a suggestion but using a raw ADC over CAN would not add much work over using ADC5/6 and would be more in line with how CAN data is used in the rest of the code. Of course, adding a raw temp over CAN just adds more flexibility.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
ol boy
Super MS/Extra'er
Posts: 1532
Joined: Mon Sep 10, 2007 3:06 am
Location: Tucson, Az

Re: Hot start, lean condition idea.

Post by ol boy »

racingmini_mtl wrote: Just a suggestion but using a raw ADC over CAN would not add much work over using ADC5/6 and would be more in line with how CAN data is used in the rest of the code. Of course, adding a raw temp over CAN just adds more flexibility.

Jean
Correct on the ADC over CAN. I'm doing this with baro data at the moment. I'm also sending a 0 to 255 value for spark retard within the knock section of main.c. Modded the code to place one of the CANADC values straight into outpc.knk_rtd for a easy traction control. I'm able to measure front and rear wheel speed and do a %slip. Once past a threshold I begin to pull timing.

The raw ADC is going to be tricky as not all temp sensors are the same. Current sensor is a GM knock off from Dakota Digital and has it's own range which requires it's own bias resistor separate from the standard GM stuff. This is why I'm leaning towards only a 2 byte value of temp x10.

One thing I did notice in the source code is 2 arrays for the knock threshold. one set in page1 and another in page7, the .ini file has the page1 array commented out. Looks like the one in page1 is not used as the knock function uses the naming convention of page7 array.
306 SBFord, Torquer II EFI intake, 60 lbs injectors, 8 LS2 coils, VS Racing 7668 turbo, 4R70W, MS3x fw1.4 w/built in trans controller.
Post Reply