Operation CHARM: Car repair manuals for everyone.

General



General

Requirements for the OBD II System:
- Monitoring the efficiency of the catalytic converter (TWC).
- Detection of combustion misfiring.
- Monitoring of the tank ventilation system.
- Monitoring the tank system for leaks.
- Monitoring of the secondary air injection.
- Monitoring the adaptation limitation of the oxygen sensing system.
- Monitoring the oxygen sensors.
- Monitoring of other emission relevant components (former OBD I scope).
- Triggering the Malfunction Indicator Lamp (MIL or Check Engine) and storing faults in the memory.
- Protection against manipulation of control modules.
- Indication of monitoring readiness (Ready Code).
- Displaying the Diagnostic Trouble Code.
- Storing of operating parameters in the event of a fault (freeze frame).
- Functional checks of the OBD system (trip, warm-up cycle, driving cycle).
- Standardized control module tester (generic scan tool).
- Standardized read-out of operating data such as rpm, temperature, etc

Ambient conditions
Three ambient (operating) conditions can be stored with each fault.

These can be:
- Relative charge
- Engine temperature
- Engine speed
- Intake air temperature
- Voltage supply
- Throttle valve angle
- Tank level
- Vehicle speed
- Change in nominal throttle valve angle
- Throttle position sensor lower limit
- Voltage of throttle position sensor in emergency air position
- Voltage of throttle position sensor at lower stop
- Voltage of pedal sensor
- Internal resistance of oxygen sensor after TWC
- Voltage of heater output stage of oxygen sensor after TWC
- Internal resistance of oxygen sensor ahead of TWC
- Voltage of heater output stage of oxygen sensor ahead of TWC
- Period of oxygen sensor signal
- TWC temperature (calculated)
- Engine compartment temperature
- Exhaust temperature ahead of TWC (calculated)
- Voltage of oxygen sensor after TWC
- Voltage of oxygen sensor ahead of TWC
- Air mass flow
- Linearised engine temperature
- Engine temperature substitute value
- Calculated actual torque
- Longitudinal acceleration of vehicle
- Actual gearshift
- Permitted indicated torque
- Indicated resulting nominal torque

DME control module signal output
If a fault is detected and stored, the prevailing ambient conditions are also stored and can be read out later with the generic scan tool. This makes troubleshooting much easier because operating data are available that were present at the moment the fault occurred.

These ambient conditions of a fault are stored the first time the fault occurs. If the same fault occurs a second time, these ambient conditions are also stored. Each further occurrence of a particular malfunction updates the ambient conditions of the last time the malfunction occurred, i.e. the ambient conditions present the first and last time the same malfunction occurred can be read out.

These ambient conditions can be read out only with the Porsche System Tester 2.

The ECM must be able to give out the following signals (freeze frame data) with a generic scan tool (SAE J1979):
- Diagnostic Trouble Codes
- Engine load
- Engine coolant temperature
- Oxygen sensing status (oxygen sensor)
- Oxygen sensing adaptation values
- Fuel pressure (when available)
- Ignition angle
- Intake air temperature
- Intake manifold pressure (when available)
- Air mass value
- Engine speed
- Throttle position
- Secondary air status
- Vehicle speed

Standardized DTC to SAE J 2012 (DTC-Diagnostic Trouble Codes)
Diagnostic Trouble Codes that can be read out by the ECM are standardized, which means that all manufacturers must use the same Diagnostic Trouble Codes.

The DTC is always a 5-character alphanumerical value, e.g. "P0100".

All P0xxx codes are standardized. However, each manufacturer may use additional codes which go beyond the standardized ones. This is the case if the manufacturer has integrated additional functions in the ECM beyond those required by law, and these can also be diagnosed. These codes are referred to as P1xxx codes, e.g. "P1100".

The first character (letter) of a code identifies the system which has input the code. A total of four system types are covered:
- B for body
- C for drive train
- P for drive
- U for future systems.

The OBD II only requires the P code.

The second character represents the standard code (P0xxx) or manufacturer code (P1xxx).

The third character indicates the system assembly from which a fault occurred.

These are:
P01xx Fuel
or and
P02xx air metering
P03xx Ignition system
P04xx Additional emission control systems
P05xx Speed and idle air control
P06xx Computer and output signals
P07xx Transmission

The fourth and fifth characters represent the components or systems.

Definition of Terms

Warm-up cycle
The warm-up cycle is the time which the engine requires to reach operating temperature. To fulfil the warmup cycle condition, the engine temperature on start-up must not be higher than a specified value (e.g. 30 °C). The engine operating phase has to be long enough to reach a specified temperature (e.g. 70 °C). The warmup cycle condition is needed to count down or reduce the erase counter in the case of faults which have been recognized as corrected.

