Go to HOME page
You are at the CONCEPT Page
Go to DESIGN Page
Go to PROJECT Page
Go to CONTACT Page
This application provides an up to date engine management system for older gasoline powered automobile engines, and is also applicable to custom made engines.


Today a typical production Automobile engine management system provides sequential fuel injection, only supplying fuel during the intake stroke of each cylinder. It is also common for the ignition to be controlled by the EMS, providing variable spark timing without mechanical parts to wear or break. The modern system allows for superior efficiency (fuel mileage), reduced exhaust emissions, and increased reliability over old “20th Century” technologies. Other benefits, such as a reduced power operating or shutdown mode to prevent catastrophic overheating in the event of cooling system failure are typical in current systems. Finally, the modern engine management system includes an “On Board Diagnostic” (OBD) capability to alert the driver of the smallest operating abnormalities or sensor malfunctions, often well before any adverse consequences take place.

The Inspiration

I have an old 1983 Nissan pickup truck. The stock set-up is an electronically controlled carburetor (ECC) system, with an analog control unit that monitors engine speed, coolant temperature, a zero throttle switch, an intake manifold vacuum switch and exhaust oxygen sensor. The system controls the air/fuel mixture by way of a fuel metering solenoid valve inside the carburetor. It also has a fuel shutoff solenoid that is engaged during deceleration and on shutdown. The ignition system is independent of the control system using a vacuum advanced magnetic distributor, standard for the time. In general the system is simple and straightforward except for the carburetor mechanicals. There was no OBD (On Board Diagnostics) mandate at the time. One other manufacturer’s products had an early version of OBD, but the Nissan ECC system just had a single LED that flashes as the oxygen sensor oscillates from rich to lean as an indication that it is working.

So what is the purpose of having this closed loop air/fuel mixture control anyway? This vehicle (like most cars and light trucks sold in the US since the mid 1980s), is equipped with a 3-way catalytic converter on the exhaust system that relies on an oscillating mixture held close to stochiometric (14.7:1) at a frequency at 0.5Hz - 2Hz to function at peak conversion efficiency. When the catalytic converter is functioning at it's peak, harmful exhaust emissions (pollutants) are reduced to a minimum.

While the Electronically Controlled Carburetor system makes a valiant effort, a carburetor has limitations (it is dependent on vacuum for fuel delivery) and undesirable characteristics (such as icing) that are simply not present in a fuel injection system. The carburetor also requires more frequent maintenance. It develops dirty fuel deposits, and eventually leaks, requiring cleaning, rebuilding, or replacement. An engine with a single carburetor receives an atomized air/fuel mixture at the carburetor venturi (typically upstream of the throttle butterfly valve) in a continuous flow. While early fuel injection systems were also of a continuous delivery style, they still had a few advantages over the carburetor. The fuel injection rate is independent of the intake manifold or ported (at the throttle butterfly) vacuum, there is no carburetor icing, and events requiring excursions in fuel delivery such as acceleration and starting are handled more simply, not requiring temperamental mechanical devices such as the accelerator pump and choke required by a carburetor. It should come as no surprise that since 1995 there have been no carbureted engine production vehicles sold in the United States in the Automobile and Light Truck categories.

The Solution

By now you may have realized that the focus of this project is to create a modern engine management system that can be applied to older automobile engines that were originally equipped with carburetors.

For those too young to have ever seen a carburetor or only hear about them in folklore: http://en.wikipedia.org/wiki/Carburetor is a good place to learn more about carbs.

