Operation CHARM: Car repair manuals for everyone.

Engine Management System


Principle of Operation





Operation of the Engine Management System is broken into 6 subsystems. These subsystems are:

- Power Supply
- Air Management
- Fuel Management
- Ignition Management
- Emission Management
- Performance Management


Power Supply
When the ignition switch is placed in the KL15 or KL50 positions, Fuse 34 is provided with power. Fuse 34 supplies the wake up or on signal to the EMS2000. Upon receipt of the "ON" signal EMS2000 supplies a ground signal on Pin 97 to the Main Relay. The ground signal energizes the Main Relay, supplying operating power to the following fuses:

- F02 - EMS2000, Fuel injectors, Crankshaft sensor, Ignition coils
- F03 - Camshaft sensor, 02 Heaters, Engine Fan, A/C Compressor Relay, Purge System
- F04 - Automatic Transmission controls
- F05 - Engine Coolant Fan The engine is now ready to start.


Air Management
The EMS2000 sees engine cranking through the crank sensor. It checks the PWG and should see 0.5 volts on both inputs indicating request for idle. The feedback potentiometers are checked in the EDR to confirm throttle plate position. Signals of 0.5 volts from Pot 1 and 4.5 volts from Pot 2 indicate the throttle plate is in the LL or idle position.

With the engine now cranking the EMS2000 looks at inputs from the TMAP (and Map, if a COOPER S). TMAP volts drops from 4 volts toward the high vacuum voltage reading of 1 volt. A voltage of 5 volts or 0 volts puts the EMS2000 in Fault Mode. A fault is registered and air volume information is derived from a default map.

Intake air temperature is checked, 4 volts indicating a cold air, 1 volt or less hot air.

From the TMAP and Intake air temperature the intake air volume and density is calculated.

Fuel Management
Seeing engine revolutions the EMS2000 provides a ground signal to the Fuel Pump Relay. The fuel pump relay is on a fused circuit further protected by the Inertia Switch. If the inertia switch is not triggered (triggered = open) power is provided to the fuel pump relay.

Receiving power the fuel pump, mounted in the swirl pot of the left side of the blow molded saddle type fuel tank, picks up fuel through the life time fuel filter and passes it to the right side tank. In the right tank the fuel is passed through a pressure regulator where a fuel pressure of 3.5 bar is maintained. Excess fuel is returned from the right tank to the left tank through a siphon jet that also transfers fuel to the left tank.



Fuel at 3.5 bar is sent to the engine mounted fuel rail assembly. The fuel rail contains the pressure damper to smooth out fluctuations in fuel pressure during high load situations. Based on the volume and density of the air, the engine load, engine rpm and temperature, the EMS2000 calculates the correct volume of fuel for injection. Monitoring the crankshaft and camshaft sensors the EMS2000 decides upon the proper timing of the fully sequential injection. Failure of the camshaft sensor causes the EMS2000 to inject fuel on a semi-sequential basis (injectors are triggered every engine revolution). Failure of the crankshaft sensor causes cancellation of fuel injection.


Ignition Management
The firing cylinder has the proper air/fuel ratio, now ignition must be optimized for performance and emissions.



The EMS2000 again relying on previously analyzed sensor inputs, decides upon the correct time for ignition coil firing. As the engine approaches TDC, the EMS2000 grounds the appropriate output stage and fires the ignition coil, then listens through the knock sensor for variations in engine sound.

The spark plugs introduce the ignition energy into the combustion chamber. The high voltage "arcs" across the air gap in the spark plug. This creates a spark which ignites the air/fuel mixture.

Failure of the camshaft sensor has no effect on the ignition system as the coils are fired every revolution as a function of the waste spark system. Failure of the crankshaft sensor causes immediate cut off of ignition.


Emission Management
As soon as the engine has started a pulse width modulated ground signal from the EMS2000 is supplied to the Oxygen Sensor Heaters. Duty cycle is increased to approximately 98% until the O2 sensors are fully heated. Afterwards the duty cycle is varied to maintain temperature of the sensors. During engine deceleration the duty cycle is increased to compensate for the decrease in exhaust temperatures.

Once heated fully the O2 sensors provide information about oxygen content in the exhaust. The EMS2000 makes trim adjustment to the injector on time based on the input from the pre - O2 sensor. The post O2 sensor is used for monitoring catalyst condition. A high voltage reading from the pre - O2 sensor indicates a lack of oxygen in the exhaust or a rich mixture. The EMS2000 will reduce injector on time until the voltage reading drops at which time the on time will be increased again.

