Blog Home

Reducing automotive fuel consumption with an Arduino

Arduino TeamAugust 4th, 2022

Every car sold in the last few decades is equipped with an engine control unit, or ECU for short. Its job is to control nearly every aspect about the vehicle’s performance by reading various sensors and acting upon those inputs accordingly. However, some older rides aren’t nearly as performant as they could be, which is why YouTuber Robot Cantina wanted to modify their 1997 Saturn coupe for better fuel efficiency.

To accomplish this goal, Robot Cantina created a lean burn system that works by making the ECU think the engine is burning more fuel than the actual amount, thus decreasing fuel consumption. They took a cheap air/fuel mixture sensor and connected its input to the engine’s manifold. Due to how it outputs a wideband, linear voltage, the signal had to be converted with an Arduino Uno into a narrow, lower voltage range via a lookup table.

Detecting an idling or low-burn state is achieved with the help of a potentiometer and an air pressure sensor. The potentiometer lets the driver dial in a specific offset to tune when the lean burn should begin, and an additional one is used for changing how much fuel is introduced in this state. Finally, a digital-to-analog converter takes the resulting quantized fuel level and sends it to the ECU.

Although the purpose of the project was to improve fuel efficiency, the end result was actually the opposite, much to the dismay of Robot Cantina. You can watch their full video below for more information about how the lean burn system was built.