BMW E90 Reading Fault Codes

Order parts for this project

    Project Time: 1 hours Tab:TalentTools: Scan tool, Code reader

The impetus to control motor vehicle emissions, driven by the air quality needs of major metropolitan areas, has lead to 5 decades of engineering innovation in the design of vehicle propulsion technologies.

Because California cities (particularly Los Angeles) were hardest hit by the proliferation of vehicles and their emissions, starting in 1961 the California Air Resources Board (CARB) has been at the forefront of setting engineering standards for vehicles sold in California, then in the United States and now for the world automotive industry.

Modern vehicle engine operations and emissions (including evaporative losses from the fuel tank) are extensively controlled via a digital microprocessor, the computer known as the engine control module or ECM. Feedback systems, relying on sensors, allow the ECM to precisely control fuel / air mixture, spark timing and other functions. Of the many sensors on the engine and the vehicle, the primary ones are oxygen sensor(s) which monitor the combustion efficiency of the engine, and knock sensor(s) which «listen» for engine knock or pinging. The input signals from these sensors are used by the ECM to adjust fuel mixture and adjust spark timing.

Computer control of the engine operations allow two benefits in addition to a precise air fuel mixture and, therefore, lower emissions. The computers can be programmed to detect faults (diagnostic trouble codes or DTCs) in their own operations, and the ECM can store this information and illuminate a malfunction indicator light (MIL), often called the Check Engine light or malfunction Indicator lamp, on the instrument cluster. The stored faults can be viewed later for diagnosis and repair.

Diagnosis of modern vehicle performance faults start with gaining access to DTCs stored in the ECM. Start by looking for the 16-pin OBD II plug (diagnostic link connector or DLC) under the dashboard. By law, it is always located within reach of the driver.

Once the diagnostic scan tool is connected to the DLC, follow instructions on the scan tool screen. These usually include:

  • Select diagnosis program.
  • Select correct vehicle (scan tool should find this automatically).
  • Interrogate and record DTCs (fault codes) present in ECM memory.

In many cases, it is best to clear DTCs, then drive the vehicle and retest. Follow diagnostic and repair instructions on scan tool screen. DTCs for the vehicle power train, as standardized by the American Society of Engineers (ASE), begin with a P and are followed by 4 digits. (They are also referred to as P-codes.) During testing, the scan tool displays each P-code and a brief description of the fault. There are different kinds of fault indicated by DTCs:

  • Plausibility. If a sensor’s output value is outside the expected range, the signal from the sensor is considered not plausible and a fault is set.
  • Power, ground, continuity. If power or ground is missing or continuity is lacking in a particular circuit or system, a fault is set.
  • Fault in sensor or module. If a sensor or module tests defective, a fault is set.

You should note that even though the scan tool displays specific DTCs, additional diagnosis is advisable. For example, if a DTC indicates a non-functional oxygen sensor heater, the simple explanation may be a blown fuse. In other words, use common sense and do not ignore the obvious when diagnosing problems.

BMW E90 models have one of the most complicated BMW electrical systems to date. When addressing fault codes it is important t keep this in mind. There are many control modules that now share the control of a single function. For example, the fuel pump is controlled by the DME, with the signal traveling through the E-box to the fuel pump control module. BMW calls this type of system distributed functions. This is where a more advanced BMW scan tool is needed to completely diagnose some fault codes your BMW may set. Do not be discouraged from attempting to diagnose fault codes on your own, just know there will limits to how far you can go. As stated above, the engine management system monitors emission components and will set a fault code in the DME when a fault is present. These are the codes you will have to work with the most. Treat them as you normally would and inspect the component and system the fault code relates to. If you find a code will not clear or points to a system, your scan tool cannot access, you may need a more advanced scan tool. Know your scan tool and the limits it is designed with and use all available resource to help during your diagnosis.

Connecting a Scan Tool

Start with a fully charger batter

Wayne R. Dempsey, Co-Founder & DIY Expert

Nick Czerula, DIY Expert