Sale ends todayGet 30% off any course (excluding packages)

Ends in --- --- ---

lamda and stoichiometry

Understanding AFR

Forum Posts



Tech Articles

Discussion and questions related to the course Understanding AFR

= Resolved threads


Hi guys new to the forum and new to tuning in the last couple months. I have watched the AFR course and I don't really get one concept. If I set my lambda to 1.00 will I always get the stoichiometric ratio for the fuel I am running. I am confused as to how the ECU knows to deliver the right fuel to achieve this ratio on different fuels. For instance if I am switch from pump fuel to e85 and keep my lambda at 1.00 how is it that the ECU knows to increase fuel from 14.7 to 9.8. Thanks in advance for any answers.

Which ECU are you using?

With the M1, you specific the fuels chemistry in the setup, and the M1 uses this data to generate a fuel density value that is then used in the fuel pulse width calculations, other ECUs will do the same. If you have a flex fuel capable ECU then the calculations should be getting done for fuel density based on the ethanol content and pre set tables.

Im using a haltech elite 2500 and another car with a factory ecu being tuned with hp tuners. I looked into this and there is a fuel density value in both softwares. My main concern and reason for questioning this is that all the gasoline near me is e10 which has a stoichiometric value of about 14.2 AFR. Do I need to find the fuel density of e10 to get an accurate tune? If I were to run my engine at .96 lambda(very close to 14.2 AFR based on the stoichiometry of regular gasoline would I get the same result? Another thing I noticed is that in the haltech base map they chose to make the fuel density 730 kg/m3 while in hp tuners it is set at 730.

You may be getting confused on how lambda values apply to AFR versus how the ECU controls fuel delivery.

When thinking about how a lambda sensor works, it is natively measuring in units of lambda. This is because the sensor is providing an output that's relative to excess hydrocarbons or excess oxygen in the exhaust. When you don't have excess hydrocarbons or excess oxygen, you're at the stoichiometric point for whatever fuel you're running on, which happens to be lambda 1.00. The sensor has no idea what fuel its measuring and if you want to convert from lambda to AFR units then you need to multiply the lambda value by the stoichiometric AFR for the particular fuel in the tank.

Ok now that's dealt with, on your E10 blend if you're running at the stoichiometric AFR, this would still be lambda 1.00. In this case lambda 1.00 is equal to 14.13:1 because the fuel's stoichiometric AFR is different to pump gas. If you tuned at 0.96 lambda, this would in fact be 0.96 x 14.13 = 13.6:1.

I understand it's a confusing topic and it's made even more confusing because most tuners who tune on E85 don't change the stoichiometric AFR setting on their wideband and hence the numbers they quote are pump fuel numbers - 12.0:1 for example which makes no sense when you take into account that E85 has a stoich value of 9.8:1.

The key point to take away from all of this is that lambda 1.00 is ALWAYS the stoichiometric point for any fuel. This is why I'm a big advocate of using units of lambda when tuning. It's even more important if you're tuning on a lot of different fuel blends such as pump, E10, E30, E85 or methanol.

The other aspect is how the ECU copes with changing fuel characteristics and in this case BlackRex has covered the fact that we need to tell the ECU what these characteristics are. If the ECU accounts for all the fuel characteristics then we don't need to actually adjust any of our fuel or VE tables as the required changes in fuel mass and injector pulse width are handled by the ECU in the background. This is how changing fuel is commonly dealt with in an ECU that uses a VE fuel model. In a traditional ECU using a millisecond pulsewidth based fuel table you will need to manually change the fuel table to provide the correct fuel delivery when you change from one fuel to another.

Typically the density of pump fuel at 20 deg C is taken as approximately 745 kg/m3 while E100 is approximately 785 kg/m3. This would give E10 a density of about 749 kg/m3 and in reality this isn't going to make a significant difference to your tuning. After all the difference of 4 kg/m3 represents about 0.5% change in density. To put it into perspective, E10 is typically a fuel that you can run through a car that is not flex fuel capable so that gives some idea of the relatively minor effect that it will have on your tune.

Thank you very much for that clarification andre. So regardless of what fuel density I put in to the ecu a lambda reading of 1.00 will always be stoichiometric. So then the difference is just accounted for when I tuned the VE table? But not by much since the difference in the densities is less then a percent. Is there any other reason why my engine likes to run at .96 lambda and not 1.00? If i set it at lambda 1.00 the fuel trims seem to be all over the place. It does have a fairly big cam 240-250 but doesn't have a ton of overlap and with idle timing tuning I managed to achieve 13.8 inhg at 975rpm. I remember from one of the videos you mentioned sometimes a larger cam would need to run rich due to hot start issues, but i already accounted for this in the post start and coolant temp corrections.

Yes, regardless of the density lambda 1.00 is always stoichiometric and you use the VE table to account for any difference between your aim lambda and the measured lambda value. Of course if your fuel characteristics are incorrect you can end up with a discrepancy between measured lambda and aim anyway and end up trying to fix this in the VE table. In the case of E10 though as I've mentioned, the density difference is very minor.

It's not uncommon with a decent cam to find the engine will idle better with a richer target lambda however unless the cam is extreme, this isn't usually an issue at a normal cruise rpm. Are you talking about idle AFR or cruise?

Thanks again andre. I am only targeting a richer AFR under idle conditions, cruise is still lambda 1.00 and works fine there.

In that case what you're seeing is pretty normal. If you go too rich obviously you risk fouling the plugs but 0.96 is absolutely fine.

We usually reply within 12hrs (often sooner)

Need Help?

Need help choosing a course?

Experiencing website difficulties?

Or need to contact us for any other reason?