Lambda Trim - Flat Lines ?
Lambda Trim - Flat Lines ?
Author
Discussion

blaze_away

Original Poster:

1,633 posts

234 months

Monday 27th January 2020
quotequote all
OK folks be of history

After much experimentation and data collection and analysis (I was a Six Sigma Black Belt and I love DATA) trying to find why I get poor fuel consumption I have gone through everything normal to no avail.
(ie Temp sensore, injectors, MAF, TPS, Plugs, Leads, Ignition timing and all components, ECU & Chips, tried various MAPS, green tune and white tune, camshaft, vacuum advance full and ported, and more besides, even changed front calipers in case they were binding).

Anyway I was analysing and watching RoverGauge collect data whilst the engine idled on the driveway.

I noticed that the short term Lambda trims, both Odd and Even were all working great and switching around Zero then suddenly one or both flat-lined.

They stayed like that permanently and came back if I touched the throttle the tiniest amount, not even enough to make the engine revs increase. The then carried on switching as normal.

What on earth would cause that ?




spitfire4v8

4,021 posts

202 months

Monday 27th January 2020
quotequote all
I often see that .. as you say just briefly touching the throttle brings it back to life.
Mixture stays at 14.7afr so I don't know if it's just that the lucas freezes the lambda cycling, or if it's a rovergauge thing.

either way up, what you're seeing is not unique from my experience.

blitzracing

6,417 posts

241 months

Monday 27th January 2020
quotequote all
Seen it loads too- its not RoverGauge, its the probe output,It has to do with gas velocity, as the switch speed goes up as the rpm goes up so its not ECU processing power or lambda response times.The ECU measures mixture more on the voltage swing point, not the against the actual voltage by that I mean is if you swing between 0 and 1.4 volts or 0 and .8 volts it will still control the mixture the same way as its looking for the shift around half a volt, so you cant frig the mixture by lowering the lambda output to make it think its lean. That would have been far to easy a way of fixing shunting!

Edited by blitzracing on Monday 27th January 20:52

blaze_away

Original Poster:

1,633 posts

234 months

Monday 27th January 2020
quotequote all
spitfire4v8 said:
I often see that .. as you say just briefly touching the throttle brings it back to life.
Mixture stays at 14.7afr so I don't know if it's just that the lucas freezes the lambda cycling, or if it's a rovergauge thing.

either way up, what you're seeing is not unique from my experience.
Great observation Jools, really interesting.....got me wondering now....

Questions that spring to mind...

1. Is this a "smoking gun" behind other owners posts "my car is running rich" that never really gets solved ?

2. Is it Inputs to ECU freezing or Outputs from RoverGauge freezing ?

3. If answer 2 is "Inputs to ECU freezing", does it really stick at 14.7 and how, if the inputs to the ecu are frozen ?

I am currently experimenting with looking at following:

Hypothesis

For each cycle of the engine 4.6 litres of air are drawn in and a fuel charge is delivered via the injectors. The variable quantity of fuel delivered per cycle is determined by pulse milliseconds on the injectors. (Assuming all other factors are equal, eg fuel temp, fuel pressure differential to manifold pressure ?)

Thus a crude measure of fuel consumption would be amount of fuel delivered per engine revolution.

and so from RoverGauge this becomes

Fuel Delivered per Revolution = PulseWidthMs/Engine Speed

eg 2.75/1000 = 0.00275 ms/rev

I am now experimenting with different hardware/ECU arrangements to see what this reveals.
eg
5AM MAF vs 20AM MAF (I have 5 of these)
Adding and subtracting small amounts Mechanical advance and Vacuum Advance
Full Vacuum vs Ported Vacuum
95 RON vs Super Fuels
White Tune vs Green Tune
Various ECU's (I have 3 of these)
etc

I shall have to have a read up on the "Design of Experiments" to determine what to do.

I will get to the bottom this.....

Below shows relationship of ms of fuel pulse per at various engine speeds.




Edited by blaze_away on Monday 27th January 22:19

blaze_away

Original Poster:

1,633 posts

234 months

Monday 27th January 2020
quotequote all
...further thoughts...

It would be good to get data for other vehicles for analysis....

Anyone got some rovergauge log files I can analyse ?

spitfire4v8

4,021 posts

202 months

Tuesday 28th January 2020
quotequote all
It would be an interesting technical exercise but unless you spend many hours a day at idle it won't be the reason for your poor economy .. as soon as any throttle movement is detected the switching begins again.
You've got me doubting my own info about the mixture staying at lambda=1 .. it might be that I just didn't give it long enough for the afr to drift .. because I am observing this on the dyno, and use the lambda trims for mapping part throttle, I always get them switching again by pressing the throttle ..

Maybe you can leave yours running in the flatlining scenario and see exactly what the afr does .. if it remains clamped to lambda =1 then the ecu is still modifying the fuelling despite what rovergauge is reporting. What blitz says suggests he's measured the probe voltage outputs when in the flatlining situation and the voltage no longer swings, suggesting that ecu fuelling changes were suspended.