Catalyst Monitoring is performed by the EMS2000 under oxygen sensor closed loop operation. The changing air/fuel ratio in the exhaust gas results in lambda oscillations at the pre-catalyst sensor. These oscillations are dampened by the oxygen storage activity of the catalysts and are reflected at the post catalyst sensor as a fairly stable signal (indicating oxygen has been consumed). Conditions for Catalyst Monitoring:

Requirements Status/Condition
- Closed loop operation YES
- Engine coolant temperature Operating Temp.
- Vehicle road speed 3 - 50 MPH (5 to 80 km/h)
- Catalyst temperature (calculated)* 350° C to 650° C
- Throttle angle deviation Steady throttle
- Engine speed deviation Steady/stable engine speed
- Average lambda value deviation Steady/stable load
- Catalyst temperature is an internally calculated value that is a function of load/air mass and time.

As part of the monitoring process, the pre and post O2 sensor signals are evaluated by the EMS2000 to determine the length of time each sensor is operating in the rich and lean range.

If the catalyst is defective the post O2 sensor signal will reflect the pre O2 sensor signal (minus a phase shift/time delay), since the catalyst is no longer able to store oxygen. The catalyst monitoring process is stopped once the predetermined number of cycles are completed, until the engine is shut-off and started again. After completing the next "customer driving cycle" whereby the specific conditions are met and a fault is again set, the "Malfunction Indicator Light" will be illuminated.

Note: The catalyst efficiency is monitored once per trip while the vehicle is in closed loop operation.

LDP Operation
During every engine cold start the LDP solenoid is energized by the EMS2000. Engine manifold vacuum enters the upper chamber of the LDP to lift up the spring loaded diaphragm.

As the diaphragm is lifted it draws in ambient air through the filter and into the lower chamber of the LDP through the one way valve.

The solenoid is then de-energized, spring pressure closes the vacuum port blocking the engine vacuum and simultaneously opens the vent port to the balance tube which releases the captive vacuum in the upper chamber.

This allows the compressed spring to push the diaphragm down, starting the "limited down stroke". The air that was drawn into the lower chamber of the LDP during the upstroke is forced out of the lower chamber and into the fuel tank/evaporative system.

This electrically controlled repetitive up/down stroke is cycled repeatedly building up a total pressure of approximately +25mb in the evaporative system. After sufficient pressure has built up (LDP and its cycling is calibrated to the vehicle), the leak diagnosis begins.

The upper chamber contains an integrated reed switch that produces a switched high/ low voltage signal that is monitored by the EMS2000. The switch is opened by the magnetic interruption of the metal rod connected to the diaphragm when in the diaphragm is in the top dead center position.

The repetitive up/down stroke is confirmation to the EMS2000 that the valve is functioning. The EMS2000 also monitors the length of time it takes for the reed switch to open, which is opposed by pressure under the diaphragm in the lower chamber. The LDP is still cycled, but at a frequency that depends upon the rate of pressure loss in the lower chamber. If the pumping frequency is below parameters, there is no leak present. If the pumping frequency is above parameters, this indicates sufficient pressure can not build up in the lower chamber and evaporative system, indicating a leak.

- On cold engine start up, the pump is rapidly activated for the first 27 seconds. This rapid pumping phase is required to pressurize the evaporative components.
- Once pressurized, the build up phase then continues from 27-38 seconds. The EMS2000 monitors the system through the reed switch to verify that pressure has stabilized.
- The measuring phase for leak diagnosis lasts from 38-63 seconds. The pump is activated but due to the pressure build up under the diaphragm, the pump moves slower. If the pump moves quickly, this indicates a lack of pressure or a leak. This registers as a fault in the EMS2000.
- From 63-100 seconds the pump is deactivated, allowing full down stroke of the diaphragm and rod. At the extreme bottom of rod travel, the canister vent valve is pushed open relieving pressure and allowing normal purge operation when needed.

Evaporative Emission Purging is regulated by the EMS2000 controlling the Evaporative Emission Valve. The Evaporative Emission Valve is a solenoid that regulates purge flow from the Active Carbon Canister into the intake manifold. The EMS2000 Relay provides operating voltage, and the EMS2000 controls the valve by regulating the ground circuit. The valve is powered open and closed by an internal spring.

The "purging" process takes place when:

- Oxygen Sensor Control is active
- Engine Coolant Temperature is >67° C
- Engine Load is present

The Evaporative Emission Valve is opened in stages to moderate the purging:

- Stage 1 opens the valve for 10 ms (milliseconds) and then closes for 150 ms,
- The stages continue with increasing opening times (up to 16 stages) until the valve is completely open.
- The valve now starts to close in 16 stages in reverse order
- This staged process takes 6 minutes to complete. The function is inactive for 1 minute then starts the process all over again.
- During the purging process the valve is completely opened during full throttle operation and is completely closed during deceleration fuel cutoff.