Driving cycle
A driving cycle consists of starting the engine, running the engine or driving until oxygen sensing becomes active, and then stopping the engine. Since the system cannot know when the engine will be stopped, the diagnostic routines are started as soon as oxygen sensing is activated.

Trip
A trip is a driving cycle after a rest period that enabled the diagnostic system to monitor all components and systems at least once. In the event of a fault, it may not be possible to perform all diagnostic routines under certain circumstances. For this reason, a replacement trip is recognized after an operating period of 1150 seconds. In other words, a driving cycle is recognized as a trip after this time, even if not all diagnostic routines were performed.

Ready status
The ready status menu item indicates whether the OBD system has performed the desired fault checks. It is not important whether or not a fault was found.

The ready status is displayed for the following sub-systems:
- TWC conversion
- Fuel tank ventilation system
- Secondary air system
- Oxygen sensor
- Oxygen sensor heating

The ready status for a sub-system is reset to zero if a fault was present for the sub-system in question and the fault is erased.

Freeze frame
Freeze frame data are the momentary operating conditions that are recorded in the memory when a fault occurs.

The following operating conditions can be stored with each fault:
- Fault DIC
- Oxygen sensing status, bank 1
- Oxygen sensing status, bank 2
- Load value
- Engine temperature
- Oxygen sensing value FP, bank 1
- Adaptation value FPA, bank 1
- Oxygen sensing value FR2, bank 2
- Adaptation value FPA 2, bank 2
- Engine speed
- Vehicle speed

Fault shedding
When a fault is recognized during a diagnostic routine, it is stored as a suspected fault. At the same time, a fault shedding counter is started that contains a certain value. During additional diagnostic routines, the shedding counter will be decreased by 1 if the fault is recognized in the same area window. If the shedding counter has reached the value 0, the fault is considered as shedded.

Fault healing
When a fault is recognized during a diagnostic routine, it is stored as a suspected fault. At the same time a fault healing counter is started that contains a certain value. During additional diagnostic routines, the fault healing counter will be decreased by 1 if the fault is not recognized in the same area window. If the fault healing counter has reached the value 0, the fault is considered to be healed. If the fault has triggered the Malfunction Indicator Light (MIL) then the latter is switched off as long as it is not triggered by any further faults.

Fault erasing counter
For each recognized fault, an individual fault erasing Counter is kept. The counter determines the memory storage time of the respective fault.
The first time the fault is recognized, the fault erasing counter is set to 80.
If an unshedded fault is recognized as healed, the fault erasing counter is set to 10. Each time a shedded fault is recognized, the fault erasing counter is set to 40. It retains this value until fault healing is recognized. After each warm-up operating cycle the fault erasing counter is decreased by 1, when the fault in question is recognized as unshedded or healed. When the fault erasing counter reaches the value 0, the fault is erased from the memory.

Diagnosis software numbers classification

M 15 XX
911 Carrera 4 as of model '99 USA

M 16 XX
911 Carrera 4 as of model '99 PoW
911 Carrera 2 as of model '00 PoW Exhaust standard EU 2

M 17 XX
Boxster S as of model '00 USA

M 18 XX
Boxster S as of model '00 PoW Exhaust standard EU 2

M 19 XX
Boxster as of model '00 USA

M 20 XX
Boxster as of model '00 PoW Exhaust standard EU 2

M 24 XX
911 Carrera 2/4 as of model '00 USA

M 25 XX
Boxster as of model '00 PoW Exhaust standard EU 3

M 26 XX
Boxster S as of model '00 Exhaust standard EU 3

M 27 XX
911 Carrera 2/4 as of model '00 Exhaust standard EU 3

M 28 XX
Boxster as of model '00 Exhaust standard D4

M 29 XX
911 Carrera 2/4 as of model '00 Exhaust standard D4

M 30 XX
Boxster S as of model 00 Exhaust standard D4

Important Notes

Adaptation
The DME control module must perform a learning and adaptation routine if
- The battery was disconnected
- The DME control module connector was unplugged
- A new DME control module has been installed
- The throttle part has been replaced.

To initiate adaptation:
1. Switch on the ignition for 1 minute without starting the engine.
Do not press the accelerator.

2. Switch off the ignition for at least 10 seconds.
The following conditions must be fulfilled, otherwise learning is not possible:
- Stationary vehicle
- Accelerator pedal angle < 0.8 %
- Battery voltage > 10 V
- Engine temperature between 5 CC and 100 °C
- Intake air temperature > 10 °C

Special tool 9637
The fault memory must be read out and saved before special tool 9637 is connected, as the fault memory is erased when the control module connector is unplugged.