Not sure I buy the gas velocity theory yet .. if that were true the the flatlining would happen pretty much all the time on idle and that's not my experience.

blaze_away

Original Poster:

1,633 posts

234 months

Tuesday 28th January 2020
quotequote all
blitzracing said:
Seen it loads too- its not RoverGauge, its the probe output,It has to do with gas velocity, as the switch speed goes up as the rpm goes up so its not ECU processing power or lambda response times.The ECU measures mixture more on the voltage swing point, not the against the actual voltage by that I mean is if you swing between 0 and 1.4 volts or 0 and .8 volts it will still control the mixture the same way as its looking for the shift around half a volt, so you cant frig the mixture by lowering the lambda output to make it think its lean. That would have been far to easy a way of fixing shunting!

Edited by blitzracing on Monday 27th January 20:52
Great stuff Mark.

Regarding the flat lining on the data chart in original post it happened whilst engine was at idle around 950 rpm.

blaze_away

Original Poster:

1,633 posts

234 months

Tuesday 28th January 2020
quotequote all
I am going to create a fish bone diagram with question being:

"What factors affect fuel consumption"

Then list what I have done on each of these factors.

Maybe I have missed something obvious.

blitzracing

6,417 posts

241 months

Tuesday 28th January 2020
quotequote all
What size engine was yours? I have a few chips with both white and green tune for some engine sizes, I can send you the bin file.

blaze_away

Original Poster:

1,633 posts

234 months

Tuesday 28th January 2020
quotequote all
blitzracing said:
What size engine was yours? I have a few chips with both white and green tune for some engine sizes, I can send you the bin file.
Brilliant thanks. Its a 4.6

blitzracing

6,417 posts

241 months

Tuesday 28th January 2020
quotequote all
Can you send me your bin file, ill see what I can do.

blaze_away

Original Poster:

1,633 posts

234 months

Tuesday 28th January 2020
quotequote all
blitzracing said:
Can you send me your bin file, ill see what I can do.
Will do. I have yr email address from previous.

Cheers
F

davep

1,157 posts

305 months

Thursday 30th January 2020
quotequote all
blaze_away said:
....

Hypothesis

For each cycle of the engine 4.6 litres of air are drawn in and a fuel charge is delivered via the injectors. The variable quantity of fuel delivered per cycle is determined by pulse milliseconds on the injectors. (Assuming all other factors are equal, eg fuel temp, fuel pressure differential to manifold pressure ?)

Thus a crude measure of fuel consumption would be amount of fuel delivered per engine revolution.

and so from RoverGauge this becomes

Fuel Delivered per Revolution = PulseWidthMs/Engine Speed

eg 2.75/1000 = 0.00275 ms/rev

....

Edited by blaze_away on Monday 27th January 22:19
Interesting project Blaze, good luck with it.

I'm fairly sure, but I may be wrong, that the PulseWidthMs factor in your basic fuel consumption formula may need to reflect the four injector bank (two even, two odd) firings per four stroke cycle (1 camshaft revolution, two crankshaft revolutions). So:

Time for Fuel Delivery per engine cycle = PulseWidthMs x 4 (amount of fuel delivered will depend on injector flow rate, etc)

e.g. 2.75 x 4 = 11 mS/cycle, or 2.75 x 2 = 5.5 mS/revolution

Whereas, a total of 2.75 microS/rev is far too low, taking into consideration typical injector pulse widths (1.8 to 10 mS) and time per revolution:

900 rpm = 66.6 mS
1800 rpm = 33.3 mS
2700 rpm = 22.2 mS
3600 rpm = 16.65 mS
4500 rpm = 13.25 mS
5400 rpm = 11.1 mS
6300 rpm = 9.5 mS

This timing diagram may help:



Note that there is a fuelling calculation interrupt for each spark but the ECU code toggles between (bank) - fuelling and (bank) - non-fuelling and Odd or Even bank under normal running conditions.




Edited by davep on Saturday 15th February 11:12

blaze_away

Original Poster:

1,633 posts

234 months

Thursday 30th January 2020
quotequote all
davep said:
Interesting project Blaze, good luck with it.

I'm fairly sure, but I may be wrong, that the PulseWidthMs factor in your basic fuel consumption formula may need to reflect the four injector bank (two even, two odd) firings per four stroke cycle (1 camshaft revolution, two crankshaft revolutions). So:

Time for Fuel Delivery per Revolution = PulseWidthMs x 4 (amount of fuel delivered will depend on injector flow rate, etc)

e.g. 2.75 x 4 = 11 mS

Whereas, a total of 2.75 microS/rev is far too low, taking into consideration typical injector pulse widths (1.8 to 10 mS) and pulse periods:

