Tech Info


Some information on Lambda sensors, Lambda Voltage, Lambda Control Factor, Lambda Heating, typical graphs and interpreting the results…


Lambda sensors are also known as Oxygen sensors, because they measure the proportion of oxygen in the exhaust gas. These sensors were first developed by Robert Bosch GmbH many decades ago.

They are used to determine the Air-Fuel ratio and in turn form an integral part of the closed-loop operation of the fuel-injection process, as their real-time measurement determines whether the combustion mixture is running RICH or LEAN, and using this feedback, the ECU adapts the injector pulses to obtain optimum combustion…

The air-fuel ratio for theoretical optimum combustion in gasoline engines is 14.7 parts of air, to 1 part of fuel or 14.7:1, where parts are measured in mass of air and mass of fuel. This theoretical optimum ratio is known as the stoichiometric air-fuel ratio.

Typical Lambda voltage graphs

The graph to the left was taken from a Bosch document "“Lambda” oxygen sensors, Type LSM 11"

A RICH mixture causes an oxygen demand within the sensor and thus manifests as a higher sensor voltage than a LEAN mixture that manifests itself as a low voltage on the sensor output. There are 2 basic types of Lambda sensors

  • Narrow-band sensors, and
  • Wide-band sensors

This is clearly depicted in the graph, and forms the basis to understanding the Oxygen/Lambda sensor voltage graphs from the GS-911 real-time log values.

The Wikipedia Oxygen Sensor and Wikipedia AFR-sensor pages are a good source of basic information on the general theory and details of how Lambda sensors work.

There is NO PERFECT graph… which is why we CANNOT give you a reference graph with the instructions : “This is what it should look like, and if it does not EXACTLY look like this, then there is a problem!”. However, once you understand the basic functioning, you can make an educated decision on the appropriateness and correctness of what you are seeing in the graphs…! In general the narrow-band Lambda sensors can measure only a small region either side of the Stoichiometric ratio, and there voltage outputs are limited to a region between zero and 1 Volt. The output is generally given as a milli-Volt (mV) value.

The Electronic Control unit (ECU) measures the Lambda voltage and uses this to systematically increase the injector pulse width (thus the effective amount of fuel), until it rises above a set average above the nominal operating point… Once it reaches this “richer” maximum setting, it starts decreasing the base value of the injector pulse until it reaches a minimum “lean threshold” before it starts repeating the cycle again in so doing the ECU tries to maintain the Air-Fuel ratio at its predetermined set-point, by perturbating around the predetermined set-point…

Armed with the above knowledge, as well as knowing that some ECUs have minimum set-points of 150 or 200mV and maximum set-points ranging from 600mV to a very common 700mV, some going as high as 800mV, we can use this to make a general but educated decision on the validity of the Lambda sensor voltage signal.

Below is a graph of a Lambda sensor voltage log of one of the sensors of a S1000RR.

The above is a perfectly normal oxygen sensor voltage signal… And just to show how vastly they could differ, here is another one, this time one of the Lambda voltage signals of a HP2. You can see the difference, but this one is perfectly good too!

Evaluate Oxygen sensor functionality at operating temperature

I chose this particular graph of the HP2 as it also showed the starting of the closed-loop function… which brings me to another very important point…

NOTE: The engine controller works in open-loop during the cold-start enrichment cycle and thus the function of the Lambda sensor should only be evaluated at operating temperature!

What are we looking for?

In short, we are looking for the following:

  • an oscillating signal that swings below 200mV to above 600/700mV

What don't we want to see?

We don’t want to see the following:

  • a flat line, not around the center, not high not low… (at operating temperature)
  • a flat ascending or descending line
  • an oscillating graph that is slowly ascending or descending
  • an oscillating graph with small oscillation not nearly reaching the 200mV and 700mV thresholds.

An example of an incorrect signal

Here we have a signal from the same HP2 as above, but the Lambda sensor of the other cylinder.

You can clearly see the difference to the previous signal and the fact that something is definitely not right, jumps out at you!

Next the question arises: is it the sensor that is faulty or is this a correct measurement of a very incorrect Air-Fuel ratio? This question is not always that easy to answer, and not part of this discussion, however I would still like to spend a little time on this. The key is to BE LOGICAL and SYSTEMATIC about your fault finding approach! (this holds true for ANY type of fault finding!). In this case you should look at the circumstances. If the idling is rough, it is most likely that you are really having a very poor Air-Fuel ratio (using your knowledge gained above, because the voltage is very low, this is a very LEAN mixture indeed). If you were suspecting the Lambda sensor, you could swap the two lambda sensors..

However, in the case above, the sensor was good – as is the case in most experiences… and the Air-Fuel ratio was indeed very lean, apparently due to “sticky throttle linkage”.

Lambda Control Factor

Firstly some definitions

Lambda is the air/fuel ratio.

Lambda Control Factor (also known as excess-air factor), is the ratio between the actual and the ideal air/fuel ratio.

Thus, a Lambda > 1, implies a LEAN mixture and oppositely so, a Lambda < 1, implies a RICH mixture.

Below is the graph of the Lambda Control Factor for one of the Oxygen sensors of the S1000RR. We can see that it is continuously running a little below 1, thus a little rich (a slightly richer than Stoichiometric Air-Fuel ratio is well known to yield a higher power output).

For obvious reasons the ECU can only adapt or amend the injection time/pulse width within specific limits, which in the case of most BMW motorcycles is either +- 0.20 or +-0.25, thus effectively allowing the ECU to control the Lambda Control Factor from 0.8 to 1.2 or 0.75 o 1.25 respectively.

Similarly we see the Lambda Control Factors for both Oxygen sensors of our HP2 example. Quite clearly the blue cylinder seems pretty normal, and just as obvious we can see that the red cylinder is definitely running lean, most of the time, stuck at the max compensation factor of 1.25.

Lambda Sensor Heating

For the Lambda sensors to work effectively, they need to be heated to around 316 degrees Celsius. To achieve this they have internal heating elements that are controlled by the ECU. Most ECUs show the Lambda Heating state (1=ON and 0=OFF). Below a graph is shown of the heating state of one of the cylinders of the HP2 we have been discussion above.

I hope the above information is enough to form enough of a basic understanding of the Lambda sensor, how it relates to the Lambda Control Factor and how in turn that is used by the ECU to maintain the engine working around a predetermined Air-Fuel ratio operating point. There is a lot of information at your fingertips… the internet is a vast source of information… and using the terminology gained from this article as well as the 2 wiki pages as a starting point, you to, can soon be an expert on Lambda sensors and understanding their integration into the greater fuel injection process.