Evaporative Purge System Flow Check is performed by the EMS2000 when the oxygen sensor control and purging is active. When the Evaporative Emission Valve is open the EMS2000 detects a rich/lean shift as monitored by the oxygen sensors indicating the valve is functioning properly.

If the EMS2000 does not detect a rich/lean shift, a second step is performed when the vehicle is stationary and the engine is at idle speed. The EMS2000 opens and closes the valve (abruptly) several times and monitors the engine rpm for changes. If there are no changes, a fault code will be set.

On-Board Refueling Vapor Recovery
The ORVR system recovers and stores hydrocarbon fuel vapor that was previously released during refueling. Non ORVR vehicles vent fuel vapors from the tank venting line back to the filler neck and in many states reclaimed by a vacuum receiver on the filling station's fuel pump nozzle.

When refueling an ORVR equipped vehicle, the pressure of the fuel entering the tank forces the hydrocarbon vapors through the larger tank vent line to the liquid/ vapor separator, through the rollover valve and into the charcoal canister. The HC is stored in the charcoal canister, and the system can then "breath" through the LDP and the air filter. The vent line to the filler neck is smaller, but still necessary for checking the filler cap/neck during Evaporative Leak Testing.


Liquid/Vapor Separator
Fuel vapors are routed from the fuel tank filler neck through a hose to the Liquid/Vapor Separator. The vapors cool when exiting the fuel tank, the condensates separate and drain back to the fuel tank through a return hose. The remaining vapors exit the Liquid/ Vapor Separator to the Active Carbon Canister.

Active Carbon Canister
As the hydrocarbon vapors enter the canister, they will be absorbed by the active carbon. The remaining air will be vented to the atmosphere through the LDP pump allowing the fuel tank to "breath". When the engine is running, the canister is then "purged" using intake manifold vacuum to draw air through the canister which extracts the hydrocarbon vapors into the combustion chamber.

Adaptation Values are stored by the EMS2000 in order to maintain an "ideal" air/fuel ratio. The EMS2000 is capable of adapting to various environmental conditions encountered while the vehicle is in operation (changes in altitude, humidity, ambient temperature, fuel quality, etc.).

The adaptation can only make slight corrections and can not compensate for large changes which may be encountered as a result of incorrect airflow or incorrect fuel supply to the engine.

Within the areas of adjustable adaptation, the EMS2000 modifies the injection rate under two areas of engine operation:
- During idle and low load mid range speeds. (Additive Adaptation)
- During operation under normal load to higher load at higher engine speeds. (Multiplicative Adaptation)

These values indicate how the EMS2000 is compensating for a less than ideal initial air/fuel ratio.

NOTE: If the adaptation value is greater than "0.0ms" Additive (% Multiplicative), the EMS2000 is trying to richen the mixture. If the adaptation value is less then "0.0ms" Additive (% Multiplicative), the EMS2000 is trying to lean-out the mixture.

Misfire Detection
As part of the OBD II regulations the EMS2000 must determine misfire and also identify the specific cylinder(s), the severity of the misfire and whether it is emissions relevant or catalyst damaging based on monitoring crankshaft acceleration.

In order to accomplish these tasks the EMS2000 monitors the crankshaft for acceleration by the impulse wheel segments of cylinder specific firing order. The misfire/engine roughness calculation is derived from the differences in the period duration of individual increment gear segments.

Each segment period consist of an angular range of 180°crank angle that starts 54° before Top Dead Center.

If the expected period duration is greater than the permissible value a misfire fault for the particular cylinder is stored in the fault memory of the EMS2000.

Depending on the level of misfire rate measured the EMS2000 will illuminate the "Malfunction Indicator Light", deactivate the specific fuel injector to the particular cylinder and switch oxygen sensor control to open-loop.

In order to eliminate misfire faults that can occur as a result of varying flywheel tolerances (manufacturing process) an internal adaptation of the flywheel is made. The adaptation is made during periods of decel fuel cut-off in order to avoid any rotational irregularities which the engine can cause during combustion. This adaptation is used to correct segment duration periods prior to evaluation for a misfire event.

If the sensor wheel adaptation has not been completed the misfire thresholds are limited to engine speed dependent values only and misfire detection is less sensitive. The crankshaft sensor adaptation is stored internally and is not displayed via the DISplus. If the adaptation limit is exceeded a fault will be set.

The EMS must also determine the severity of the misfire and whether it is emissions relevant or catalyst damaging based on monitoring crankshaft acceleration.

