An improved individual cylinder fuel control method based on sampled readings of a single
oxygen sensor responsive to the combined
exhaust gas flow of several engine cylinders. The
oxygen sensor output is sampled in
synchronism with the engine firing events, a stored non-volatile table of offset values is used to correlate the sampled
oxygen sensor values with individual engine cylinders, and a new offset value is determined and stored in place of a current offset value when the current offset value fails to reduce a measure of air / fuel ratio maldistribution among the engine cylinders. In systems having an
oxygen sensor of the switching type, the measure of air / fuel ratio maldistribution is determined by filtering and integrating the
oxygen sensor signal, and the new offset value is determined by repeatedly incrementing the stored offset value, and fueling the individual cylinders of the engine based on the incremented offset value, until the measure of air-fuel ratio maldistribution decreases. In systems having a wide-range
oxygen sensor, the measure of air / fuel ratio maldistribution is determined by summing the air / fuel ratio errors identified by the sensor, and the new offset value is determined by alternately toggling a selected cylinder rich and lean, and sampling the oxygen sensor
signal to identify the selected cylinder. Either way, the control adapts the stored offset values for changes that occur over time due to component degradation and variation and changes in engine hardware.