900 rpm = 66.6 mS
1800 rpm = 33.3 mS
2700 rpm = 22.2 mS
3600 rpm = 16.65 mS
4500 rpm = 13.25 mS
5400 rpm = 11.1 mS
6300 rpm = 9.5 mS

This timing diagram may help:



Note that there is a fuelling calculation interrupt for each spark but the ECU code toggles between (bank) - fuelling and (bank) - non-fuelling and Odd or Even bank for normal running conditions.
Dave that is a very good point(s) you raise and I will take account in the calculations. From an analysis point of view it doesn't really change the relationship of 'fuel quantity' in milliseconds per rev merely shifts it by a factor of 4, never the less its better to have that x4 factor in there. I was a bit perplexed by how small the number was now seeing as 4 times greater makes it more acceptable.


davep

1,157 posts

305 months

Thursday 30th January 2020
quotequote all
blaze_away said:
Dave that is a very good point(s) you raise and I will take account in the calculations. From an analysis point of view it doesn't really change the relationship of 'fuel quantity' in milliseconds per rev merely shifts it by a factor of 4, never the less its better to have that x4 factor in there. I was a bit perplexed by how small the number was now seeing as 4 times greater makes it more acceptable.
I'm also puzzled as to why you need to convert milli to microseconds with the /1000 operator? So perhaps 4000 times greater.

stevesprint

1,121 posts

200 months

Thursday 30th January 2020
quotequote all
I haven’t spent much time investigating the closed loop codes as I have a Precat, however these flat lines maybe while the long term trims are being re-calculated which only occurs after idling for about 1 minute above 87°c and with a closed throttle.

Try watching RoverGauge’s main screen and when the short trims freeze quickly switch to the long term trims to see if the long trims are switching instead.

blaze_away

Original Poster:

1,633 posts

234 months

Thursday 30th January 2020
quotequote all
Thanks to a conversation with Mark yesterday I put together an inline O2 sensor monitor. Mark you are a genius.

Essentially
1.O2 plug off a old engine loom
2. O2 plug off an old Lambda probe
3. A screw multiblock
4. A digital volt meter DVM
5. some crocodile clips and a few bits of wire again off the old loom

(DVM - In an ideal world I would have used an analogue meter as this would show true swings in the signal values whereas a DVM "samples" data coming in to it)



Testing Offside (even) O2 probe.

First switched on the ignition and checked for 12v between earth and heater wire, all good at 12.2 Volts.

Next connected the crocodile clips to earth and signal and started the engine, with RoverGauge hooked up too watching Short-term trim

The DVM sprang into life and started showing all sorts of voltage numbers from 0 to 1.2 (but numbers flashed so fast across the screen I couldn't keep up).

Ten minutes in RoverGauge Short Term Trim on even bank starts to flat-line, also the DVM flat-lined too with DVM showing 0.02v for several seconds. I blipped the throttle and both RoverGauge and the DVM came back to life.

Tested odd side all was well no flat-lining

Replaced the O2 sensor on even side with a used spare and retested both sides.

Both sides on DVM and RoverGauge behaved normally over a further 15 minute engine idle run.

So from here I would say that this info confirms its the inputs into ECU that are flat-lining and not the ECU outputs to RoverGauge.

Not sure what to make of all that yet but at least I have made progress, I think....




blaze_away

Original Poster:

1,633 posts

234 months

Thursday 30th January 2020
quotequote all
stevesprint said:
I haven’t spent much time investigating the closed loop codes as I have a Precat, however these flat lines maybe while the long term trims are being re-calculated which only occurs after idling for about 1 minute above 87°c and with a closed throttle.

Try watching RoverGauge’s main screen and when the short trims freeze quickly switch to the long term trims to see if the long trims are switching instead.
Thanks Steve I will try that when it next occurs

blaze_away

Original Poster:

1,633 posts

234 months

Thursday 30th January 2020
quotequote all
davep said:
blaze_away said:
Dave that is a very good point(s) you raise and I will take account in the calculations. From an analysis point of view it doesn't really change the relationship of 'fuel quantity' in milliseconds per rev merely shifts it by a factor of 4, never the less its better to have that x4 factor in there. I was a bit perplexed by how small the number was now seeing as 4 times greater makes it more acceptable.
I'm also puzzled as to why you need to convert milli to microseconds with the /1000 operator? So perhaps 4000 times greater.
Hi Dave, sorry I didnt make it clear enough.

The 2.5/1000 is to get the equivalent pulse length per revolution as both numbers vary.

Now though it would be
(2.5×4)/1000

blaze_away

Original Poster:

1,633 posts

234 months

Thursday 30th January 2020
quotequote all
spitfire4v8 said:
Maybe you can leave yours running in the flatlining scenario and see exactly what the afr does .. if it remains clamped to lambda =1 ......
Hi Joolz thanks again for your input.
I would dearly love to do that but unfortunately I dont have an AFR gauge.