Yes, the plan is to create a modern Engine Management System using the PIC32 MCU. The initial test bed will be my 1983 4wd Nissan pickup. It has a 2.4 liter 4 cylinder engine. In the stock configuration, it gets 19/22.5 MPG city/highway in 2wd mode and about 15.5/18 in 4wd HI. As for economy in 4wd LO, I don’t think anybody has ever bothered to ask. Top speed in 4wd LO is 35MPH so the better advice there is never get more than half a tank from the nearest gas station (or outpost with cans, drums, etc…). I hope to improve on the fuel economy a bit (I'd like to see the average go up to 23mpg or better from the current 20mpg), but more importantly give the truck improved reliability and power, lower exhaust emissions and above all, reduce maintenance needs. Also it will be extra cool to have the superior monitoring capabilities. This system will be easily adapted to a wide variety of other engines and vehicles also.

The System

1. Of course, at the heart of the prototype system is the PIC32 starter kit development board.

2. System inputs may be of several signal types including linear analog, nonlinear analog frequency, or Boolean digital. Signal conditioning external to the MCU where required, will be minimized to take full advantage of the PIC32 on board peripheral capabilities. A preliminary list of system inputs includes…
a. Battery voltage. Direct linear analog signal. High impedance, transient protected divider direct to MCU Analog Input.
b. Throttle position. Direct linear analog signal. High impedance, transient protected divider direct to MCU Analog Input.
c. Mass airflow. Signal conditioned nonlinear analog signal.
d. Intake Manifold Vacuum/Pressure. Signal conditioned nonlinear analog signal.
e. Engine Coolant Temperature. Signal conditioned nonlinear analog signal.
f. Exhaust Oxygen Sensor. Signal conditioned nonlinear analog signal.
g. Fuel pressure Sensor (optional). Signal conditioned nonlinear analog signal.
h. Engine speed. Optically isolated frequency (frequency via hall sensor/magnet on crankshaft).
i. Camshaft position. Signal conditioned optically isolated frequency (via ignition distributor position).
j. Clutch Position Switch. Optically isolated digital signal direct to MCU Digital Input.
k. Ignition “RUN” Switch. Optically isolated digital signal direct to MCU Digital Input.
l. Ignition ”START” Switch. Optically isolated digital signal direct to MCU Digital Input.
m. Oil Pressure Switch. Optically isolated digital signal direct to MCU Digital Input.
n. Zero Throttle Switch. Optically isolated digital signal direct to MCU Digital Input.
o. Full Throttle Switch. Optically isolated digital signal direct to MCU Digital Input.

3. Primary System Outputs. The primary system outputs are fuel injector control signals, ignition pulse signals, fuel pump control, and possibly other outputs that are yet to be determined.
a. Fuel injector control signals. The system design will feature a scalable configuration with the prototype having four injectors. This design will be made with the provision for scalability from 1 to 24 or more fuel injectors. One (or two injectors working in unison) may be preferred in a single throttle body injector application, while 24 will accommodate two injectors per cylinder on a 12 cylinder engine. The injector pulse common frequency and duration will be provided by the MCU PWM peripheral, while injector sequencing will be controlled by auxiliary gate logic driven by MCU digital outputs. The injectors are driven by the resultant sequenced injector pulse through purpose specific automotive fuel injector driver ICs.
b. Ignition Pulse Signals. Similar to the injector control, the ignition pulse signals will be implemented in a scalable configuration to accommodate a variety of engines, with various numbers of cylinders. For the prototype, this feature will require 4 ignition pulse output signals if the more recent 3 valve/1 spark plug per cylinder ‘”KA” cylinder head is installed, or 8 ignition pulse signals if the older 2 valve/2 spark plug per cylinder “NAPS-Z” cylinder head is chosen.
c. Fuel Pump Control. The fuel pump control signal is a signal conditioned digital output which determines when the fuel pump is allowed to run or be stopped based on operating and safety conditions.

4. Optional System Outputs. A number of optional system outputs can also be configured. For example: In the case the engine is turbocharged, a wastegate control solenoid can be implemented to provide a variable boost pressure level.

5. Annunciator Outputs. Several discrete annunciator outputs will be implemented to provide the standard “Idiot Lights” for excessive coolant temperature, low oil pressure and low battery/alternator voltage. An additional array of configurable annunciator outputs will be provided for engine management system specific functions and future expansion.

6. Diagnostic Data Link Output. The prototype and production versions will provide access to diagnostic and configuration information via an RS-232 serial port implemented on one of the PIC32 on board UARTs. In the production version an SAE J1962 OBDII compliant port will be implemented on the second PIC32 on board UART to provide access to standard diagnostic information.

Why (What is the need for this design)?

There are already several “aftermarket” choices available for a Fuel Injection System controller. These existing products are generally designed for high performance and high fuel flow racing and “Hot Rod” applications. Since these products are typically not intended for adapting older “Street Legal” vehicles they may not have the appropriate feature set. Some do not have the needed provisions for modern emissions control or on board diagnostics. They also tend to be quite expensive.

The new PIC32 based “Engine Management System” is more than an aftermarket fuel injection controller. It incorporates the full complement of modern engine management with ignition system control, fuel delivery system control, and industry standard onboard diagnostics. It will be low cost and configurable to a wide variety of engines. For example: It can be set up to operate a single injector for a small utility engine or throttle body injector system, up to as many as say, 24 injectors (two per cylinder on a 12 cylinder engine) or more. Plus, at the heart of this new system is the PIC32 MCU!
Get your PCBs from Advanced!