Emission Increase:
- Within an interval of 1000 crankshaft revolutions, the EMS2000 adds the detected misfire events for each cylinder. If the sum of all cylinder misfire incidents exceeds the predetermined value, a fault code will be stored and the "Malfunction Indicator Light" will be illuminated.
- If more than one cylinder is misfiring, all misfiring cylinders will be specified and the individual fault codes for each misfiring cylinder, or multiple cylinders will be stored. The "Malfunction Indicator Light" will be illuminated.


Catalyst Damage:
- Within an interval of 200 crankshaft revolutions the detected number of misfiring events is calculated for each cylinder. The EMS2000 monitors this based on load/rpm. If the sum of cylinder misfire incidents exceeds a predetermined value, a "Catalyst Damaging" fault code is stored and the "Malfunction Indicator Light" will be illuminated.

If the cylinder misfire count exceeds the predetermined threshold the EMS2000 will take the following measures:

- The oxygen sensor control will be switched to open loop.
- The cylinder selective fault code is stored.
- If more than one cylinder is misfiring the fault code for all individual cylinders and for multiple cylinders will be stored.
- The fuel injector to the respective cylinder(s) is deactivated.

The "Malfunction Indicator Light" (MIL) will be illuminated under the following conditions:

- Upon the completion of the next consecutive driving cycle where the previously faulted system is monitored again and the emissions relevant fault is again present.
- Immediately if a "Catalyst Damaging" fault occurs (see Misfire Detection).

The illumination of the light is performed in accordance with the Federal Test Procedure (FTP) which requires the lamp to be illuminated when:

- A malfunction of a component that can affect the emission performance of the vehicle occurs and causes emissions to exceed 1.5 times the standards required by the (FTP).
- Manufacturer-defined specifications are exceeded.
- An implausible input signal is generated.
- Catalyst deterioration causes HC-emissions to exceed a limit equivalent to 1.5 times the standard (FTP).
- Misfire faults occur.
- A leak is detected in the evaporative system, or "purging" is defective.
- EMS2000 fails to enter closed-loop oxygen sensor control operation within a specified time interval.
- Engine control or automatic transmission control enters a "limp home" operating mode.
- Ignition is on (KL15) position before cranking = Bulb Check Function.

Within the BMW system the illumination of the Malfunction Indicator Light is performed in accordance with the regulations set forth in CARB mail-out 1968.1 and as demonstrated via the Federal Test Procedure (FTP). The following page provides several examples of when and how the Malfunction Indicator Light is illuminated based on the "customer drive cycle".


1. A fault code is stored within the EMS2000 upon the first occurrence of a fault in the system being checked.

2. The "Malfunction Indicator Light" will not be illuminated until the completion of the second consecutive "customer driving cycle" where the previously faulted system is again monitored and a fault is still present or a catalyst damaging fault has occurred.

3. If the second drive cycle was not complete and the specific function was not checked as shown in the example, the EMS2000 counts the third drive cycle as the "next consecutive" drive cycle. The "Malfunction Indicator Light" is illuminated if the function is checked and the fault is still present.

4. If there is an intermittent fault present and does not cause a fault to be set through multiple drive cycles, two complete consecutive drive cycles with the fault present are required for the "Malfunction Indicator Light" to be illuminated.

5. Once the "Malfunction Indicator Light" is illuminated it will remain illuminated unless the specific function has been checked without fault through three complete consecutive drive cycles.

6. The fault code will also be cleared from memory automatically if the specific function is checked through 40 consecutive drive cycles without the fault being detected or with the use of either the DISplus or Scan tool.

NOTE: In order to clear a catalyst damaging fault (see Misfire Detection) from memory, the condition must be evaluated for 80 consecutive cycles without the fault reoccurring.

With the use of a universal scan tool, connected to the "OBD" DLC an SAE standardized DTC can be obtained, along with the condition associated with the illumination of the "Malfunction Indicator Light". Using the DIS a fault code and the conditions associated with its setting can be obtained prior to the illumination of the "Malfunction Indicator Light".


OBD II Diagnostic Trouble Codes (DTC)
The Society of Automotive Engineers (SAE) established the Diagnostic Trouble Codes used for OBD II systems (SAE J2012). The DTC's are designed to be identified by their alpha/numeric structure. The SAE has designated the emission related DTC's to start with the letter "P" for Powertrain related systems, hence their nickname "P-code".

- DTC's are stored whenever the "Malfunction Indicator Light" is illuminated.
- A requirement of CARB/EPA is providing universal diagnostic access to DTC's via a standardized Diagnostic Link Connector (DLC) using a standardized tester (scan tool).
- DTC's only provide one set of environmental operating conditions when a fault is stored. This single "Freeze Frame" or snapshot refers to a block of the vehicles environmental conditions for a specific time when the fault first occurred. The information which is stored is defined by SAE and is limited in scope. This information may not even be specific to the type of fault.