Beruflich Dokumente
Kultur Dokumente
Vehicle Coverage:
Landrover LR4 2010 MY
Range Rover 2010 MY
Range Rover Sport 2010 MY
1 Contents.....................................................................................................................................................................................................2
2 Introduction.................................................................................................................................................................................................6
2.1 Inputs and Outputs .....................................................................................................................................................................................6
2.2 Generic OBD-II Drive Cycle ........................................................................................................................................................................9
3 Inspection and Maintenance Test Readiness Setting for Vehicles Land Rover Test Group ALRXT05.0001 ...............................................10
3.1 Introduction...............................................................................................................................................................................................10
3.2 Readiness Setting.....................................................................................................................................................................................10
4 Communication of Monitor Test Results - Mode$06 ..................................................................................................................................12
5 Onboard Monitoring ..................................................................................................................................................................................16
5.1 Catalyst Monitoring ...................................................................................................................................................................................16
5.1.1 Description ...............................................................................................................................................................................................16
5.1.2 Monitoring Structure .................................................................................................................................................................................17
5.1.3 Drive Cycle Information.............................................................................................................................................................................20
5.2 Misfire Monitoring .....................................................................................................................................................................................20
5.2.1 Description ...............................................................................................................................................................................................20
5.2.2 Misfire Monitor Process Hierarchy.............................................................................................................................................................22
5.2.3 Strategy Description .................................................................................................................................................................................23
5.2.4 Misfire Malfunction Criteria........................................................................................................................................................................26
5.2.5 Misfire Enable Criteria...............................................................................................................................................................................27
5.2.6 Drive Cycle Information.............................................................................................................................................................................28
5.3 Evaporative Emission System Monitoring..................................................................................................................................................29
5.3.1 Schematic ................................................................................................................................................................................................29
5.3.2 Description ...............................................................................................................................................................................................30
5.3.3 Implementation for the 5.0 V8 Test Groups ...............................................................................................................................................31
5.3.4 Calculation................................................................................................................................................................................................31
5.3.5 Fault Determination ..................................................................................................................................................................................32
5.3.6 Typical monitoring results .........................................................................................................................................................................34
5.3.7 Monitoring Structure .................................................................................................................................................................................35
5.3.8 Diagnosis Frequency and MIL Illumination ................................................................................................................................................38
5.3.9 Evaporative Emission Canister Purge Valve Description ...........................................................................................................................40
5.3.10 Purge Flow Monitoring Structure...............................................................................................................................................................41
5.3.11 Drive Cycle Information.............................................................................................................................................................................45
5.4 Fuel System Monitoring ............................................................................................................................................................................46
5.4.1 Description ...............................................................................................................................................................................................46
5.4.2 Sub-Feedback Rationality Check - P2096, P2097, P2098 and P2099 .......................................................................................................46
5.4.3 Monitoring Structure .................................................................................................................................................................................47
5.4.4 Drive Cycle Information.............................................................................................................................................................................52
5.5 Oxygen Sensor Monitoring........................................................................................................................................................................53
1. Unless stated otherwise, the following generic drive cycle will apply:
o
2. Ensure Engine Coolant Temperature is less than 60 C.
3. Start Engine.
4. Allow engine to idle for 3 minutes with heated rear window and aircon on.
5. Turn off HRW.
6. Two light accelerations (0 to 35 mph with light pedal pressure).
7. Two medium accelerations (0 to 45 mph with moderate pedal pressure).
8. Two hard accelerations (0 to 55 mph with heavy pedal pressure).
9. Decelerate to 20mph without braking.
10. Accelerate back to 55mph with moderate pedal pressure.
11. Maintain steady speed of 55mph for 2 minutes.
12. Decelerate gently to stop.
13. Allow engine to idle for 2 minutes.
The vehicle must be operated safely and within all prevailing traffic regulations, when being driven according to the requirements of the above
procedure.
3.1 Introduction
OBD II systems are required to report if a vehicle has completed its major diagnostic, since its fault memory was last cleared. This is often referred to
as "readiness".
Readiness will also be reset if the battery is disconnected or discharged and by re-programming or replacement of the engine control module.
State vehicle emissions test programs usually require that readiness is set as a condition of a vehicle passing their test. This is because they need to
know that the diagnostics have had the chance to find a fault, if one is present.
The scan tool will list which of the main monitors are supported and which of these "non-continuous monitors" are "complete" or "ready". The scan tool
may also list continuous monitors, such as misfire and fuel system monitoring, but these will always report as complete. (This information is reported
under Service $01, PID$01, data bytes C and D according to the SAE scan tool communications standard).
This information allows a technician to identify which monitors are not ready and to operate the vehicle so that these monitors have the best chance of
completion.
Data on the "enable conditions" for individual diagnostics is already included in Jaguar's (or Land Rover's) On-Board Diagnostics guide for these test
groups, but the following table is intended as a brief guide as to which diagnostics must run to set readiness under each of the categories reported by
a scan tool and the basic driving conditions for those monitors.
In addition to these basic parameters, many monitors will not run at abnormal conditions (e.g. high altitude or low ambient temperatures).
The vehicle must be operated safely and within all prevailing traffic regulations, when being driven according to the requirements of the above table.
5.1.1 Description
The Catalyst monitor operates once per trip. It waits until all entry conditions are met.
Once all the entry conditions are met, the monitor will start to run. The fuelling is cycled rich and lean by approximately ±3% to achieve a reaction at
the downstream oxygen sensor (d/s HO2S): this process is called dither. At the start of any monitoring period, a short delay will occur before data
collection in order to ensure that the fuelling is stable when the diagnosis takes place. If for any reason, the entry conditions become invalid, but the
monitor has not yet completed then the result and execution time data are retained. If the entry conditions are again fulfilled, the monitor will resume
with the stored data, unless there have been more than four attempts to run the check, in which case the monitor will clear the accumulated data and
restart the diagnosis.
After the monitor has run for a sufficient period of time, the results are calculated. These are determined by accumulating the locus of the downstream
oxygen sensor signal against the accumulation of the upstream oxygen sensor (u/s HO2S), i.e. the more active the downstream sensor, the less
oxygen storage capacity the catalyst has, resulting in a correspondingly higher locus value. With a correctly operating catalyst, the downstream
sensor is not so active, so lower locus values are obtained than would be recorded with a faulty system.
If the accumulated count is lower than a calibratable threshold then the catalyst diagnostic test has been passed. If the accumulated count equals or
exceeds the calibratable threshold then the catalyst system has a problem and the appropriate DTC will be stored.
Entry Conditions:
Reset test conditions and monitor values
Engine Speed within window
ECT within window
Mass Airflow within window
Engine Speed rate of change below
threshold
Throttle rate of change below threshold
MAF rate of change below threshold
Atmospheric Pressure above threshold
Sub-feedback within window
Short term A/F Trim within window No
Feedback control active
Entry conditions
Sub-feedback execution time above met?
threshold
Not at idle
Vehicle speed within window
Time after start above threshold
Catalyst temperature within window No
Engine load within window Yes
Inlet Air Temp within window
u/s HO2S element impedance within
window Test
Integrated airflow counter above threshold Yes
counter
Is stabilization maximum
No exceeded?
delay
complete?
Yes
Yes
Yes
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Catalyst efficiency bank A P0420 Upstream HO2S signal locus Locus ratio >= 15 Engine speed 1300 < RPM < 2400 rpm 20 s 2
Catalyst efficiency bank B P0430 compared to downstream Engine Coolant Temperature 60 <= ECT <= 120 degC Drive
(catm) HO2S signal locus during Mass airflow 14 < MAF < 55 g/s Cycles
A/F dither. Engine speed change <= 30 rpm/640ms
Throttle position change <= 3.5% /1280ms
Mass airflow change <= 10 g/s/640ms
Atmospheric pressure >= 68 kPa
Sub F/B trim 0.975 < F < 1.025
Short term A/F trim 0.70 < trim < 1.30
CL A/F control & sub F/B control Active
Sub F/B executing for >= 3.0 s
Idle Inactive
Vehicle speed 0 <= v <= 407 mph
Time after engine start >= 0 s
Catalyst temperature 500 <= Cat Temp <= 1000 degC
D/s HO2S signal (smoothed) 0.0 <= V <= 0.95 V
Engine load 0.50 <= Engine Load <= 2.0 g/rev
Inlet air temperature >= -20 degC
U/s HO2S element impedance 0 <= Z <= 60 Ohms
Integrated Airflow counter >= 60
(Integration proceeds if time after
start >= 30s and ECT >= 20 degC)
High range transfer transmission Active
Fault Codes that disable P2229 P2228 P0113 P0112 P00AD P00AC P007D
P0420 P007C P0103 P0102 P010D P010C P0238 P0237
P0108 P0107 P0118 P0117 P0643 P0642 P0193 P0192
P0010 P2088 P2089 P0013 P2090 P2091 P001A
P001B P001C P0031 (op) P0031 (gs) P0032 P0351
P2300 P2301 P0353 P2306 P2307 P0355 P2312 P2313
P0357 P2318 P2319 P0444 P0458 P0459 P007B (ris)
P007B (dwn) P007B (scf) P0111 (hi) P0111 (lo) P0111
(stk) P00AB (hi) P00AB (lo) P00AB (stk) P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0236 P0101 P010B
P115D P0069 P02EE (bv) P02F0 (bv) P02F2 (bv)
P02F4 (bv) P02EE (hl) P02F0 (hl) P02F2 (hl) P02F4 (hl)
P0262 (hb) P0268 (hb) P0274 (hb) P0280 (hb) P0261
(lb) P0267 (lb) P0273 (lb) P0279 (lb) P0262 (hg) P0268
(hg) P0274 (hg) P0280 (hg) P0261 (lg) P0267 (lg)
P0273 (lg) P0279 (lg) P0201 P0203 P0205 P0207
P0335 (_2) P0336 P0335 (_2s) P0336 (sub) P1315
P1316 P0132 P0131 P0133 P0133 (dl) P0134 P0137
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
P0138 P0140 P2096 P2097 P0036 P0141 P0171 P0172
P0026 (hi) P0026 (lo) P0011 P0012 P0016 P0027 (hi)
P0027 (lo) P0014 P0015 P0017 P0191 P0088 P0087
P0000 P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P003C P00C6 (dual) P0054
Fault Codes that disable P2229 P2228 P0113 P0112 P00AD P00AC P007D
P0430 P007C P0103 P0102 P010D P010C P0238 P0237
P0108 P0107 P0118 P0117 P0643 P0642 P0193
P0192 P0020 P2092 P2093 P0023 P2094 P2095
P001D P001E P001F P0051 P0051 (gs) P0052 P0352
P2303 P2304 P0354 P2309 P2310 P0356 P2315
P2316 P0358 P2321 P2322 P0444 P0458 P0459
P007B (ris) P007B (dwn) P007B (scf) P0111 (hi) P0111
(lo) P0111 (stk) P00AB (hi) P00AB (lo) P00AB (stk)
P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0236 P0101
P010B P115D P0069 P02EF (bv) P02F1 (bv) P02F3
(bv) P02F5 (bv) P02EF (hl) P02F1 (hl) P02F3 (hl)
P02F5 (hl) P0265 (hb) P0271 (hb) P0277 (hb) P0283
(hb) P0264 (lb) P0270 (lb) P0276 (lb) P0282 (lb) P0265
(hg) P0271 (hg) P0277 (hg) P0283 (hg) P0264 (lg)
P0270 (lg) P0276 (lg) P0282 (lg) P0202 P0204 P0206
P0208 P1315 P1316 P0152 P0151 P0153 P0153 (dl)
P0154 P0157 P0158 P0160 P2098 P2099 P0056
P0161 P0174 P0175 P0028 (hi) P0028 (lo) P0021
P0022 P0018 P0029 (hi) P0029 (lo) P0024 P0025
P0019 P0191 P0088 P0087 P0000 P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606
(dupl_s) P0605 (fmemo) P0605 (fmemo_s) P0606
(wdog) P0606 (wdog_s) P0607 P0601 P0601 (sub)
P003E P00C6 (dual) P0060
5.2.1 Description
The misfire detection monitor runs continuously and is designed to detect levels of misfire that can cause thermal damage to the catalyst and/or result
in excessive tailpipe emissions. Determination of a misfire is made by analysis of changes in crankshaft speed, since a misfire will cause a drop in
acceleration after an anticipated firing event. This data is analysed in four ways to ensure the detection of all possible combinations of misfire.
The results of the misfire judgement process for each firing event are used to determine whether two failure levels have been met, 'catalyst damage'
misfire and 'excess emissions' misfire. Each misfire judgement process has its own failure threshold and calculation period.
The misfire monitor operates continuously within the boundaries of the regulated monitor operation window, as shown in the following
diagram.
100
90
60
Eff ect of 4" Hg
50 'Pressure Relief'
10
0
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000 6500 7000
Engine Speed (rpm)
After engine start, the monitor will be enabled as soon as the engine speed rises above the minimum operation speed (150 rpm below fully warm
stabilised idle speed). Two revolutions of crank angle data, i.e. one sample of data from each cylinder firing, must then be 'buffered' before any
decisions can be made by the monitor. Before engine speed has reached the top of the start flare the monitor will be ready to make misfire
judgements, which are then made on every cylinder firing, irrespective of whether the monitor is enabled or not.
Segment offset and period determined, dependent upon "Catalyst Damage" judgement made and fault code
engine speed and engine operating conditions set, if appropriate conditions have been met
Change in angular speed calculated and Adjustment of crank angle tolerance 'adaption' values updated in
scaled for better signal resolution. Data back up memory for all cylinders, if appropriate conditions met
manipulated and stored in memory
Introduction
Different sections of the monitor operate at different 'loop' rates. The flow chart above details the decisions made for each firing event in approximate
chronological order, although some steps may not be made every 'loop'. A further explanation of these decisions is given below:
The monitor records crank angle time data every 30° of rotation with a 250 nanosecond measurement accuracy. Each 30° period is known as a
'segment'. The starting point of the segments relative to Top Dead Centre (TDC) firing and the number of segments used can be defined for each
application so as to give the best and most robust probability of misfire detection. To maintain good detection across the entire engine speed range
the measurement period can be altered between low and high engine speeds. The engine speed at which the measurement period is altered, if any,
is determined by experiment.
Additionally, a third measurement period is defined for detection during start-up and when catalyst warm up ignition retard is being used after engine
start.
The angular speed of the crankshaft during the ignition stroke is calculated using the segment data, multiplied by a scaling factor for easier storage in
the ECM’s memory, manipulated further and stored for each cylinder firing,
Calculations are made using the stored data to generate an adaptive misfire 'signal'. Errors in the crank angle time data (for example, due to
manufacturing tolerances) are calculated for each cylinder individually at pre-determined engine speed breakpoints. Compensating for these errors
reduces the variation in amplitude of the misfire signal.
The data is gathered during normal combustion, requiring strict entry conditions to ensure robust adaptions. Adaption values are rolled in to a
temporary calculation for the current speed breakpoint.
Where calculated adaption values have been stored in memory the adaptive signal will be calculated. This signal generally has the best opportunity to
detect. However, the signal requires data in each speed breakpoint to interpolate between. If there is a breakpoint where no adaptions have been
stored then the adaptive signal will only be used for misfire judgements up to the breakpoint immediately below it. For example if there is adaption
data stored in memory up to 2000 rpm but none at 2500 rpm the adaptive signal will only be used up to 2000 rpm.
To support detection across the entire engine speed range further misfire 'signals' are calculated. These signals are not adjusted for errors in crank
angle tolerance. These signals typically give good probability of detection at low engine speeds but become less effective at higher engine speeds.
Misfire judgements are delayed by one firing cycle. This is to allow comparison of the signal with the cylinders that fire before and after it, eliminating
'noisy' signals. Should the monitor repeatedly eliminate the signal over 5 consecutive firings on the same cylinder the monitor will assume that two
adjacent cylinders are misfiring, ignore the signal check and allocate the 5 eliminated misfire judgements to the appropriate cylinder.
Adapted and un-adapted signals are compared to their respective thresholds in series. The diagram below illustrates the behaviour of the 'adaptive'
misfire signal with 1.0% intermittent misfire applied (data taken from a typical 8 cylinder application) and its judgement threshold.
Should one signal cross the threshold, indicating a misfire, the other methods will be skipped in order to prevent multiple counting of the same misfire
event.
150
Adaptive misfire
signal threshold
Misfire
100
Pre-misfire
Misfire Value
50
-50
Adaptive misfire
Post-misfire signal
-100
0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150
Cylinder Firing Number (90° crank angle logging)
If 200 revolutions of misfire judgements have been made the monitor will make an assessment as to whether 'catalyst damage' levels of misfire have
been exceeded or not. The failure level is determined from a look up table. The sum of individual cylinder misfire counters is then compared against
this threshold. If the failure threshold is exceeded then the MIL will illuminate and the appropriate DTCs will be stored.
If no misfires have been recorded for the last 'catalyst damage' judgement, and sufficient temporary adaption calculations have been made, the
temporary adaption data calculated for each cylinder will be stored in 'back-up' memory for the appropriate engine speed breakpoint.
If a single misfire is counted for the last 'catalyst damage' judgement, all temporary adaption data will be reset, along with the temporary calculation.
Once data has been stored in memory it can be updated but will not be erased, even after a battery reset.
If 1000 revolutions of misfire judgements have been made the monitor will make an assessment as to whether 'emissions failure' levels of misfire have
been exceeded or not. The failure level is a single threshold value. The sum of individual cylinder misfire counters is compared against this threshold.
If the failure threshold is exceeded then the MIL will illuminate and the appropriate DTCs will be stored.
Different monitor enable conditions are checked depending upon the operating condition of the engine (for example, fewer conditions apply during
engine start). If all the appropriate enable conditions are met the monitor execution flag is set.
Specific operating conditions necessary for learning misfire 'adaption' values are checked and the adaption execution flag set as appropriate.
A rolling average of 'delta' wheel speed data is calculated from ABS vehicle speed data transmitted over the CAN. This data is compared to calibrated
thresholds to determine if the vehicle is being driven over a rough surface that might cause misdiagnosis of a misfire. If a rough road judgement is
made the appropriate flag is set and taken into account the next time monitor execution conditions are checked.
An additional DTC is stored alongside the misfire DTCs if the fuel level is below a calibrateable level. This is to indicate that a possible cause of the
misfire DTCs was low fuel level.
Time measurements taken from Increase catalyst damage judgement Increase emissions failure judgement
toothed crank ring, change in angular counter by 1 counter by 1
velocity calculated, data manipulated Sum catalyst damage counters for Sum all emissions failure cylinder
and stored in memory Bank 1 and Bank 2 separately counters
Yes Yes
No Misfire present on
previous firing
Set preliminary catalyst damage Set preliminary emissions failure
cylinder?
failure judgement flag. judgement flag.
Yes
Yes
Yes
Increment catalyst failure judgement
counter. Increment emissions failure judgement
Catalyst damage
Yes counter.
firing cycle
counter = 800 ? B Make temporary / permanent failure Make temporary / permanent failure
judgement based on "Fault Setting" judgement based on "Fault Setting"
requirements detailed in CARB mail- requirements detailed in CARB mail-
out MSC 98-01 out MSC 98-01
No
Reset catalyst damage counters for Reset emissions failure counters for
every cylinder every cylinder
Reset catalyst damage firing cycle Reset emissions failure firing cycle
counter counter
Reset stored values of maximum
engine speed and load
Emissions failure
firing cycle Yes
counter = 4000 ? C
No
A Engine running
Engine
No speed greater 2 Revolutions
than minimum No of cylinder
Disable Monitor
monitor operation firing data
speed? stored in
memory?
Yes
Yes
Calculated
load greater
No Yes No Has the engine
than minimum Any driver
load required been running for
throttle transient
for monitor at least 5
above
operation? seconds?
threshold?
Yes Yes
No
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Misfire Monitoring Crank speed fluctuation
Random Misfire P0300 Misfire at catalyst damage level > See Engine speed (LR4 & R/R Sport) 450 <= RPM <= 6800 rpm
Misfire cylinder 1 P0301 (200 rev block) Misfire Engine speed (Range Rover) 560 <= RPM <= 6800 rpm Depends on
Misfire cylinder 2 P0302 or Charts Coolant temperature > -8.1 degC engine speed,
Misfire cylinder 3 P0303 Misfire at excess emissions Estimated ambient temperature -20 < IAT < 119 degC misfire pattern
Misfire cylinder 4 P0304 level: Atmospheric pressure > 68 kPa and time after
Misfire cylinder 5 P0305 Naturally aspirated engines > 110 counts Filtered fuel level >= 3 % engine start
Misfire cylinder 6 P0306 Supercharged engines > 85 counts Engine load Positive
Misfire cylinder 7 P0307 (1000 rev block) Engine speed delta < 400 rpm/80 ms
Misfire cylinder 8 P0308 Engine speed delta (R/Rover SC < 500 rpm/80 ms
only)
Engine load delta < 0.50 g/rev/80 ms
Throttle angle delta < 30.1%/8 ms
Throttle angle delta (R/R Sport SC < 39.8%/8 ms
only)
Fuel cut off Not Active
Rough road Not Detected
Slip control Not Active
Misfire during first 1000 P0316 Misfire during the first 1000
revs engine revoultions after start
Misfire low fuel level P0313 Misfire at catalyst damage or Fuel level <= 5 %
excessive emissions level
Catalyst damage P1315 These codes are stored
Excess emissions P1316 with the relevant cylinder
codes for use in inhibiting Fault Codes that disable Misfire P0335 (_1) P0335 (_2) P0336 P0335 (_1s) P0335
other functions, but are Detection (_2s) P0336 (sub) P1603 P0606 (cnt) P0606 (cnt_s)
not output to a scan tool P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog)
P0606 (wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.3.1 Schematic
Fuel Tank
EVAP
canister
Engine
ECM Solenoid
Ambient
Air
Pump Filter
Heater
Diagnostic Module –
Tank Leakage (DMTL)
The evaporative emission monitoring system permits the detection of leaks with a diameter of 0.5 mm (20 thou of an inch) or greater. This is achieved
by means of a pressure test of the system, performed by the Diagnostic Module - Tank Leakage (DMTL), which is an electrically operated pump fitted
to the atmospheric air intake of the EVAP canister.
• Reference Leak Measurement - The pump operates against the reference restriction within the DMTL. The Engine Control Module measures the
current consumption of the pump motor during this phase.
• Leak Measurement - The solenoid in the DMTL is operated in order to shut off normal purge airflow into the EVAP canister. The pump can now
pressurise the fuel tank and vapour handling system. The Engine Control Module again measures the current consumed by the pump motor and
by comparing this with the reference current, determines whether a leak is present. A high current indicates a tight system and a low current
indicates a leaking system.
5.3.4 Calculation
1. At the start of the reference leak determination period, current_filter_2 and current_filter_3 are set equal to current_filter_1
4. If ref_stab_counter >= 5.0 seconds, then ref_stab_value_dev = absolute value of (current_filter_3 - ref_stab_value)
5. If ref_stab_counter >= 5.0 seconds and ref_stab_value_dev <= 0.1 mA, then Reference_current = current_filter_3
In summary, for the successful determination of the reference current, current_filter_1 must be within around +/- 2% of current_filter_2 for at
least 5 seconds and current_filter_3 cannot change by more than 0.1 mA during that 5 second period.
If the current_filter_1 is above or below a threshold (14 or 37 milliamps) during the reference leak determination, then a timer is incremented.
If the timer exceeds 2 seconds, then a fault (P2405 or P2406) is set. There are separate timers for each of the two fault paths and the time
must be continuous for the diagnostic to fail.
The P2404 diagnostic is set if the reference leak determination has been executing without completing for more than 60 seconds.
Two values are calculated, the relative pump current (Irel), which is given by:
And the Area Ratio (Ak), which is the area between the measured pump current and the ideal pump current (A1 in the chart below) divided by
the area below the ideal pump current, corrected for the minimum pump current (A2 in the chart below):
Actual Pump
Reference Leak Pump Current
Pump Current
Current 0.5mm
A2
Minimum
Pump Time
Current
0.5mm
Leak
1.0mm or >
Leak
No Leak
Pump Current
0.5mm Leak
Time
Yes
No
Reference
Current - Min. Pump Component Error
Yes
Current (during Rough Leak Measurement) Detected
< Threshold
No
Relative
No Rough
Pump Current > No
Leak Detected
Threshold
Yes
A
No
No
Maximum
Component Error
Yes diagnostic time
Detected
exceeded?
No
No
Yes
A
Reference Leak Repeat Measurement and Small
Leak Judgement
Yes
Current
Leak Free
No < New Reference Leak
System Detected
Current
Yes
Potential Small
Leak Detected
A
Engine Start
Fuel
Refueling
No level change during soak
Detected
< threshold?
Yes
Potential
Rough Leak
rough leak detected during Yes
Confirmed
soak?
No
Potential
Small Leak
Yes small leak detected
Confirmed
during soak?
No
A
Increment IUMPR
small or large leak Soak period
Yes
numerators as time > Maximum diagnostic time?
appropriate
No
End
Ignition ON
OFF
Leak diagnosis
Cycle Bit
If Leak detected:
Failure Bit
< 2 min after engine start (tank fuel level settled)
MIL ON
OFF
Ignition ON
OFF
Refueling
detected
Leak diagnosis
Cycle Bit
If Leak detected:
Failure Bit
Circuit Continuity
Circuit continuity is checked by monitoring the commanded and the actual state of the EVAP canister purge valve. If the commanded and actual
states do not match, a timer is started. If the states do not match within the timed period then a failure is registered. If the failure occurs on two drive
cycles then the appropriate DTC is logged.
Flow Check
The purge flow monitor works continuously and is designed to detect low purge flow caused by a blockage in the purge system or a malfunctioning
EVAP canister purge valve.
The basis of the diagnostic is to detect the presence of intake pressure pulses caused by the 10 Hz pulse width modulated control of the EVAP
canister purge valve duty (as shown in the purge operation diagram below).
A discrete Fourier transform (DFT) calculation is used to help distinguish these pulses from other noises present in the intake pressure signal.
Purge operation
Entry Conditions
No
Purge active
Engine speed within a window
Purge duty within a window Entry conditions No
Atmospheric pressure - MAP > satisfied?
threshold
MAP delta < threshold
IAT >= threshold No
Yes
No Fuel cut not in progress
Yes
Monitoring duration
complete?
Yes
Yes
Yes Yes
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fuel Evaporative Leak Pressure test of system using
Monitoring (leak) ECM driven pump
Rough leak P0442 [(Area ratio >= 0.40 Soak time >= 10800 secs From 200 to 2
Drive
(leak_4) and Time after start >= 600 secs 250 secs Cycles
Time taken to pressurize tank > 200 s) Ignition switch Off
or Voltage supply 10 <= Ubatt <= 15 V
Time taken to pressurize tank > 250 s] Estimated ambient temperature 0 <= Amb temp <= 40 degC
and Atmospheric pressure >= 70 kPa
Relative pump current < 0.35... < Engine Coolant Temperature <= 110 degC
0.55 Canister loading <= 5.0
Small leak P0456 [Area ratio > 0.40 Fuel level 15 <= FTL <= 85 % From 250
(leak_6/7) or Refuelling not detected (level change < 10% during soak to 890 secs
Time taken to pressurize tank > 700 s] period)
and Fuel level stabilisation Stabilised
Relative pump current < 1.4 Purge valve duty Closed
Reference current high P2406 Reference leak current > 37 mA
(pump
hardware fault)
(leak_0)
Reference current low P2405 Reference leak current < 14 mA
(pump
hardware fault)
(leak_1)
Change over valve stuck P2450 Pump current delta at Change > 2.0 mA
open (pump over valve close
hardware fault) point (for pump current <= ref
(leak_3) leak current)
Change over valve stuck P2451 Pump current delta at Change > 2.0 mA
close (pump over valve close
hardware fault) point (for pump current > ref
(leak_10) leak current)
Reference leak (pump P2404 Time taken for pump current > 60 s
hardware fault) stabilisation during reference
(leak_2) leak measurement
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Noise fault (pump P2404 Total test duration without any > 800 s 2 Drive
hardware fault) other judgement being made Cycles
(leak_5)
Fault Codes that disable Leak P2229 P2228 P0643 P0642 P0073 P0072 P240A
Detection P240B P240C P0444 P0458 P0459 P0071 (hi) P0071
(lo) P0069 P0441 P2610 P2610 (hi) P2610 (lo) U0155
P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P0600
Electrical continuity
checking
P2402 Short to battery Leak detection module state operating 4.0 s 2 Drive
Leak detection pump
Short to ground or open Cycles
power stage P2401
circuit
(leak_8/9)
Fault Codes that disable P2401 P2229 P2228 P0643 P0642 P0073 P0072 P240A
& P2402 P240B P240C P0444 P0458 P0459 P0071 (hi) P0071
(lo) P0069 P0441 P2610 P2610 (hi) P2610 (lo) U0155
P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P0600
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Leak detection pump P0448 Short to battery Leak detection module state operating 4.0 s 2 Drive
solenoid valve P0447 Short to ground or open Cycles
(leak_11/12) circuit Fault Codes that disable P0447 P2229 P2228 P0643 P0642 P0073 P0072 P240A P240B
& P0448 P240C P0444 P0458 P0459 P0071 (hi) P0071 (lo) P0069
P0441 P2610 P2610 (hi) P2610 (lo) U0155 P1603 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P0600
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
P240A, P240B & P240C (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0600
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
purge valve circuit monitoring (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0600
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Evaporative Purge Valve
Low flow P0441 Check for intake pressure Amplitude of 10Hz intake < 0.0003 kPa Purge Active 25 s 2 Drive
(purg) pulsations caused by the 10Hz pressure pulsations > 2 counts Fuel Cut Not active Cycles
pulse width modulated control Estimated ambient temperature >= -10 degC
of the purge valve duty Purge valve duty 0.45 < duty ratio < 0.65
Intake manifold pressure delta < 0.8 kPa
Engine speed 500 < RPM < 2500 rpm
Atmospheric press - filtered MAP see table
Accumulated pulsation samples = 750
Fault Codes that disable P0441 P0010 P0013 P001A P001B P001C P001D P001E P001F
P0020 P0023 P001E P001F P0020 P0023 P0069 P0106
P0107 P0108 P0116 (hi) P0116 (lo) P0116 (stk) P0117
P0118 P0125 P0236 P0237 P0238 P0444 P0458 P0459
P0601 P0604 (ramint) P0604 (ramsht) P0605 (fmemo)
P0605 (romcnt) P0605 (romexc) P0605 (romint) P0606
(cnt) P0606 (dupl) P0606 (eci) P0606 (ssc) P0606 (wdog)
P0607 P0642 P0643 P0660 P0661 P0662 P1603 P2088
P2089 P2090 P2091 P2092 P2093 P2094 P2095 P2228
P2229
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Entry Condition for Purge Valve Flow Diagnostic (TBD_PURG_DIFFPRESCHOK) – DTC P0441 - Naturally Aspirated Engines
Engine Speed (rpm) 0 1000 2000 3000 4000 5000 6000 7000
Atmospheric press - filtered MAP (kPa) 30 30 30 30 30 30 30 30
Entry Condition for Purge Valve Flow Diagnostic (TBD_PURG_DIFFPRESCHOK) – DTC P0441 - Supercharged Engines
Engine Speed (rpm) 0 1149 1150 1250 1251 5000 6000 7000
Atmospheric press - filtered MAP (kPa) 30 30 256 256 30 30 30 30
5.4.1 Description
This diagnostic monitors the long-term adaptions of the fuel system. If the adaptions exceed calibrated thresholds for a calibratable time then an
appropriate DTC will be recorded.
This monitor operates continuously provided the entry conditions have been met. Any of the components that make up the fuel system and are
individually monitored, like the oxygen sensors, fuel pressure sensor and fuel delivery system, must also themselves be in working order with no
faults.
The diagnostic runs if the entry conditions have been met, all the oxygen sensors are working, the fuel system adaptions are within their limits and
sub-feedback is operating
If the sub-feedback adaption values for either bank exceed a rich or lean threshold, then a fault will be detected.
A
No
Entry Conditions
No
Rich normal judgment
No
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fuel System (fsys)
Fuel too lean - Bank A P0171 Long term FT Long term FT >= 120 % Afterstart >= 30.0 s 10 s 2 Drive
Fuel too lean - Bank B P0174 values outside limits in any 1 Engine speed >= 500 rpm Cycles
Fuel too rich - Bank A P0172 of the 5 adaption areas Long term FT <= 78 % Mass airflow >= 2.0 g/s
Fuel too rich - Bank B P0175 Engine Coolant Temperature 60 < T < 120 degC
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fuel System - Secondary Trim
Sub feedback too lean P2096 Sub feedback adaption Sub feedback trim value >= 1.8 % All following entry conditions true For > 2.0 s 2 Drive
Bank A outside limit value Sub feedback Executing & Catalyst Diagnosis Cycles
Sub feedback too lean P2098 >= 1.8 % Not currently executing
Bank B Subfeedback deviation rich limit >= 0
Sub feedback too rich P2097 <= 1.8 % Subfeedback deviation lean limit >= 0
Bank A Battery volatge >= 9.0 V
Sub feedback too rich P2099 <= 1.8 % Engine Coolant Temperature > 60 degC
Bank B Inlet air temperature < 85 degC
Purge duty ratio <= 1.0
CPS functional test Not currently executing
Catalyst temperature > 100 degC
Engine speed 850 < RPM < 3000 rpm
Engine load 0.4 < load < 2.0 g/rev
U/s HO2S slow response test Not currently executing
Feedback compensation error < 0.04
Relative purge ratio <= 100 %
Airflow since start of last fuel cut >= see table
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank P2229 P2228 P0113 P0112 P00AD P00AC P007D
A Sub Feedback Monitoring P007C P0103 P0102 P010D P010C P0238 P0237 P0108
P0107 P0118 P0117 P0643 P0642 P0193 P0192 P0010
P2088 P2089 P0013 P2090 P2091 P001A P001B P001C
P0031 (op) P0031 (gs) P0032 P0351 P2300 P2301
P0353 P2306 P2307 P0355 P2312 P2313 P0357 P2318
P2319 P0444 P0458 P007B (ris) P007B (dwn) P007B
(scf) P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB
(lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0236 P0101 P010B P115D P0106 P0069 P02EE (bv)
P02F0 (bv) P02F2 (bv) P02F4 (bv) P02EE (hl) P02F0 (hl)
P02F2 (hl) P02F4 (hl) P0262 (hb) P0268 (hb) P0274 (hb)
P0280 (hb) P0261 (lb) P0267 (lb) P0273 (lb) P0279 (lb)
P0262 (hg) P0268 (hg) P0274 (hg) P0280 (hg) P0261 (lg)
P0267 (lg) P0273 (lg) P0279 (lg) P0201 P0203 P0205
P0207 P0335 (_2) P0336 P0340 (run) P0341 P0365 (run)
P0366 P0335 (_2s) P0336 (sub) P0340 (sub) P0341 (sub)
P0365 (run_s) P0366 (sub) P1315 P1316 P0132 P0131
P0133 P0133 (dl) P0134 P0137 P0138 P0140 P0036
P0141 P0171 P0172 P0026 (hi) P0026 (lo) P0011 P0012
P0016 P0027 (hi) P0027 (lo) P0014 P0015 P0017 P0441
P0191 P0088 P0087 P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606
(ssc_s) P0606 (dupl) P0606 (dupl_s) P0605 (fmemo)
P0605 (fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P003C P00C6 (dual) P2279 P0054
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank P2229 P2228 P0113 P0112 P00AD P00AC P007D
B Sub Feedback Monitoring P007C P0103 P0102 P010D P010C P0238 P0237 P0108
P0107 P0118 P0117 P0643 P0642 P0193 P0192 P0020
P2092 P2093 P0023 P2094 P2095 P001D P001E P001F
P0051 P0051 (gs) P0052 P0352 P2303 P2304 P0354
P2309 P2310 P0356 P2315 P2316 P0358 P2321 P2322
P0444 P0458 P007B (ris) P007B (dwn) P007B (scf)
P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0236 P0101 P010B P115D P0106 P0069 P02EF (bv)
P02F1 (bv) P02F3 (bv) P02F5 (bv) P02EF (hl) P02F1 (hl)
P02F3 (hl) P02F5 (hl) P0265 (hb) P0271 (hb) P0277 (hb)
P0283 (hb) P0264 (lb) P0270 (lb) P0276 (lb) P0282 (lb)
P0265 (hg) P0271 (hg) P0277 (hg) P0283 (hg) P0264 (lg)
P0270 (lg) P0276 (lg) P0282 (lg) P0202 P0204 P0206
P0208 P0335 (_2) P0336 P0345 (run) P0346 P0390 (run)
P0391 P0335 (_2s) P0336 (sub) P0345 (run_s) P0346
(sub) P0390 (run_s) P0391 (sub) P1315 P1316 P0152
P0151 P0153 P0153 (dl) P0154 P0157 P0158 P0160
P0056 P0161 P0174 P0175 P0028 (hi) P0028 (lo) P0021
P0022 P0018 P0029 (hi) P0029 (lo) P0024 P0025 P0019
P0441 P0191 P0088 P0087 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606
(ssc_s) P0606 (dupl) P0606 (dupl_s) P0605 (fmemo)
P0605 (fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P003E P00C6 (dual) P2279 P0060
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Subfeedback Entry Condition (TFI_SUBFBADP_ FCAIRLIM) – DTCs P2096, P2097, P2098 and P2099
Airflow Since Start of Fuel Cut (g) 10.7 30.5 90.0 199.9 500.5 1199.3 1699.8 8000.2
Disablement Threshold (g) 10.7 30.5 50.4 100.7 300.6 700.4 999.5 10000.6
The monitor is designed to run during periods of idle operation. It is a non-continuous diagnostic that will attempt to run during a drive cycle
whenever the entry conditions are met until a decision has been made. The monitor will not then operate again until the next drive cycle.
This is an intrusive monitor where the fuelling is cycled rich and lean by a set value at a frequency of about 0.5 Hz. Before this fuelling "dither"
is applied, the monitor may set a reduced target pressure for the high pressure fuel system. This is to ensure that the injectors run in a more
consistent area of their fuel delivery characteristic. Data is taken for each failure mode and accumulated over a set number of fuelling shifts
from rich to lean and lean to rich.
The delay data is corrected for engine airflow, as this is a measure of the system transport time. The response data is calculated by
measuring the lambda change between the signal turning point and the next change in the fuelling dither. This is divided by the time taken for
this signal change and then multiplied by a correction factor that depends on the time taken. This lambda response is multiplied by an
additional compensation factor that depends on the lambda response and the target lambda change. The target lambda change is equivalent
to the lambda shift of the applied fuelling dither. The final corrected response is normalized by dividing it by the target lambda change.
Each accumulated value is divided by the number of samples to provide a mean result for each mode.
For the symmetrical failure modes, these test values are compared with fault thresholds. For a delay fault, the test value must exceed a
threshold. Typically this is around 0.6 seconds. For a response fault, the final lambda response ratio must be lower than a fault threshold
which is typically equal to 0.1.
Asymmetric faults are only assessed if the ratio of the test results indicates that the delay or response is biased in one direction. For example,
for a rich to lean delay fault, the rich to lean delay test value divided by the lean to rich delay test value must be greater than or equal to 1.2.
If a fault is suspected, then the diagnostic will run an additional period of fuelling dither. There maybe a short delay time between the two
monitoring periods. If the sensor exceeds a failure threshold for a second time then the fault condition is confirmed and the relevant DTC will
be stored. Otherwise the sensor is judged as fault free.
If the sensor is judged as fault free at the end of the first period of fuelling dither, then a second, ghost test must be completed before the
IUMPR numerator can be incremented.
The diagnostic makes two measurements for each of the applied fuelling dithers:
t1 t2 t3
∆λ
∆ λTgt
Normal Operation:
Delay time = t2 - t1
λ response = λ∆ / λ∆Tgt
t1 t2 t3
∆λ
∆ λTgt
Fault detected:
λ response < threshold
λ response = λ∆ / λ∆Tgt
Assessed as symmetrically deteriorated (lean to rich and rich to lean), asymmetrically deteriorated (rich to lean) or asymmetrically deteriorated (lean
to rich)
t1 t2 t3
∆λ
∆ λTgt
Fault detected:
Upper limit of t3 is set by dither interval, i.e. if the dither switch occurs before t3 is due, then t3 is set to the dither switch point
Entry Conditions:
Yes
No
Calculate and apply Is ghost test
fuelling dither Flag set?
Measure sensor response
Yes Yes
Yes
Yes
N
o
Y
e
Y
e
Failure
Normal judgment
judgment
After the engine has started, the sensor heaters are activated after a delay time. The diagnostic monitors the change in impedance of the
element of the sensor due to the heating. If the impedance level has not dropped by a defined level in a defined amount of time, then a failure
will be detected.
Yes
Yes
Yes
Increment
Increment fault timer
normal timer
No
Yes
End
A low voltage failure is judged if the output of the sensor does not exceed a calibrated value when all of the entry conditions are satisfied and
a timer has expired.
A high voltage failure is judged if the sensor output remains above a calibrated value when all of the entry conditions are satisfied, including a
defined period of overrun fuel cut off being completed during the drive cycle.
No
Accumulated values
Yes
from Sub-
Sub-Function
Heater Duty
Mass Airflow Max d/s HO2S Voltage = d/s HO2S Voltage
No
No
Feedback Active
Heater control active
Linear AFR compensation within window or fuel
cut not active within a time period Entry Conditions satisfied for Low
Lambda Signal within window Check?
Engine speed above a threshold
Mass Air Flow above a threshold
Heater control signal above a threshold
Accumulated Mass Airflow above a threshold
Yes
Accumulated heater duty above a threshold
Yes
No
Yes
Set Low failure end judgment Set Low normal end judgment
End
Heater Duty
Mass Airflow Yes
No
Feedback Active
Heater control active
Linear AFR compensation within window or fuel Entry Conditions satisfied for High
cut not active within a time period Check?
Heater control signal above a threshold
Accumulated heater duty above a threshold
Accumulated Mass Airflow above a threshold
Fuel Cut Flag Set
Yes
Yes No
Set High failure end judgment Set High normal end judgment
End
No
Yes
Yes
End
Used for the d/s HO2S High and d/s HO2S Start
Activity Monitors
No
Reset d/s HO2S fuel cut counter
No
Yes
Yes
Yes
End
Maximum and minimum voltages are continuously updated for the downstream oxygen sensor. The difference between these values is then
calculated.
Provided that the entry conditions are fulfilled, which include a fuel cut having occurred, then this voltage difference is compared with a failure
threshold.
If the difference has not exceeded this failure threshold then a fault code will be stored.
Heater Duty
Mass Airflow
Yes
No
Set Activity failure end judgment Set Activity normal end judgment
No
Restart timer
greater than threshold and fuel Yes
cut occurring?
Downstream HO2
HO2S Activity Start
Yes
No
Yes
No
The monitor checks the time taken for the downstream oxygen sensor voltage to drop from a higher to a lower value during 2 periods of fuel cut
operation.
A number of entry conditions must be satisfied, before the diagnostic will operate:
• There must have been more than 3 seconds since the last fuel cut
• The downstream oxygen sensor signal must have been above 0.55V for at least 5 seconds
• The accumulated downstream oxygen sensor heater energy must have exceeded a threshold
• The accumulated engine airflow must have exceeded a threshold
• The sensor heater control signal must be above a threshold
• The engine speed must be greater than 1650 rpm at the start of the fuel cut
If the response rate has exceeded the failure threshold, then a fault code will be stored.
If the downstream oxygen sensor voltage does not reach the lower threshold within a specified time, then a fault code will also be stored, this decision
can be made on the first or second period of monitoring over a fuel cut.
No
Entry Conditions Activity Check
Yes
Accumulated heater energy above a threshold Entry
Engine speed above threshold (1300 rpm) Conditions satisfied for Activity
Accumulated Engine Airflow above threshold Check?
d/s HO2S sensors activated
Yes
No Yes
No
No
Max judge timer expired? No D/s HO2S signal falls below 0.2V?
Yes
Yes
Test completed twice?
Yes
Set Activity failure end judgment Set Activity normal end judgment
End
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Downstream (HO2S)
D/s HO2S A low input P0137 Sensor voltage stuck low Sensor voltage maximum < 0.15 V Engine Speed >= 500 rpm 2 Drive
Afterstart counter >= 0 s Cycles
D/s HO2S B low input P0157 Heater control Active
(doxh_l) Heater PWM control signal >= 0%
Accumulated Mass Air Flow >= 5000
(This accumulates if:
Atmospheric pressure >= 65 kPa
Closed Loop Fuelling Active
Linear A/F compensation 0.70 <= A/F Comp <= 1.30
Engine Coolant Temperature >= -30 degC
Afterstart counter >= 0 s
Intake Air Temperature -30 <= IAT <= 120 degC
Heater control Active)
(The accumulated MAF resets if a
fuel cut occurs or the engine stalls)
Accumulated d/s HO2S heater >= 170000
energy (This accumulates if the
MAF accumulation conditions are
True)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Downstream (HO2S)
D/s HO2S A high input P0138 Sensor voltage stuck high Sensor voltage minimum > 0.05 V Engine Speed >= 500 rpm 2 Drive
D/s HO2S B high input P0158 Afterstart counter >= 0 s Cycles
(doxh_h) Heater control Active
Heater PWM control signal >= 0%
Accumulated Mass Air Flow >= 5000
Accumulated d/s HO2S heater >= 170000
energy
Over run fuel cutoff duration >= 3.0 sec
has occurred
Fault Codes that disable Bank A P0103 P0102 P010D P010C P0118 P0117 P0643
Monitoring P0642 P0351 P2300 P2301 P0353 P2306 P2307 P0355
P2312 P2313 P0357 P2318 P2319 P0116 (hi) P0116
(lo) P0116 (stk) P0125 P0101 P010B P115D P02EE (bv)
P02F0 (bv) P02F2 (bv) P02F4 (bv) P02EE (hl) P02F0
(hl) P02F2 (hl) P02F4 (hl) P0262 (hb) P0268 (hb) P0274
(hb) P0280 (hb) P0261 (lb) P0267 (lb) P0273 (lb) P0279
(lb) P0262 (hg) P0268 (hg) P0274 (hg) P0280 (hg)
P0261 (lg) P0267 (lg) P0273 (lg) P0279 (lg) P0201
P0203 P0205 P0207 P1315 P1316 P0140 P0036 P0141
P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0054
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank B P0103 P0102 P010D P010C P0118 P0117 P0643 P0642
Monitoring P0352 P2303 P2304 P0354 P2309 P2310 P0356 P2315
P2316 P0358 P2321 P2322 P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0101 P010B P115D P02EF (bv) P02F1 (bv)
P02F3 (bv) P02F5 (bv) P02EF (hl) P02F1 (hl) P02F3 (hl)
P02F5 (hl) P0265 (hb) P0271 (hb) P0277 (hb) P0283 (hb)
P0264 (lb) P0270 (lb) P0276 (lb) P0282 (lb) P0265 (hg)
P0271 (hg) P0277 (hg) P0283 (hg) P0264 (lg) P0270 (lg)
P0276 (lg) P0282 (lg) P0202 P0204 P0206 P0208 P1315
P1316 P0160 P0056 P0161 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P0060
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Downstream (HO2S)
Heater control circuit
Bank A Low P0036 Heater resistance check Heater circuit resistance > 216 Ohms Battery Voltage 11.0 < V < 16.0 V 5.0 s 2 Drive
Bank B Low P0056 at OFF Cycles
Or voltage check at OFF Voltage < 0.75 *
Vbatt
Bank A High P0141 Heater voltage check at ON Voltage > 0.25 * 5.0 s 2 Drive
Bank B High P0161 Vbatt Cycles
) Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
Downstream Heater circuit P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
Monitoring P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607
P0601 P0601 (sub) P0600
Heater functionality
Bank A P0054 The voltage at the heater drive Filtered low side heater voltage < See Heater voltage when heater is off <> 320 V 5.12 s 2 Drive
Bank B P0060 stage when the heater is off, is The fault threshold is mapped table Heater duty ratio < 95 % Cycles
(doxd) a measure of the resistance of against the heater supply Starter relay Not on
the heating circuit. voltage, which is determined Battery voltage >= 10.5 V
from the measured voltage at Time after ignition on or crank >= 0.512 s
the ECM and the status of the
other loads in the supply circuit,
such as the VVT actuators and
the u/s HO2S heaters
Fault Codes that disable P0036 P0141 P1603 P0606 (cnt) P0606 (cnt_s) P0604
Downstream Heater rationality (ramint) P0604 (ramint_s) P0605 (romint) P0605
Bank A Monitoring (romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0056 P0161 P1603 P0606 (cnt) P0606 (cnt_s) P0604
Downstream Heater rationality (ramint) P0604 (ramint_s) P0605 (romint) P0605
Bank B Monitoring (romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Downstream (HO2S)
Bank A no activity P0140 HO2S sensor voltage d/s HO2S voltage max - min < 0.35 V Engine Speed >= 500 rpm 2 Drive
Bank B no activity P0160 behaviour Over run fuel cutoff duration >= 3 s Cycles
(doxe) has occurred
Afterstart counter >= 0 s
Heater PWM control signal >= 0%
Accumulated Mass Air Flow >= 5000
(This accumulates if:
Atmospheric pressure >= 65 kPa
Closed Loop Fuelling Active
Linear A/F compensation 0.70 <= A/F Comp <= 1.30
Engine Coolant Temperature >= -30 degC
Afterstart counter >= 0 s
Intake Air Temperature -30 <= IAT <= 120 degC
Heater control Active)
(The accumulated MAF resets if a
fuel cut occurs or the engine stalls)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0140 P0103 P0102 P010D P010C P0118 P0117 P0643
P0642 P0351 P2300 P2301 P0353 P2306 P2307 P0355
P2312 P2313 P0357 P2318 P2319 P0116 (hi) P0116
(lo) P0116 (stk) P0125 P0101 P010B P115D P02EE (bv)
P02F0 (bv) P02F2 (bv) P02F4 (bv) P02EE (hl) P02F0
(hl) P02F2 (hl) P02F4 (hl) P0262 (hb) P0268 (hb) P0274
(hb) P0280 (hb) P0261 (lb) P0267 (lb) P0273 (lb) P0279
(lb) P0262 (hg) P0268 (hg) P0274 (hg) P0280 (hg)
P0261 (lg) P0267 (lg) P0273 (lg) P0279 (lg) P0201
P0203 P0205 P0207 P1315 P1316 P0137 P0138 P0036
P0141 P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub) P0054
Fault Codes that disable P0160 P0103 P0102 P010D P010C P0118 P0117 P0643
P0642 P0352 P2303 P2304 P0354 P2309 P2310 P0356
P2315 P2316 P0358 P2321 P2322 P0116 (hi) P0116
(lo) P0116 (stk) P0125 P0101 P010B P115D P02EF (bv)
P02F1 (bv) P02F3 (bv) P02F5 (bv) P02EF (hl) P02F1
(hl) P02F3 (hl) P02F5 (hl) P0265 (hb) P0271 (hb) P0277
(hb) P0283 (hb) P0264 (lb) P0270 (lb) P0276 (lb) P0282
(lb) P0265 (hg) P0271 (hg) P0277 (hg) P0283 (hg)
P0264 (lg) P0270 (lg) P0276 (lg) P0282 (lg) P0202
P0204 P0206 P0208 P1315 P1316 P0157 P0158 P0056
P0161 P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub) P0060
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Downstream (HO2S)
HO2S Bank A slow P0139 Sensor voltage signal Time taken for the sensor >= 0.6 s Engine speed >= 1000 rpm 2 Drive
response resonse signal
HO2S Bank B slow P0159 Too slow during a fuel cut to drop from 0.50 to 0.15 V (>= 1000 rpm at start of Cycles
response during a fuel cut measurement)
Atmospheric pressure >= 68 kPa
or Heater PWM control signal >= 0%
Accumulated Mass Air Flow >= 5000
Sensor signal does not fall >= 3.0 s (This accumulates if:
below 0.15 V during a fuel Atmospheric pressure >= 65 kPa
cut within a time of Closed Loop Fuelling Active
Linear A/F compensation 0.70 <= A/F Comp <= 1.30
Engine Coolant Temperature >= -30 degC
Afterstart counter >= 0 s
Intake Air Temperature -30 <= IAT <= 120 degC
Heater control Active)
(The accumulated MAF resets if a
fuel cut occurs or the engine stalls)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0139 P2229 P2228 P0103 P0102 P010D P010C P0118 P0117
P0643 P0642 P0351 P2300 P2301 P0353 P2306 P2307
P0355 P2312 P2313 P0357 P2318 P2319 P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0101 P010B P115D
P0069 P02EE (bv) P02F0 (bv) P02F2 (bv) P02F4 (bv)
P02EE (hl) P02F0 (hl) P02F2 (hl) P02F4 (hl) P0262 (hb)
P0268 (hb) P0274 (hb) P0280 (hb) P0261 (lb) P0267 (lb)
P0273 (lb) P0279 (lb) P0262 (hg) P0268 (hg) P0274 (hg)
P0280 (hg) P0261 (lg) P0267 (lg) P0273 (lg) P0279 (lg)
P0201 P0203 P0205 P0207 P0335 (_2) P0336 P0335
(_2s) P0336 (sub) P1315 P1316 P0132 P0131 P0137
P0138 P0140 P0036 P0141 P0171 P0172 P0000 P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0054
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0159 P2229 P2228 P0103 P0102 P010D P010C P0118 P0117
P0643 P0642 P0352 P2303 P2304 P0354 P2309 P2310
P0356 P2315 P2316 P0358 P2321 P2322 P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0101 P010B P115D
P0069 P02EF (bv) P02F1 (bv) P02F3 (bv) P02F5 (bv)
P02EF (hl) P02F1 (hl) P02F3 (hl) P02F5 (hl) P0265 (hb)
P0271 (hb) P0277 (hb) P0283 (hb) P0264 (lb) P0270 (lb)
P0276 (lb) P0282 (lb) P0265 (hg) P0271 (hg) P0277 (hg)
P0283 (hg) P0264 (lg) P0270 (lg) P0276 (lg) P0282 (lg)
P0202 P0204 P0206 P0208 P0335 (_2) P0336 P0335
(_2s) P0336 (sub) P1315 P1316 P0152 P0151 P0157
P0158 P0160 P0056 P0161 P0174 P0175 P0000 P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0060
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Upstream (U/s HO2S)
A slow response P0133 Accumulated response time to Response rate test value < 0.1 Engine speed 500 < RPM < 1000 rpm 30 s 2 Drive
B slow response P0153 forced fuelling dither during Or Mass airflow 6.0 < MAF < 14.0 g/s For each Cycles
(uoxs) steady state driving. (Lean to rich test value < 0.1 Engine Coolant Temperature >= 75 degC test and
The test runs twice, if a fault is And Vehicle speed 0 <= VS <= 0.6 mph 5.0 s
detected on the first test. Rich to lean test value <> 0 Accelerator pedal change >= 4%/160ms no more than 7 between
And times during test tests
Lean to rich response ratio < 0.8) Throttle angle change <= 1%/160ms
Or Atmospheric pressure >= 68 kPa
(Rich to lean test value < 0.1 Element impedance 0 < Z < 60 ohm
And Purge Not active
Lean to rich test value <> 0 or
And Vapour concentration <= 255
Rich to lean response ratio < 0.8) Afterstart >= 60 s
Or Closed loop A/F control Active
Response delay time > 0.62 s Engine load 0.45 to 2.0 g/rev
Or Engine load change <= 0.001 g/rev over 1 rev
(Lean to rich delay time > 0.62 s MAP Change (current value <= 1.75 kPa for at least 0.256 s
And compared with value 1.6 s ago)
Rich to lean delay time <> 0 Catalyst diagnostic Not in progress
And Catalyst Oxygen neutralisation Not in progress
Lean to rich delay ratio >= 1.20) Brake light switch Not changed from off to on
Or in last 0 s
(Rich to lean delay time > 0.62 s
And
Lean to rich delay time <> 0
And
Rich to lean delay ratio >= 1.20)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0133 P2229 P2228 P0103 P0102 P010D P010C P0238
P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0193
P0192 P0010 P2088 P2089 P0013 P2090 P2091 P001A
P001B P001C P0031 (op) P0031 (gs) P0032 P0351
P2300 P2301 P0353 P2306 P2307 P0355 P2312 P2313
P0357 P2318 P2319 P0444 P0458 P0116 (hi) P0116
(lo) P0116 (stk) P0125 P0236 P0101 P010B P115D
P0106 P0069 P0507 P0506 P02EE (bv) P02F0 (bv)
P02F2 (bv) P02F4 (bv) P02EE (hl) P02F0 (hl) P02F2 (hl)
P02F4 (hl) P0262 (hb) P0268 (hb) P0274 (hb) P0280
(hb) P0261 (lb) P0267 (lb) P0273 (lb) P0279 (lb) P0262
(hg) P0268 (hg) P0274 (hg) P0280 (hg) P0261 (lg)
P0267 (lg) P0273 (lg) P0279 (lg) P0201 P0203 P0205
P0207 P0335 (_2) P0336 P0340 (run) P0341 P0365
(run) P0366 P0335 (_2s) P0336 (sub) P0340 (sub)
P0341 (sub) P0365 (run_s) P0366 (sub) P1315 P1316
P0132 P0131 P0134 P0171 P0172 P0026 (hi) P0026
(lo) P0011 P0012 P0016 P0027 (hi) P0027 (lo) P0014
P0015 P0017 P0441 P0191 P0088 P0087 P1603 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P0500
(ud) P0500 (qf) P0500 (ud_s) P0500 (qf_s) P003C
P00C6 (dual) P2279
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0153 P2229 P2228 P0103 P0102 P010D P010C P0238
P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0193
P0192 P0020 P2092 P2093 P0023 P2094 P2095 P001D
P001E P001F P0051 P0051 (gs) P0052 P0352 P2303
P2304 P0354 P2309 P2310 P0356 P2315 P2316 P0358
P2321 P2322 P0444 P0458 P0116 (hi) P0116 (lo)
P0116 (stk) P0125 P0236 P0101 P010B P115D P0106
P0069 P0507 P0506 P02EF (bv) P02F1 (bv) P02F3 (bv)
P02F5 (bv) P02EF (hl) P02F1 (hl) P02F3 (hl) P02F5 (hl)
P0265 (hb) P0271 (hb) P0277 (hb) P0283 (hb) P0264
(lb) P0270 (lb) P0276 (lb) P0282 (lb) P0265 (hg) P0271
(hg) P0277 (hg) P0283 (hg) P0264 (lg) P0270 (lg) P0276
(lg) P0282 (lg) P0202 P0204 P0206 P0208 P0335 (_2)
P0336 P0345 (run) P0346 P0390 (run) P0391 P0335
(_2s) P0336 (sub) P0345 (run_s) P0346 (sub) P0390
(run_s) P0391 (sub) P1315 P1316 P0152 P0151 P0154
P0174 P0175 P0028 (hi) P0028 (lo) P0021 P0022
P0018 P0029 (hi) P0029 (lo) P0024 P0025 P0019
P0441 P0191 P0088 P0087 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P0500
(ud) P0500 (qf) P0500 (ud_s) P0500 (qf_s) P003E
P00C6 (dual) P2279
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Upstream (U/s HO2S)
Heater control circuit
Bank A low P0031 Open circuit or Short to 1.52 s 2 Drive
Bank B low P0051 ground Cycles
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Upstream HO2S
Control Module
Bank A low P0131 Element short circuit check U/s HO2S +ve voltage <= 3.58 V Ignition On 4.96 s 2 Drive
B- bank low P0151 And U/s HO2S control Executing Cycles
Abs((U/s HO2S +ve voltage) - (U/s < 0.23 V And for the Element Impedance
HO2S -ve voltage))
Check only:
And Accumulated heater duty >= 20.0 s
U/s HO2S Voltage > 3.55 V Total heater on time >= 125 s
Positive Sensor Element U/s HO2S +ve voltage < 1.12 V 4.96 s
Voltage too low
Negative Sensor Element U/s HO2S -ve voltage < 0.57 V 4.96 s
Voltage too low
Element impedance too high U/s HO2S impedance >= 500 4.96 s
ohms
Bank A high P0132 Positive Sensor Element U/s HO2S +ve voltage >= 3.58 V 4.96 s
B- bank high P0152 Voltage too high
(uoxm) Negative Sensor Element U/s HO2S -ve voltage >= 3.59 V 4.96 s
Voltage too high
Fault Codes that disable U/s P0031 (op) P0031 (gs) P0032 P1603 P0606 (cnt)
HO2S Control Module Bank A P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
Monitoring (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606
(dupl_s) P0605 (fmemo) P0605 (fmemo_s) P0606
(wdog) P0606 (wdog_s) P0607 P0601 P0601 (sub)
Fault Codes that disable U/s P0051 P0051 (gs) P0052 P1603 P0606 (cnt) P0606
HO2S Control Module Bank B (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
Monitoring (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606
(dupl_s) P0605 (fmemo) P0605 (fmemo_s) P0606
(wdog) P0606 (wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Oxygen Sensors
Upstream
(U/s HO2S)
Bank A Slow Activation P0134 u/s HO2S Impedance not met U/s HO2S impedance > 60 ohms Voltage supply 9.0 <= V <= 16.0 V 5s 2 Drive
Bank B Slow Activation P0154 closed loop fuelling enable Heater duty (see Table for >= 0.119 s Cycles
(uoxe) condition Setting criteria)
Time after engine stall > 26.88 s
Time after engine start >= 0.160 s
Engine Coolant Temperature >= -40 degC
Time in above conditions >= 30 s
Fuel Cut Not active
Time after fuel cut > 10.00 s
Fault Codes that disable P0134 P0031 (op) P0031 (gs) P0032 P0132 P0131 P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Fault Codes that disable P0154 P0051 P0051 (gs) P0052 P0152 P0151 P1603 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Filtered Heater Supply Voltage (V) 9.00 10.00 11.00 12.00 13.00 14.00 15.00 16.00
Fault Threshold (V) 8.00 9.00 10.00 11.00 12.00 13.00 14.00 15.00
Engine Coolant Temperature (degC) -10.30 0.30 10.20 20.10 30.00 80.20
Integrated Duty Ratio (%) 30000 30000 38300 25500 17000 6300
Throttle
Body
Degas Twin Venturi
Pump ECT1 Head Head
sensor
Level sensor
Engine
Oil
Cooler
Block
Cabin Radiator
Heater
Trans
Oil nd
2 ECT
Cooler Sensor
Pump
Thermostat
The diagnostic checks for a partially open thermostat under conditions when the thermostat would be expected to be shut.
A second engine coolant temperature sensor (ECT2) is installed in the inlet to the thermostat that measures the temperature of the coolant flowing out
from the radiator. The diagnostic calculates the temperature drop across the radiator (ECT1 - ECT2).
If the enablement criteria are met and the temperature drop across the radiator is greater than or equal to a threshold that depends on engine coolant
temperature (ECT1) and engine coolant temperature (ECT1) at engine start, then a timer will be incremented. If the timer exceeds a value that
depends on engine coolant temperature (ECT1) at engine start and estimated ambient temperature, then a fault will be detected.
If the enablement criteria are met and the temperature drop across the radiator is less than a threshold that depends on engine coolant temperature
(ECT1) and engine coolant temperature (ECT1) at engine start, then a second timer will be incremented. If this timer exceeds a predetermined value,
then the thermostat is judged to be fault free.
No
Reset Timers
ECT1 - ECT2
Increment fault timer Yes No Reset fault timer
>= fault threshold?
No
ECT1 - ECT2
Increment normal timer Yes No Reset normal timer
< normal threshold?
No
Yes
End
• The radiator outlet temperature (ECT2) has changed by a calibrated value or the inlet air temperature must have dropped by more
than a calibrated amount whilst the engine was off
• The engine coolant temperature (ECT1) temperature has changed by a calibrated value
After the entry conditions have been true for a calibrated time, then the engine coolant temperature must change by a calibrated amount
otherwise a failure will be detected. If the engine coolant temperature does change by an amount equal to or greater than this threshold then a
normal judgment is made.
The flow chart shown below explains the operation of this diagnostic.
No
No
Reset Timer
Yes
Yes
Set ECT stuck in range normal judgment Set ECT stuck in range failure judgment
End
The flow charts below explain the operation of this diagnostic for each of the two engine coolant temperature sensors.
Yes
Reset Temperature Sum Values
Reset data point counter
No
Yes
No
Yes
(maximum of Average ECT2 and Average RH IAT) - (minimum of Average ECT2 and
Average RH IAT) <= threshold?
Yes
Set ECT biased high failure judgment Set ECT biased high normal judgment
No
Yes Test Value Low > Low Limit? No
Set ECT biased low failure judgment Set ECT biased low normal judgment
End
No
Yes
No
Yes
(maximum of Average ECT and Average RH IAT) - (minimum of Average ECT and
Average RH IAT) <= threshold?
Yes
Set ECT2 biased high failure judgment Set ECT2 biased high normal judgment
No
Yes Test Value Low > Low Limit? No
Set ECT2 biased low failure judgment Set ECT2 biased low normal judgment
End
A timer is incremented when the engine speed and airflow are above pre-determined thresholds. A normal judgment is made if the engine
coolant temperature reaches the value for closed loop fuelling before the timer reaches the fault threshold.
A failure judgment is made if the timer reaches the fault threshold before the engine coolant temperature reaches the value required for closed
loop fuelling.
The fault threshold is obtained from a look up table that is mapped against the lowest engine coolant temperature measured whilst the check
is in progress.
The flow chart shown below explains the operation of this diagnostic.
P0125
Reset Min_ECT and Load Timer
No
Estimated
ambient temp >= threshold?
Yes
No
Yes
Yes
Set Closed Loop Enable Temperature failure Set Closed Loop Enable Temperature normal
judgment judgment
End
The diagnostic calculates the difference between the measured engine coolant temperature and an estimated temperature that is derived
from a model. This error between the two temperatures is then accumulated. The model used to calculate the estimated engine coolant
temperature has look-up tables that use a number of engine and vehicle parameters (engine speed, engine airflow, vehicle speed and the
difference between estimated ambient temperature and engine coolant temperature) to derive compensation values which are added or
subtracted from the estimated engine coolant temperature as appropriate.
An after start counter is also included and the estimated engine coolant temperature is taken as the measured engine coolant temperature for
a calibrated time following engine start (this time is dependent on the starting engine coolant temperature) to overcome second order effects
which introduce inaccuracy into the estimate of engine coolant temperature.
A normal judgment is made if the measured engine coolant temperature reaches 80 degC and the accumulated error is not above the failure
threshold. A failure judgment is made if the accumulated error equals or exceeds a calibrated fault threshold before the measured engine
coolant temperature reaches 80 degC, provided the vehicle has spent less than a calibrated time at idle and the mean engine airflow during
the monitoring period is within a calibrated window.
Entry Conditions:
Yes
Fault Decision:
No
No
Yes Normal
Is the ECT greater judgment
than the normal
threshold?
End
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Engine Coolant
Temperature Sensor
ECT high input P0118 Out of range check ECT voltage (> 4.59 V) < -40 degC Ignition on 2.21 s 2 Drive
ECT low input P0117 Out of range check ECT voltage (< 0.07 V) > 150 degC Cycles
(hlect)
Fault Codes that disable P0117 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0118 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
ECT range / P0116 Coolant temperature stuck ECT voltage change <= 0.05 V Engine speed >= 400 rpm 60 s 2 Drive
performance Delta Engine Coolant Temp 2 >= 45 degC Cycles
(cltd) Or
IAT at powerdown - IAT at ignition >= 250 degC
on
Fault Codes that disable P0116 P2183 (hi) P2183 (lo) P2183 (stk) P1603 P0606 (cnt)
(stuck) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
ECT range / P0116 Coolant temperature biased ECT - (maximum of RH IAT > 20 degC Engine off time 28800 <= soak time < 3930000 s 2 Drive
performance at start average & ECT2 average) Difference between maximum of <= 20 degC Cycles
(cltr) Or RH IAT average & ECT2
(Minimum of RH IAT average > 20 degC average, and minimum of RH IAT
& ECT2 average) - ECT average & ECT2 average
Engine condition Has been stopped
Block Heater Not detected (see table for
conditions)
Fault Codes that disable P0116 P0113 P0112 P00AD P00AC P0118 P0117 P0643
(range performance) P0642 P2610 P2610 (mis) P2610 (hi) P2610 (lo) P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Engine Coolant
Temperature Sensor
ECT range /
P0125 Time to CL A/F control ECT/time (s) See Engine speed >= 400 rpm 2 Drive
performance
(clti) enable temp. (-15 degC) table Mass airflow >= 3 g/s Cycles
Estimated ambient temperature >= -40 degC
Fault Codes that disable P0125 P0103 P0102 P010D P010C P0238 P0237 P0108
P0107 P0118 P0117 P0643 P0642 P0351 P2300 P2301
P0352 P2303 P2304 P0353 P2306 P2307 P0354 P2309
P2310 P0355 P2312 P2313 P0356 P2315 P2316 P0357
P2318 P2319 P0358 P2321 P2322 P0116 (hi) P0116
(lo) P0116 (stk) P0236 P0101 P010B P115D P0106
P02EE (bv) P02EF (bv) P02F0 (bv) P02F1 (bv) P02F2
(bv) P02F3 (bv) P02F4 (bv) P02F5 (bv) P02EE (hl)
P02EF (hl) P02F0 (hl) P02F1 (hl) P02F2 (hl) P02F3 (hl)
P02F4 (hl) P02F5 (hl) P0262 (hb) P0265 (hb) P0268
(hb) P0271 (hb) P0274 (hb) P0277 (hb) P0280 (hb)
P0283 (hb) P0261 (lb) P0264 (lb) P0267 (lb) P0270 (lb)
P0273 (lb) P0276 (lb) P0279 (lb) P0282 (lb) P0262 (hg)
P0265 (hg) P0268 (hg) P0271 (hg) P0274 (hg) P0277
(hg) P0280 (hg) P0283 (hg) P0261 (lg) P0264 (lg) P0267
(lg) P0270 (lg) P0273 (lg) P0276 (lg) P0279 (lg) P0282
(lg) P0201 P0202 P0203 P0204 P0205 P0206 P0207
P0208 P1315 P1316 P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Engine Coolant
Temperature Sensor 2
ECT2 high input P2185 Out of range check ECT voltage (> 4.59 V) < -40 degC Ignition on 2.21 s 2 Drive
ECT2 low input P2184 Out of range check ECT voltage (< 0.073 V) > 120 degC Cycles
(hlect2) Fault Codes that disable P2184 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P2185 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
ECT2 range / P2183 Coolant temperature stuck ECT voltage change <= 0.04 V Engine speed >= 600 rpm 120 s 2 Drive
performance Delta Engine Coolant Temp >= 10 degC Cycles
(cltd2) Engine Coolant Temperature >= 80 degC
Fault Codes that disable P2183 P0116 (hi) P0116 (lo) P0116 (stk) P2183 (hi) P2183 (lo)
(stuck) P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
ECT2 range / P2183 Coolant temperature biased ECT2 - (maximum of RH IAT > 20 degC Engine off time 28800 <= soak time < 3930000 s 2 Drive
performance at start average & ECT average) Difference between maximum of <= 20 degC Cycles
(cltr2) Or RH IAT average & ECT
(Minimum of RH IAT average > 20 degC average, and minimum of RH IAT
& ECT average) - ECT2 average & ECT average
Engine condition Has been stopped
Block Heater Not detected (see table for
conditions)
Fault Codes that disable P2183 P2185 P2184 P0116 (hi) P0116 (lo) P0116 (stk) P2183
(range performance) (stk) P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Thermostat Range or P0128 Thermostat leakage Engine Out Coolant < see Estimated ambient temperature -20 <= T < 50 degC See 2 Drive
Performance determined by comparing the Temperature - Radiator Outlet table ECT@ start -40 <= ECT < 60 degC table Cycles
(thms) measured temperature drop Coolant Temperature Mass airflow >= 0 g/s (from 120
across the radiator with the Engine speed >= 400 rpm To 180 s)
expected value during engine Time after start >= 10 s
warm up (ECT - Est Amb Temp) @ start -40 <= T < 120 degC
Fault Codes that disable P0128 P0118 P0117 P0643 P0642 P0116 (hi) P0116 (lo)
P0116 (stk) P0125 P2183 (hi) P2183 (lo) P2183 (stk)
P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Coolant Temperature P0126 Comparison of actual warm up Accumulated difference >= see Estimated ambient temperature -20 <= T < 50 degC 2.56 s 2 Drive
Performance profile with estimated. between estimated ECT and table ECT@ start -40 <= ECT < 70 degC Cycles
(cltl) Fault flagged when actual ECT is too large. Mass airflow >= 0.5 g/s
accumulated difference Engine sped >= 400 rpm
between actual and estimated Time after start >= 0 s
coolant reaches threshold, (ECT - Est ATT) @ start -40 <= T < 120 degC
without actual ECT reaching Mean MAF value 20 <= MAF <= 175 g/s
80degC Proportion of time at idle <= 50 %
Fault Codes that disable P0126 P0118 P0117 P0643 P0642 P0073 P0072 P0351 P2300
P2301 P0352 P2303 P2304 P0353 P2306 P2307 P0354
P2309 P2310 P0355 P2312 P2313 P0356 P2315 P2316
P0357 P2318 P2319 P0358 P2321 P2322 P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0071 (hi) P0071 (lo)
P2183 (hi) P2183 (lo) P2183 (stk) P02EE (bv) P02EF
(bv) P02F0 (bv) P02F1 (bv) P02F2 (bv) P02F3 (bv)
P02F4 (bv) P02F5 (bv) P02EE (hl) P02EF (hl) P02F0
(hl) P02F1 (hl) P02F2 (hl) P02F3 (hl) P02F4 (hl) P02F5
(hl) P0262 (hb) P0265 (hb) P0268 (hb) P0271 (hb)
P0274 (hb) P0277 (hb) P0280 (hb) P0283 (hb) P0261
(lb) P0264 (lb) P0267 (lb) P0270 (lb) P0273 (lb) P0276
(lb) P0279 (lb) P0282 (lb) P0262 (hg) P0265 (hg) P0268
(hg) P0271 (hg) P0274 (hg) P0277 (hg) P0280 (hg)
P0283 (hg) P0261 (lg) P0264 (lg) P0267 (lg) P0270 (lg)
P0273 (lg) P0276 (lg) P0279 (lg) P0282 (lg) P0201
P0202 P0203 P0204 P0205 P0206 P0207 P0208 P0171
P0172 P0174 P0175 P0420 P0430 P0026 (hi) P0026
(lo) P0028 (hi) P0028 (lo) P0011 P0012 P0016 P0021
P0022 P0018 P0027 (hi) P0027 (lo) P0029 (hi) P0029
(lo) P0014 P0015 P0017 P0024 P0025 P0019 U0121
P2601 P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub) P0500 (ud) P0500 (qf) P0500 (ud_s) P0500
(qf_s)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Radiator Cooling Fan
Oil Control Solenoid
(arvfan)
Circuit continuity
P0480 Open circuit 5.0 s 2 Drive
P0691 Short to ground Cycles
P0692 Short to battery
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Min. Clnt Temp (deg C) -40.00 -30.00 -23.50 -23.30 -10.00 0.00 10.00 20.00 30.00 40.00 50.00 60.00 80.00
Time (s) 300.0 300.0 300.0 120.0 120.0 120.0 120.0 120.0 120.0 120.0 120.0 120.0 120.0
Time to Temperature Monitor Fault Limit (accumulated difference) (MBD_CLTL_FALTLEVL) – DTC P0126
5.7.1 Description
The crankcase ventilation valve is incorporated in the right hand cam cover.
Disconnection of the hose that runs between the valve and the intake manifold will result in one of the following:
• The engine will become very unstable at idle with a tendency to stall
• The OBD system will detect a fuel system fault due to the un-metered air that enters the intake manifold
• The OBD system will store a specific crankcase ventilation fault code P2279
Fault code P2279 is set if the measured lambda values for both cylinder banks simultaneously indicate an excessively lean condition, when all
of the following entry conditions are true:
• A pre-determined time has elapsed since fuel cut off was last active
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.8.1 Description
The crankshaft position sensor is checked for loss of signal during engine cranking and engine running conditions. When the appropriate entry
conditions have been met, a loss of sensor pulses for longer than a predefined time will register a fault. If the fault is registered on two drive cycles
the MIL will illuminate.
Additionally, if the number of crankshaft position sensor pulses is incorrect by more than one pulse in any one engine revolution then a fault event is
recorded. If the number of fault events exceeds the limit without the engine synchronising, a crankshaft position sensor range/performance fault is
registered. If the fault is registered on two drive cycles the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Malfunction P0335 1) Crank sensor signal when Number of crank sensor pulses <1 Delay Counter >= 0 s 0.024 s 2 Drive
(crnk_1) engine cranking Seen Or (Increments if: Cycles
> 110 Ignition On
Starter relay Off
Battery voltage >= 10.5 V)
Battery voltage >= 8 V
Cranking In progress
Cam pulses seen >= 2
Malfunction P0335 2) Crank sensor during engine Number of intervals with no crank >= 10 Engine speed >= 500 rpm for >= 0.24s 0.24 s 2 Drive
(crnk_2) running target edges detected Cycles
Range / P0336 Crank sensor pulses counted Number of pulses Not equal Reverse gear Not selected for at least 0 s 2 Drive
Performance between missing teeth To 58 Engine speed >= 575 rpm Cycles
(crnk_3) For >= 10 revs < 0.0087 s
30 degree crank rotation
time
P0643 P0642 P0340 (strt) P0340 (run) P0341 P1603 P0606 (cnt) P0606 (cnt_s) P0604
(ramint) P0604 (ramint_s) P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
Fault Codes that disable Crankshaft Sensor
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
monitoring
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.9.1 Description
Each camshaft is fitted with a camshaft position sensor. The camshaft position sensors are checked for loss of signal during engine running
conditions. When the appropriate entry conditions have been met, a loss of the camshaft position sensor pulses for longer than a predefined time will
register a fault. If the fault is registered on two drive cycles the MIL will illuminate.
Additionally if a camshaft position sensor pulse is not detected between the crankshaft sensor missing teeth on more than four occasions a fault event
is recorded. If the fault is registered on two drive cycles the MIL will illuminate.
There is also a crankshaft / camshaft alignment check. The cam adaption valve is compared to the previous trip value. If the difference between the
two adaptions differs by more than a calibratable value a fault will be logged and the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake Camshaft
Sensors
Bank A malfunction P0340 1) cam sensor at engine start Number of cam pulses seen <= 0 Battery voltage >= 8.0 V 0.800 s 2 Drive
Bank B malfunction P0345 Cranking Active Cycles
(cammstaa/camstab) Battery voltage < 10.5 V
Bank A malfunction P0340 2) cam sensor during engine No cam pulses seen No pulse Battery voltage >= 8.0 V 5 revs 2 Drive
Bank B malfunction P0345 running Engine speed > 1500 rpm Cycles
(camelea/b) Cranking Not active
Crank Sensor status No fault present
Engine speed > 1500 rpm
(assessed over 30 deg CA)
Bank A range / P0341 Detection of cam pulse Number of cam pulses seen Not equal Crank Sensor status No fault present 5 revs 2 Drive
performance over 2 crankshaft revolutions
Bank B range / P0346 to 4 or 0 Battery voltage >= 8.0 V Cycles
performance Engine running cam sensor entry > 100 revs
(camrpa/b) conditions true
Fault Codes that disable Intake P0643 P0642 P0335 (_1) P0335 (_2) P0336 P0335
Camshaft Sensor monitoring (_1s) P0335 (_2s) P0336 (sub) P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P0616 P0615
P0617
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Exhaust Camshaft
Sensors
Bank A malfunction P0365 Cam sensor during engine No cam pulses seen No pulse Battery voltage >= 8.0 V 5 revs 2 Drive
Bank B malfunction P0390 running Engine speed > 500 rpm Cycles
(caeelea/b) Cranking Not active
Crank Sensor status No fault present
Engine speed > 500 rpm
(assessed over 30 deg CA)
Bank A range / P0366 Detection of cam pulse Number of cam pulses seen Not equal Crank Sensor status No fault present 5 revs 2 Drive
performance
Bank B range / P0391 over 2 crankshaft revolutions to 4 or 0 Battery voltage >= 8.0 V Cycles
performance
(caerpa/b) Engine running cam sensor entry > 100 revs
conditions true
Fault Codes that disable P0643 P0642 P0335 (_1) P0335 (_2) P0336 P0335
Exhaust Camshaft Sensor (_1s) P0335 (_2s) P0336 (sub) P1603 P0606 (cnt)
monitoring P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P0616 P0615
P0617
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cam and Crank Alignment Check
Intake position fault
Bank A P0016 Camshaft adapted position Difference too Great (+/-) > 11 deg CA Atmospheric pressure >= 68.0 kPa 1 Drive
Bank B P0018 compared to stored value (i.e. more than single tooth) Estimated ambient temperature >= -10 degC Cycle
Exhaust position fault Engine Coolant Temperature >= -10 degC
Bank A P0017 Camshaft adaption Completed (on this trip)
Bank B P0019
Fault Codes that disable Bank A P0010 P2088 P2089 P0335 (_1) P0335 (_2) P0336
Intake Monitoring P0340 (strt) P0340 (run) P0341 P0335 (_1s) P0335
(_2s) P0336 (sub) P0340 (strt_s) P0340 (sub) P0341
(sub) P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub)
Fault Codes that disable Bank B P0020 P2092 P2093 P0335 (_1) P0335 (_2) P0336
Intake Monitoring P0345 (strt) P0345 (run) P0346 P0335 (_1s) P0335
(_2s) P0336 (sub) P0345 (strt_s) P0345 (run_s) P0346
(sub) P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub)
Fault Codes that disable Bank A P0013 P2090 P2091 P0335 (_1) P0335 (_2) P0336
Exhaust Monitoring P0365 (run) P0366 P0335 (_1s) P0335 (_2s) P0336
(sub) P0365 (run_s) P0366 (sub) P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank B P0023 P2094 P2095 P0335 (_1) P0335 (_2) P0336
Exhaust Monitoring P0390 (run) P0391 P0335 (_1s) P0335 (_2s) P0336
(sub) P0390 (run_s) P0391 (sub) P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Conditions for Setting "Camshaft Adaption" - Entry Condition for P0016, P0017, P0018 and P0019 - Cam and Crank Alignment Check
When the following conditions are satisfied, then the condition "Camshaft Adapted" will be confirmed:
• Camshaft position is stable, for this to be true the smoothed change in camshaft position must less than or equal to 0.5°CA determined
between camshaft sensor target edges
• Base control mode is active for 30 camshaft edge counts. There are 3 camshaft sensor target edges per 720°CA, so this takes 20 engine
revolutions
Open Circuit - Bank A P001A Intake (A) Cam Profile Control Circuit / Open
(Bank A)
Short Circuit to P001B Intake (A) Cam Profile Control Circuit Low (Bank
Ground - Bank A A)
Short Circuit to Battery P001C Intake (A) Cam Profile Control Circuit High (Bank
- Bank A A)
Open Circuit - Bank B P001D Intake (A) Cam Profile Control Circuit / Open
(Bank B)
Short Circuit to P001E Intake (A) Cam Profile Control Circuit Low (Bank
Ground - Bank B B)
Short Circuit to Battery P001F Intake (A) Cam Profile Control Circuit High (Bank
- Bank B B)
Diagnostic Measurement:
The ratio of lambda corrections for the two cylinder banks is calculated prior to the intrusive test and again during the intrusive test. The
difference between the two measurements is the “deflection”.
Fault Determination:
If the deflection is less than 5% the diagnostic flags a fault. Each bank is tested separately and two failure modes can be diagnosed for each
cylinder bank:
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Circuit continuity
Bank A intake P001A Open circuit 1.52 s 2 Drive
(arcp1) P001B Short to ground Cycles
P001C Short to battery
Bank B intake P001D Open circuit
(arcp2) P001E Short to ground
P001F Short to battery
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
Camshaft Profile Switching (ramint_s) P0605 (romint) P0605 (romint_s) P0604
Circuit Monitoring (ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0600
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Operation check
Bank A intake P003C The functional response of Test complete and average <= 1.05 After start time >= 60 s 2 Drive
Bank B intake P003E each Camshaft Profile test ratio Atmospheric pressure >= 68 kPa Cycles
(cps) Switching solenoid valve (one Engine Coolant Temperature >= 70 degC
per bank for the intake Engine speed < 5000 rpm
camshafts) is checked by Speed vs Oil temp >= 0.5 (see table for NEOIL
separately requesting an setting)
intrusive lift for each bank
Following 3 conditions must have
during light load conditions.
The Lambda response due to been true for at least 0.5 seconds:
this intrusive test is monitored A/F regulator output 0.78 <= A/F <= 1.20
and if the Lambda deviation Target Lambda 0.9 <= lambda <= 1.1
is sufficient, then Camshaft Actual Lambda 0.9 <= lambda <= 1.1 for at least
profile Switching operation is 0.5 s
assessed as having occurred Lambda delta <= 2 for at least 0.0 s
correctly. If insufficient Lambda target error <= 0.2
Lambda deviation occurs, Engine speed change >= 0 rpm/20ms
then Camshaft profile Camshaft profile Switching Not for at least 7s
Switching operation did not operation
occur correctly. Throttle Pedal Operation Check:
Has been > 10.0 %
Is now <= 7%
Time to move between two values <= 3.0s
CPS test must complete in <= 6.0 s
A/F feedback control Operating
Engine load < 1 g/s
Vehicle speed >= 3.1 mph
Fuel Cut Not occuring
Variable Valve Timing angle 0 <= VVT angle <= 10 deg CA
Camshaft Profile Switching Not in shift mode
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0103 P0102 P010D P010C P0238 P0237 P0108
Camshaft Profile Switching P0107 P0118 P0117 P0643 P0642 P0010 P2088 P2089
Monitoring P0020 P2092 P2093 P0013 P2090 P2091 P0023 P2094
P2095 P001A P001B P001C P001D P001E P001F
P0031 (op) P0031 (gs) P0032 P0051 P0051 (gs) P0052
P0351 P2300 P2301 P0352 P2303 P2304 P0353 P2306
P2307 P0354 P2309 P2310 P0355 P2312 P2313 P0356
P2315 P2316 P0357 P2318 P2319 P0358 P2321 P2322
P0444 P0458 P0459 P0116 (hi) P0116 (lo) P0116 (stk)
P0125 P0101 P010B P0106 P02EE (bv) P02EF (bv)
P02F0 (bv) P02F1 (bv) P02F2 (bv) P02F3 (bv) P02F4
(bv) P02F5 (bv) P02EE (hl) P02EF (hl) P02F0 (hl)
P02F1 (hl) P02F2 (hl) P02F3 (hl) P02F4 (hl) P02F5 (hl)
P0262 (hb) P0265 (hb) P0268 (hb) P0271 (hb) P0274
(hb) P0277 (hb) P0280 (hb) P0283 (hb) P0261 (lb)
P0264 (lb) P0267 (lb) P0270 (lb) P0273 (lb) P0276 (lb)
P0279 (lb) P0282 (lb) P0262 (hg) P0265 (hg) P0268 (hg)
P0271 (hg) P0274 (hg) P0277 (hg) P0280 (hg) P0283
(hg) P0261 (lg) P0264 (lg) P0267 (lg) P0270 (lg) P0273
(lg) P0276 (lg) P0279 (lg) P0282 (lg) P0201 P0202
P0203 P0204 P0205 P0206 P0207 P0208 P0335 (_1)
P0335 (_2) P0336 P0340 (strt) P0340 (run) P0341
P0345 (strt) P0345 (run) P0346 P0365 (run) P0366
P0390 (run) P0391 P0335 (_1s) P0335 (_2s) P0336
(sub) P0340 (strt_s) P0340 (sub) P0341 (sub) P0345
(strt_s) P0345 (run_s) P0346 (sub) P0365 (run_s) P0366
(sub) P0390 (run_s) P0391 (sub) P0132 P0131 P0152
P0151 P0133 P0133 (dl) P0153 P0153 (dl) P0134
P0154 P2105 P0026 (hi) P0026 (lo) P0028 (hi) P0028
(lo) P0011 P0012 P0016 P0021 P0022 P0018 P0027
(hi) P0027 (lo) P0029 (hi) P0029 (lo) P0014 P0015
P0017 P0024 P0025 P0019 P0441 P018B P008B
P008A P0191 P0088 P0087 U0300 P1603 P0610 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2118 P2119 (cnt)
Entry Condition for Camshaft Profile Switching Functional Diagnostic (MBD_CPS_NEOIL) – DTCs P003C and P003E
5.11.1 Description
When starting a cold engine, catalyst light-off times can be improved by generating high engine out energy. The energy is mainly dependent on
exhaust temperature and mass flow rate. This is achieved by retarding the ignition timing and increasing engine idle speed as well as adjusting fuel
injection and valve timing. Cold Start Monitoring ensures that the intended catalyst light-off times are being achieved. If the intended control is not
achieved, then a DTC will be set and the MIL illuminated.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Engine Speed Performance
Too low P0506 Actual engine idle speed Engine speed lower than The following 8 conditions true: for >= 3.0 s 5.0 s 2 Drive
compared to target value expected by >= 200 rpm Afterstart time 0.0 <= time <= 180.0 s Cycles
Too high P0507 Engine speed higher than Vehicle speed <= 6.2 mph
(clne) expected by >= 200 rpm Low volatility gasoline <= 50%
compensation
Idle speed increase for catalyst >= 10 rpm
heating
Idle speed control Active
Gearshift (D to N or P) Not occurring
Brake switch state change Not occurring
Change in fan drive signal <= 100%/160ms
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Cold P2229 P2228 P0113 P0112 P00AD P00AC P007D
Start Engine Speed P007C P0103 P0102 P010D P010C P0118 P0117
Performance Monitoring P0643 P0642 P0111 (hi) P0111 (lo) P0111 (stk) P00AB
(hi) P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0507 P0506 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P0123 P0122 P0223 P0222
P0121 P2135 (dif) P2135 (dif_s)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Ignition Timing P050B At every TDC when catalyst Sum of invidual positive >= 10 Battery voltage 9.0 < Ubat < 16.0 V 1360 revs 2 Drive
Performance heating is active the requested deviations crank Engine speed > 400 rpm (NA Cycles
Ignition timing is compared to the or degrees Ignition dwell time > 0 ms Engine)
actual ignition timing. Sum of invidual negative >= 10 Catalyst heating evaluation Not complete
The actual timing is determined deviations crank (P050E Diagnostic) 320 revs
by monitoring the coil drivers degrees (SC
relative to the crankshaft position
Engine)
Any positve (advanced) or
negative (retarded) deviation is
separately summed. If either Fault Codes that disable P050B P0113 P0112 P00AD P00AC P007D P007C P0103
sum exceeds a threshold, then a P0102 P010D P010C P0193 P0192 P0351 P2300
fault will be detected. P2301 P0352 P2303 P2304 P0353 P2306 P2307 P0354
P2309 P2310 P0355 P2312 P2313 P0356 P2315 P2316
P0357 P2318 P2319 P0358 P2321 P2322 P007B (ris)
P007B (dwn) P007B (scf) P0111 (hi) P0111 (lo) P0111
(stk) P00AB (hi) P00AB (lo) P00AB (stk) P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0236 P0101 P010B
P115D P0335 (_1) P0335 (_2) P0336 P0340 (strt)
P0340 (run) P0341 P0345 (strt) P0345 (run) P0346
P0365 (run) P0366 P0390 (run) P0391 P0335 (_1s)
P0335 (_2s) P0336 (sub) P0340 (strt_s) P0340 (sub)
P0341 (sub) P0345 (strt_s) P0345 (run_s) P0346 (sub)
P0365 (run_s) P0366 (sub) P0390 (run_s) P0391 (sub)
P1315 P1316 P018B P008B P008A P0191 P0088
P0087 P0507 (cser) P0506 (cser) P052A P052B P052C
P052D P054A P054B P054C P054D P0149 (ma_hi)
P0149 (ma_lo) P0148 (mt_hi) P0148 (mt_lo) P0149
(sa_hi) P0149 (sa_lo) P0148 (st_hi) P0148 (st_lo) P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P00C6 (dual)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake VVT Performance
Bank A - Too Advanced P052A During catalyst heating, if the Total error counter increments > 20 deg Atmospheric pressure >= 68.0 kPa Depends 2 Drive
Bank B - Too Advanced P052C difference between the actual If actual cam position - target Engine Start Not in progress on duration Cycles
Variable Valve Timing Cam position Throttle position change < 1 deg/40 ms for at least 5.0 s of catalyst
position and the target Engine Coolant Temperature -10.0 <= ECT <= 80.0 degC heating
Variable Valve Timing VVT Operating mode 0 <= mode no. <= 5 phase
position is greater than a Fault set if total error > see Accumulated heat index - checked > see table
threshold, then every 40 ms
table when catalyst heating evaluation
this error is added to a total.
There are separate totals for (P050E diagnostic) completes
each cylinder bank for
Bank A - Too Retarded P052B positve (Variable Valve Total error counter increments > 20 deg
Bank B - Too Retarded P052D Timing too advanced) and If target cam position - actual
negative (Variable Valve Cam position
Timing too retarded) errors. Fault set if total error > see
At the completion of catalyst table Fault Codes that disable Bank A P0113 P0112 P00AD P00AC P007D P007C P0103
heating, if sufficient heating Cold Start Intake Variable Valve P0102 P010D P010C P0118 P0117 P0643 P0642
was required, then the error Timing Monitoring P0010 P2088 P2089 P001A P001B P001C P001D
totals are compared with fault P001E P001F P007B (ris) P007B (dwn) P007B (scf)
thresholds. P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0101 P010B P115D P0340 (strt) P0340 (run) P0341
P0340 (strt_s) P0340 (sub) P0341 (sub) P1603 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P003C P003E
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank B P0113 P0112 P00AD P00AC P007D P007C P0103
Cold Start Intake Variable Valve P0102 P010D P010C P0118 P0117 P0643 P0642
Timing Monitoring P0020 P2092 P2093 P001A P001B P001C P001D
P001E P001F P007B (ris) P007B (dwn) P007B (scf)
P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0101 P010B P115D P0345 (strt) P0345 (run) P0346
P0345 (strt_s) P0345 (run_s) P0346 (sub) P1603 P0606
(cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P003C P003E
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Exhaust VVT Performance
Bank A - Too Advanced P054A During catalyst heating, if the Total error counter Atmospheric pressure >= 68.0 kPa Depends 2 Drive
Bank B - Too Advanced P054C difference between the actual increments if actual cam Engine Start Not in progress on duration Cycles
Variable Valve Timing position position – target cam Throttle position change < 1 deg/40 ms for at least 5.0 s of catalyst
and the target Variable Valve position > 20 deg Engine Coolant Temperature -10.0 <= ECT <= 80.0 degC heating
Timing position is greater than VVT Operating mode 0 <= mode no. <= 5 phase
a Fault set if total error > see Accumulated heat index - checked > see table
threshold, then every 40 ms table when catalyst heating evaluation
this error is added to a total. (P050E diagnostic) completes
There are separate totals for
Bank A - Too Retarded P054B each cylinder bank for positve Total error counter > 20 deg
(Variable Valve Timing too increments
Bank B - Too Retarded P054D advanced) and negative If target cam position - actual
(Variable Valve Timing too Cam position
retarded) errors.
At the completion of catalyst
heating, if sufficient heating Fault set if total error > see
was required, then the error table Fault Codes that disable Bank A P0113 P0112 P00AD P00AC P007D P007C P0103
totals are compared with fault Cold Start Exhaust Variable P0102 P010D P010C P0118 P0117 P0643 P0642
thresholds. Valve Timing Monitoring P0013 P2090 P2091 P007B (ris) P007B (dwn) P007B
(scf) P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi)
P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0101 P010B P115D P0365 (run) P0366
P0365 (run_s) P0366 (sub) P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable Bank B P0113 P0112 P00AD P00AC P007D P007C P0103
Cold Start Exhaust Variable P0102 P010D P010C P0118 P0117 P0643 P0642
Valve Timing Monitoring P0023 P2094 P2095 P007B (ris) P007B (dwn) P007B
(scf) P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi)
P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0101 P010B P115D P0390 (run) P0391
P0390 (run_s) P0391 (sub) P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Main Injection Timing P0149 At every TDC when catalyst Sum of invidual positive > 30 Injection Mode Split injection in progress 1360 revs 2 Drive
Performance (injm_ma) heating is active the requested deviations crank Fuel cut Not present for at least 5 revs (NA Cycles
main injection timing is degrees Battery voltage 9.0 < Ubat < 16.0 V Engine)
compared to the actual main or Engine speed > 400 rpm
injection timing. Sum of invidual negative > 30 Ignition dwell time > 0 ms 196 revs
Theactualtimingis determined deviations crank Injection mode switch Not in progress (SC
by monitoring the injector degrees Catalyst heating evaluation Not complete Engine)
drivers relative to the (P050E Diagnostic)
crankshaft position
Any positve (advanced) or
negative (retarded) deviation is
separately summed. If either
sum exceeds a threshold, then
A fault will be detected.
Main Injection Duration P0148 At every TDC when catalyst Sum of invidual positive > 0.070 s Injection Mode Split injection in progress 1360 revs 2 Drive
Performance (injm_mt) heating is active the requested deviations Fuel cut Not present for at least 5 revs (NA Cycles
main injection duration is or Battery voltage 9.0 < Ubat < 16.0 V Engine)
compared to the actual main Sum of invidual negative > 0.070 s Engine speed > 400 rpm
injection duration. deviations Ignition dwell time > 0 ms 196 revs
The actual duration is Injection mode switch Not in progress (SC
determined by monitoring the
Catalyst heating evaluation Not complete Engine)
injector drivers relative to the
crankshaft position. (P050E Diagnostic)
Any positve (duration too long)
or negative (duration too short)
deviation is separately
summed.
If either sum exceeds a
threshold, then a fault will be.
detected
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Split (Secondary) P0149 At every TDC when catalyst Sum of invidual positive > 30 Injection Mode Split injection in progress 1360 revs 2 Drive
Injection heating is active the requested deviations crank Fuel cut Not present for at least 5 revs (NA Cycles
Timing Performance split injection timing is compared degrees Battery voltage 9.0 < Ubat < 16.0 V Engine)
(injm_sa) to the actual split injection timing. or Engine speed > 400 rpm
The actual timing is determined Sum of invidual negative > 30 Ignition dwell time > 0 ms 196 revs
by monitoring the injector drivers deviations crank Injection mode switch Not in progress (SC
relative to the crankshaft degrees Catalyst heating evaluation Not complete Engine)
position. Any positve (advanced) (P050E Diagnostic)
or negative (retarded) deviation
is separately summed. If
eithersum exceeds a threshold,
then a fault will be detected.
Split (Secondary) P0148 At every TDC when catalyst Sum of invidual positive > 0.070 s Injection Mode Split injection in progress 1360 revs 2 Drive
Injection heating is active the requested deviations Fuel cut Not present for at least 5 revs (NA Cycles
Duration Performance split injection duration is or Battery voltage 9.0 < Ubat < 16.0 V Engine)
(injm_st) compared to the actual split Sum of invidual negative > 0.070 s Engine speed > 400 rpm
injection duration. The actual deviations Ignition dwell time > 0 ms 196 revs
duration is determined by Injection mode switch Not in progress (SC
monitoring the injector drivers
Catalyst heating evaluation Not complete Engine)
relative to thecrankshaft position.
(P050E Diagnostic)
Any positve (duration too long)
or negative (duration too short)
deviation is separately summed.
If either sum exceeds a
threshold, then a fault will be
detected
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0113 P0112 P00AD P00AC P007D P007C P0103
Injection Timing or Duration P0102 P010D P010C P0118 P0117 P018D P018C
monitoring P0643 P0642 P0193 P0192 P007B (ris) P007B (dwn)
P007B (scf) P0111 (hi) P0111 (lo) P0111 (stk) P00AB
(hi) P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0236 P0101 P010B P115D P02EE (bv)
P02EF (bv) P02F0 (bv) P02F1 (bv) P02F2 (bv) P02F3
(bv) P02F4 (bv) P02F5 (bv) P02EE (hl) P02EF (hl)
P02F0 (hl) P02F1 (hl) P02F2 (hl) P02F3 (hl) P02F4 (hl)
P02F5 (hl) P0262 (hb) P0265 (hb) P0268 (hb) P0271
(hb) P0274 (hb) P0277 (hb) P0280 (hb) P0283 (hb)
P0261 (lb) P0264 (lb) P0267 (lb) P0270 (lb) P0273 (lb)
P0276 (lb) P0279 (lb) P0282 (lb) P0262 (hg) P0265 (hg)
P0268 (hg) P0271 (hg) P0274 (hg) P0277 (hg) P0280
(hg) P0283 (hg) P0261 (lg) P0264 (lg) P0267 (lg) P0270
(lg) P0273 (lg) P0276 (lg) P0279 (lg) P0282 (lg) P0201
P0202 P0203 P0204 P0205 P0206 P0207 P0208 P0335
(_1) P0335 (_2) P0336 P0340 (strt) P0340 (run) P0341
P0345 (strt) P0345 (run) P0346 P0365 (run) P0366
P0390 (run) P0391 P0335 (_1s) P0335 (_2s) P0336
(sub) P0340 (strt_s) P0340 (sub) P0341 (sub) P0345
(strt_s) P0345 (run_s) P0346 (sub) P0365 (run_s) P0366
(sub) P0390 (run_s) P0391 (sub) P018B P008B P008A
P0191 P0088 P0087 P0507 (cser) P0506 (cser) P052A
P052B P052C P052D P054A P054B P054C P054D
P050B (hi) P050B (lo) P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P00C6 (dual)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Catalyst Heating P050E An expected catalyst light off Evaluation time > see Total fuel cut duration plus <= 10 s 10 s 2 Drive
Evaluation time is determined at engine table Time engine load <= 0.4 g/rev Cycles
(tempm) start. This is dependent on And
engine off time and coolant Catalyst temperature (from < 350 degC
temperature at engine start. model)
This time is modified with a
correction factor for time in
fuel cut or at low load.
After this expected time has
elapsed, if the catalyst
temperature is below a
threshold for a further waiting
time, then a fault is set.
P2229 P2228 P0113 P0112 P00AD P00AC P007D P007C P0103 P0102 P010D P010C
P0238 P0237 P0108 P0107 P0118 P0117 P018D P018C P0643 P0642 P0193 P0192
P0010 P2088 P2089 P0020 P2092 P2093 P0013 P2090 P2091 P0023 P2094 P2095 P001A
P001B P001C P001D P001E P001F P0031 (op) P0031 (gs) P0032 P0051 P0051 (gs)
P0052 P0351 P2300 P2301 P0352 P2303 P2304 P0353 P2306 P2307 P0354 P2309 P2310
P0355 P2312 P2313 P0356 P2315 P2316 P0357 P2318 P2319 P0358 P2321 P2322 P0444
P0458 P0459 P007B (ris) P007B (dwn) P007B (scf) P0111 (hi) P0111 (lo) P0111 (stk)
P00AB (hi) P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0236 P0101
P010B P115D P0106 P0069 P0335 (_2) P0340 (run) P0341 P0345 (run) P0346 P0365 (run)
P0366 P0390 (run) P0391 P0335 (_2s) P0340 (sub) P0341 (sub) P0345 (run_s) P0346 (sub)
P0365 (run_s) P0366 (sub) P0390 (run_s) P0391 (sub) P1315 P1316 P0171 P0172 P0174
Fault Codes that disable
P0175 P0026 (hi) P0026 (lo) P0028 (hi) P0028 (lo) P0011 P0012 P0016 P0021 P0022
Catalyst Heating Evaluation
P0018 P0027 (hi) P0027 (lo) P0029 (hi) P0029 (lo) P0014 P0015 P0017 P0024 P0025
P0019 P0441 P018B P008B P008A P0191 P0088 P0087 U0300 P2610 P2610 (mis) P2610
(hi) P2610 (lo) U0155 P0852 P0851 P0850 (cr1) P0850 (cr2) P0560 P0687 P0507 (cser)
P0506 (cser) P052A P052B P052C P052D P054A P054B P054C P054D P050B (hi) P050B
(lo) P0149 (ma_hi) P0149 (ma_lo) P0148 (mt_hi) P0148 (mt_lo) P0149 (sa_hi) P0149
(sa_lo) P0148 (st_hi) P0148 (st_lo) P1603 P0610 P0606 (cnt) P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint) P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601 (sub) P003C P003E P00C6 (dual)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.12.1 Description
The monitor will execute when all entry conditions have been satisfied.
The diagnostic functions by monitoring the engine speed. If the actual engine speed is more than 100 rpm below the target engine speed,
then a counter is started. Once this counter exceeds the failure time limit a failure judgement is made for idle speed lower than expected. If
the actual engine speed is more than 200 rpm above the target engine speed a counter is started. Once this counter exceeds the failure time
limit a failure judgement is made for idle speed higher than expected.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Idle speed control P0506 Idle speed lower than Idle speed versus target 100 rpm Engine Coolant Temperature 60 <= T <= 120 degC 10 s 2 Drive
expected too low Atmospheric pressure >= 64 kPa Cycles
P0507 Idle speed higher than Idle speed versus target 100 rpm Afterstart >= 5 s
expected too high Estimated ambient temperature >= -40 degC
Vehicle speed <= 0 mph
ISC & vehicle speed conditions
True for >= 2.0 s
Stable condition 5 secs have elapsed following a
change in state of
the park/neutral switch or the
Footbrake or Fan duty change
was greater than 20%
Power Switch Function Not Active
Engine load (condition only < 2 g/rev
relevant to low fault)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
P2229 P2228 P0113 P0112 P00AD P00AC P007D P007C P0103 P0102 P010D P010C
P0238 P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0193 P0192 P0010 P2088 P2089
P0020 P2092 P2093 P0013 P2090 P2091 P0023 P2094 P2095 P001A P001B P001C
P001D P001E P001F P0351 P2300 P2301 P0352 P2303 P2304 P0353 P2306 P2307
P0354 P2309 P2310 P0355 P2312 P2313 P0356 P2315 P2316 P0357 P2318 P2319 P0358
P2321 P2322 P007B (ris) P007B (dwn) P007B (scf) P0111(hi) P0111 (lo) P0111 (stk)
P00AB (hi) P00AB (lo) P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0236 P0101
P010B P115D P0106 P0069 P02EE (bv) P02EF (bv) P02F0 (bv) P02F1 (bv) P02F2 (bv)
P02F3 (bv) P02F4 (bv) P02F5 (bv) P02EE (hl)P02EF (hl) P02F0 (hl) P02F1 (hl) P02F2 (hl)
P02F3 (hl) P02F4 (hl) P02F5 (hl) P0262 (hb) P0265 (hb) P0268 (hb) P0271 (hb) P0274 (hb)
P0277 (hb) P0280 (hb) P0283 (hb) P0261 (lb) P0264 (lb) P0267 (lb) P0270 (lb) P0273 (lb)
P0276 (lb) P0279 (lb) P0282 (lb) P0262 (hg) P0265 (hg) P0268 (hg) P0271 (hg) P0274 (hg)
Fault Codes that disable ISC monitoring P0277 (hg) P0280 (hg) P0283 (hg) P0261 (lg) P0264 (lg) P0267 (lg) P0270 (lg) P0273 (lg)
P0276 (lg) P0279 (lg) P0282 (lg) P0201 P0202 P0203 P0204 P0205 P0206 P0207 P0208
P0335 (_2) P0336 P0340 (run) P0341 P0345 (run) P0346 P0365 (run) P0366 P0390 (run)
P0391 P0335 (_2s) P0336 (sub) P2105 P0026 (hi) P0026 (lo) P0028 (hi) P0028 (lo) P0011
P0012 P0016 P0021 P0022 P0018 P0027 (hi) P0027 (lo) P0029 (hi) P0029 (lo) P0014
P0015 P0017 P0024 P0025 P0019 P0852 P0851 P0850 (cr1) P0850 (cr2) P0000 P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606 (wdog_s)
P0607 P0601 P0601 (sub) P2119 (dif) P2119 (dif_h) P2118 P2119 (cnt) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P0500 (ud) P0500 (qf) P0500 (ud_s) P0500
(qf_s) P003C P003E
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.13.1 Schematic
The naturally aspirated engine has a single manifold pressure sensor, but the supercharged engine has two manifold pressure sensors. On the
supercharged engine one sensor measures the pressure after the throttle, but before the supercharger and the second sensor measures the pressure
after the inter cooler. The schematic shows the DTCs that are relevant to each of the sensors for the two different engine types.
If the voltage is below the low threshold, then a timer will be incremented. If this timer exceeds a threshold, then a failure flag is set and a DTC is
stored.
If the voltage is over the high threshold, then a timer will be incremented. If this timer exceeds a threshold, then a failure flag is set and a DTC is
stored.
5.13.3 Range or performance failure - P0106 (Naturally Aspirated Engine) and P0236 (Super Charged Engine)
The manifold absolute pressure sensor monitor compares the measured manifold absolute pressure with an estimated pressure which is calculated
from a model.
When the entry conditions are met, the manifold absolute pressure sensor is faulty if the difference between the actual and estimated values is greater
than a calibrated percentage or greater than a second, absolute threshold.
The monitor has the ability to make a normal judgment followed by a failed judgment or vice versa as the monitor runs continuously whilst the entry
conditions are met.
The functionality of this diagnostic is the same for each of the two pressure sensors on the supercharged engine, apart from some differences in the
entry conditions.
The flow chart shown below explains the operation of this diagnostic.
Calculate Estimated_MAP
Calculate Max_Pressure_Limit
Take maximum value of (Estimated_MAP * Hi_Factor) or
(Estimated_MAP + Hi_Fault_Guard)
Calculate Min_Pressure_Limit
Take minimum value of (Estimated_MAP * Lo_Factor) or
(Estimated_MAP - Lo_Fault_Guard)
No
Set MAP rationality normal judgment Is Fault_Timer >= Threshold? Yes Set MAP rationality failure judgment
When the entry conditions are met, the pressure sensor is faulty if the difference between the actual and estimated values is greater than a
calibrated threshold and the accumulated difference is above a second threshold.
The monitor has the ability to make a normal judgment followed by a failed judgment or vice versa as the monitor runs continuously whilst the
entry conditions are met.
The flow chart shown below explains the operation of this diagnostic.
Calculate Throttle_Press_Base
Look up table dependent on engine speed and throttle angle
Calculate AltitudeDifComp
Look up table dependent on engine speed and throttle angle
Calculate AtmoPComp
Look up table dependent on atmospheric pressure
Calculate InAirTComp
Look up table dependent on inlet air temperature
Calculate Est_Throttle_Press
Est_Throttle_Press = Throttle_Press_Base * (1 - AltitudeDifComp * AtmoPComp) * InAirTComp
Calculate MaxDiff
Look up table dependent on engine speed and VVT angle
Calculate Thresh_Pos
Thresh_Pos = Pos_Constant * MaxDiff * EGR_Factor
Calculate Thresh_Neg
Thresh_Neg = Neg_Constant * MaxDiff * EGR_Factor
TempFaltPos = 1
Yes Is AccumDiffPos(i) >= FaltlevlPos? No TempFaltPos = 0
TempNormPos = 0
Yes
TempNormPos = 1
TempFaltNeg = 1
Yes Is AccumDiffNeg >= FaltlevlNeg? No TempFaltNeg = 0
TempNormNeg = 0
Yes
TempNormNeg = 1
TempNormNeg = 1 And
Yes
TempNormPos = 1?
No
TempFaltNeg = 1 Or
Set MAP rationality normal judgment Yes Set MAP rationality failure judgment
TempFaltPos = 1?
No
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Manifold Pressure Sensor (naturally aspirated engine only)
MAP high input P0108 Out of range check MAP voltage (> 215 kPa) > 4.90 V Ignition on 2.21 s 2 Drive
MAP low input P0107 Out of range check MAP voltage (< 13.3 kPa) < 0.20 V Cycles
(hlmap) Fault Codes that disable P0107 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0108 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
MAP range / P0106 Rationality - measured Measured MAP deviation >= 25 % Engine speed 1000 <= RPM <= 4500 rpm 15 s 2 Drive
performance versus estimate based on from estimate Engine Coolant Temperature >= 50 degC Cycles
(mapr) throttle position & engine Or >= 10 kPa Atmospheric pressure > 68 kPa
speed with compensation for Throttle Position 5 <= TP <= 60%
altitude and temperature. Throttle Position change < 1.0 %/160 ms for at least 0.96 s
Purge duty <= 1.0
Fault Codes that disable P0106 P2229 P2228 P0103 P0102 P010D P010C P0238 P0237
P0108 P0107 P0118 P0117 P0643 P0642 P0010 P2088
P2089 P0020 P2092 P2093 P0013 P2090 P2091 P0023
P2094 P2095 P001A P001B P001C P001D P001E
P001F P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0101
P010B P115D P0069 P0340 (run) P0341 P0345 (run)
P0346 P0365 (run) P0366 P0390 (run) P0391 P1315
P2105 P0420 P0430 P0441 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P003C
P003E
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Manifold Pressure Sensor
(post supercharger, SC engine only)
MAP high input P0238 Out of range check MAP voltage (> 280 kPa) > 4.90 V Ignition on 2.21 s 2 Drive
MAP low input P0237 Out of range check MAP voltage (< 20 kPa) < 0.20 V Cycles
(hlmap)
Fault Codes that disable P0237 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0238 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
MAP range / P0236 Rationality - measured Measured MAP deviation >= 25 % Engine Speed 1000 <= RPM <= 4500 rpm 15 s 2 Drive
performance versus estimate based on from estimate Engine Coolant Temperature >= 50 degC Cycles
(mapr) Throttle Position & Engine Or >= 10 kPa Atmospheric pressure > 68 kPa
Speed with compensation for Throttle Position 5 <= TP <= 60 %
altitude and temperature. Throttle Position change < 1.0 %/160ms for at least 0.96s
Purge duty <= 1.0
Fault Codes that disable P0236 P2229 P2228 P0103 P0102 P010D P010C P0238
P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0010
P2088 P2089 P0020 P2092 P2093 P0013 P2090 P2091
P0023 P2094 P2095 P001A P001B P001C P001D
P001E P001F P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0101 P010B P115D P0069 P0340 (run) P0341 P0345
(run) P0346 P0365 (run) P0366 P0390 (run) P0391
P1315 P2105 P0420 P0430 P0441 P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P003C
P003E
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Manifold Pressure Sensor (At
the Throttle, Super Charged
engine only)
MAP high input P0108 Out of range check MAP voltage (> 250 kPa) > 4.90 V Ignition on 2.21 s 2 Drive
MAP low input P0107 Out of range check MAP voltage (< 13.3 kPa) < 0.20 V Cycles
(hlmap2)
Fault Codes that disable P0107 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0108 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
MAP range / P0106 Rationality - measured Measured MAP deviation >= 25 kPa Engine Speed 1000 <= RPM <= 4500 rpm Dependent 2 Drive
performance versusestimate based on from estimate Engine Coolant Temperature -10 <= T <= 119 degC upon Cycles
(map2) Throttle Position & Engine And Intake Air Temperature -30 <=AT <= 100 degC drive cycle
Speed with compensation Accumulated MAP deviation >= 5000 Atmospheric pressure >= 68 kPa
for altitude and from estimate Throttle Position 5 <= TP <= 60 %
temperature. (if the difference is above a Throttle Position change < 1.0 % /10 ms
threshold then the difference is Purge duty < 1.0
accumulated. If the VVT Advance Angle <= 50 degrees
accummulated difference is Estimated Manifold Pressure >= 0 kPa
above a threshold, then a fault is Vehicle speed 0 <= v <= 407 mph
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
flagged) Fault Codes that disable P0106 P2229 P2228 P0103 P0102 P010D P010C P0238
P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0010
P2088 P2089 P0020 P2092 P2093 P0013 P2090 P2091
P0023 P2094 P2095 P001A P001B P001C P001D
P001E P001F P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0101 P010B P115D P0069 P0340 (run) P0341 P0345
(run) P0346 P0365 (run) P0366 P0390 (run) P0391
P1315 P2105 P0420 P0430 P0441 P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P003C
P003E
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.14.1 Schematic
The engine has two airflow meters, but only one throttle. The above schematic shows the relevant DTCs for each of the sensors.
5.14.2 High or low input failure - P0102, P0103, P010C and P010D
These monitors run continuously. The voltage from the sensor is compared with failure thresholds that are pre-defined.
If the voltage is below the low threshold, then a timer will be incremented. If this timer exceeds a threshold, then a failure flag is set and a DTC is
stored.
If the voltage is over the high threshold, then a timer will be incremented. If this timer exceeds a threshold, then a failure flag is set and a DTC is
stored.
The mass airflow sensor monitor compares the measured airflow with an estimated airflow which is calculated from a model. The model that
calculates the estimated airflow uses a look-up table which has engine speed and throttle angle as inputs for deriving base airflow and then
applies compensation values from additional look-up tables for intake air temperature and atmospheric pressure.
The mass airflow sensor reading (P0101 and P010B) is faulty if, when the entry conditions are true, the difference between the actual and
estimated values has been greater than a calibrated threshold for a pre-determined time. At low airflows, upper and lower guard values are
used to prevent false diagnosis of faults.
The monitor has the ability to make a normal judgment followed by a failed judgment or vice versa, as the monitor runs continuously whilst the
entry conditions are true.
As the engine uses two intakes, each with a separate mass airflow sensor and a single throttle, then any of the air for each of the eight
cylinders can pass through either of the throttles. This means that if there is a difference in air pressure between the two intakes, then there
will be a difference in air flow through each of the intakes.
This is most likely to occur due to side winds and in extreme cases can result in air flowing out through one of the intake ducts. The monitor is
able to identify this flow imbalance between the two sides of the intake system, so that the limits maybe adjusted in order to remove any
tendency for false diagnosis of a sensor.
Flow imbalance is determined by comparing each MAF sensor reading with the estimated value. If it is lower than the minimum of a pre-
determined proportion of the estimated value or the estimated value minus an offset, then the high fault threshold for the other MAF sensor is
increased by an amount that depends on the difference between the two MAF sensor readings. Using the minimum compare function with an
offset or "guard" value ensures that the function is not too sensitive at low airflows.
If it is higher than the maximum of a pre-determined proportion of the estimated value or the estimated value plus an offset, then the low fault
threshold for the other MAF sensor is decreased by an amount that depends on the difference between the two MAF sensor readings.
In both cases, the offset value for the fault threshold is determined from a look up table that depends on engine speed and throttle angle.
When imbalance occurs, both sensor readings move equally in opposite directions, the appropriate fault thresholds will be adjusted and no
false fault detection will occur. If a single sensor is faulty, then it can only alter a fault threshold for the opposing sensor, its monitor is
unaffected and will therefore flag a fault.
Set throttle timer to Zero Yes Throttle_Delta >= Threshold? No Increment throttle timer
Set VVT timer to Zero Yes VVT_Delta >= Threshold? No Increment VVT timer
Calculate AtmoPComp
Look up table dependent on atmospheric pressure
Calculate Intermediate MAF Limit Values for Individual Sensors (P0101 & P010B)
HighLimit1 = maximum of (PrdGa1 * (1 + FactorHi)) and (PrdGa1 + HiFaultGuard)
LowLimit1 = minimum of (PrdGa1 * (1 - FactorLo)) and (PrdGa1 - LoFaultGuard)
HighLimit2 = maximum of (PrdGa2 * (1 + FactorHi)) and (PrdGa2 + HiFaultGuard)
LowLimit2 = minimum of (PrdGa2 * (1 - FactorLo)) and (PrdGa2 - LoFaultGuard)
Calculate ImbMod
Look up table, dependent on engine speed and throttle angle
Set Flag Ga2Lo = true Yes Is Ga2 < InternLmtGA2Lo? No Set Flag Ga2Lo = false
Set Flag Ga2Hi = true Yes Is Ga2 > InternLmtGA2Hi? No Set Flag Ga2Hi = false
Set Flag Ga1Lo = true Yes Is Ga1 < InternLmtGA1Lo? No Set Flag Ga1Lo = false
Set Flag Ga1Hi = true Yes Is Ga1 > InternLmtGA1Hi? No Set Flag Ga1Hi = false
Is Ga1
Decrement FaltTim1
No >= HiLmt1 Yes Increment FaltTim1
(unless FaltTim1 = 0)
Or <= LoLmt1?
No
No
Is Ga2
Decrement FaltTim2
No >= HiLmt2 Yes Increment FaltTim2
(unless FaltTim2 = 0)
Or <= LoLmt2?
No
No
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
MAF high input P0103 Out of range check MAF voltage (> 409.2 g/s) > 4.90 V Ignition on 2.21 s 2 Drive
Cycles
MAF low input P0102 Out of range check MAF voltage (< 0.29 g/s) < 0.15 V
(hlmaf)
Fault Codes that disable P0102 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0103 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
2nd Sensor
MAF high input P010D Out of range check MAF voltage (> 391.9 g/s) > 4.90 V Ignition on 2.21 s 2 Drive
Cycles
MAF low input P010C Out of range check MAF voltage (< 0.27 g/s) < 0.15 V
(hlmaf2)
Fault Codes that disable P010D P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P010C (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
MAF range / performance
(mafr2) P0101 Rationality - measured Measured mass airflow for either Engine Speed 1000 <= N <= 4500 rpm 10.0 s 2 Drive
P010B versus estimate based on sensor varies from predicted Engine Coolant Temperature -10 <= T <= 120 degC (LR4 & R/R Cycles
Throttle Position & Engine airflow by: Vehicle speed 0 <= v <= 407 mph Sport)
Speed with compensation for The maximum of >= 30 % IAT (Right Hand Sensor) -30 <= IAT <=100 degC 7.0 s
altitude and temperature. And IAT (Left Hand Sensor) -30 <= IAT <=100 degC (R/Rover)
+ 7 g/s Atmospheric pressure >= 68 kPa
Or The minimum of <= 30 % Throttle Position (Range Rover) 5 <= TP <= 60 %
And Throttle Position (LR4 & R/Rover
10 <= TP <= 60 %
Sport)
- 7 g/s Throttle Position change < 1 %/160 ms for at least 1.02 s
VVT change rate (inlet cams) < 5degCA/160ms for at least 1.02s
VVT change rate (exhaust cams) < 5degCA/160ms for at least 1.02s
These limits will be adjusted in Not idling
See “Fault Threshold the presence of flow imbalance:
Modifier for the MAF If LH MAF Reading< minimum of
Rationality Diagnostic” (0.94 * Predicted airflow) or
table below (Predicted airflow - 3.0)
Then RH Upper Threshold is
increased by (Difference In MAF
Readings * IMBMOD)
Or
If LH MAF Reading > maximum
of (1.06 *Predicted airflow) or
(Predicted airflow + 3.0)
Then RH Lower Threshold
decreased by (Difference In
MAF
Readings * IMBMOD)
The RH MAF can determine the
limits for the LH MAF in the
same way.
IMBMOD is determined from the
MBD_MAFR2_IMBMOD lookup
table in the appendix.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable MAF P2229 P2228 P0103 P0102 P010D P010C P0238
rationality monitoring P0237 P0108 P0107 P0118 P0117 P0643 P0642 P0010
P2088 P2089 P0020 P2092 P2093 P0013 P2090 P2091
P0023 P2094 P2095 P001A P001B P001C P001D
P001E P001F P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0069 P0340 (run) P0341 P0345 (run) P0346 P0365
(run) P0366 P0390 (run) P0391 P1315 P2105 P0420
P0430 P0441 P1603 P0606 (cnt) P0606 (cnt_s) P0604
(ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P2123 P2122
P2128 P2127 P2138 P2138 (sub) P2119 (dif) P2119
(dif_h) P2118 P2119 (cnt) P2119 (spg) P0123 P0122
P0223 P0222 P0121 P2135 (dif) P2135 (dif_s) P0500
(ud) P0500 (qf) P0500 (ud_s) P0500 (qf_s) P003C
P003E
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor
The Barometric Pressure (BARO) sensor (also referred to as the High Altitude Compensation sensor) is located within the ECM.
These are continuous monitors. The voltage from the sensor is compared to failure thresholds defined in the software. If the voltage is less than the
minimum threshold, then a timer starts to increment. Once this timer exceeds another threshold a failure flag is set and a DTC is stored. If the voltage
exceeds the maximum threshold defined in the software, then a timer starts to increment. Once this timer exceeds another threshold a failure flag is
set and a DTC is stored.
The signal from the sensor is compared to the signal from the MAP sensor at ignition on. During this time the pressure within the inlet manifold should
be at atmospheric, and therefore should match the value from the barometric pressure sensor.
The following conditions must be met first before the monitor can execute;
If the absolute value of the difference between the signal from the barometric pressure sensor and the MAP sensor differ by more than a defined
amount, a timer is executed. If the timer exceeds a calibrated threshold, a temperature failure is judged. Providing there is no failure of the MAP
sensor, a DTC is then stored.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
BARO. sensor high input P2229 Out of range check BARO. sensor voltage (> 126 kPa) > 4.53 V Ignition on 2.21 s 2 Drive
BARO. sensor low input P2228 Out of range check BARO. sensor voltage (< 44 kPa) < 0.08 V Cycles
(hlatmp)
Fault Codes that disable P2228 P0606 (eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s)
& P2229 P0606 (dupl) P0606 (dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606 (wdog_s) P0607 P0601
P0601 (sub)
BARO sensor P0069 Comparison with MAP Absolute value of Barometric > 10 kPa Ignition on 0.20 s 2 Drive
range / performance sensor signal and Pressure - MAP Estimated ambient temperature >= -30 degC Cycles
(atpr) BARO. signal Engine Coolant Temperature >= -30 degC
Engine Speed <= 0 rpm
Vehicle speed <= 0 mph
Battery voltage >= 10.5 V
Time after Ignition on 0.080 <= time <= 0.400 s
Delta MAP < 0.35 kPa/40ms
Starter Relay Not on
Ignition off time (prior to test) = 0 or >= 60 s
Fault Codes that disable P0069 P2229 P2228 P0238 P0237 P0108 P0107 P0118 P0117
P0643 P0642 P0073 P0072 P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0071 (hi) P0071 (lo) P1603 P0606 (cnt)
P0606 (cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.16.1 Description
This monitor runs continuously. The voltage from the sensor is compared with failure thresholds defined in the software. If the sensor voltage is less
than the minimum threshold, a timer will be started. If this timer exceeds a threshold, a failure flag is set and a DTC is stored. If the sensor voltage is
greater than the maximum threshold, a timer will be started. If this timer exceeds a threshold, a failure flag is set and a DTC is stored.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fuel Supply Pressure
Sensor
Fuel pressure sensor P018D Out of range check Fuel rail pressure voltage > 4.95 V Ignition on 2.21 s 2 Drive
high input (> 1000 kPa) Cycles
Fuel pressure sensor P018C Out of range check Fuel rail pressure voltage < 0.11 V
low input (hlfulp) (< 50 kPa)
Fault Codes that disable P018C P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P018D (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Fuel pressure sensor P018B Rationality – deviation Difference between maximum < 3.0kPa Fuel level >= 5 % Dependent 2 Drive
range / performance Measured during pump and minimum pressure values Battery Voltage >= 10.5 V upon Cycles
(fpss) duty deviation Estimated ambient temperature >= -20 degC drive cycle
Accumulated pump duty deviation >= 24.0 %
Fuel pump feedback In operation
compensation
Fault Codes that disable P018B P018D P018C P0643 P0642 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fuel Supply Pressure
Sensor
Fuel system pressure too P008B Rationality - measured versus Delta pressure < -150 kPa Battery Voltage >= 10.5 V 240 s 2 Drive
high target Ignition on time >= 4.0 s Cycles
Fuel system pressure too P008A Rationality - measured versus Delta pressure > 180 kPa Fuel level >= 5 %
low target Fuel cut not active for At least 10.1 s
(vfps) Fuel pump feedback Active for > 4.96s
compensation
Target pressure change <= 20kPa/160ms for at least 1.44s
Engine load < 3.0 g/rev
Entry conditions true > 4.0 s
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
High Fuel Pressure System
Fuel rail pressure sensor high P0093 Out of range check Fuel rail pressure voltage >= 4.78 V Ignition on 2.21 s 2 Drive
input (> 20 MPa) Cycles
Fuel rail pressure sensor low P0092 Out of range check Fuel rail pressure voltage <= 0.21 V
input (< 0 MPa)
(hlfuhp) Fault Codes that disable P0192 P0643 P0642 P1603 P0606 (cnt)
& P0193 P0606 (cnt_s) P0604 (ramint)
P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht)
P0604 (ramsht_s) P0605 (romcnt)
P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci)
P0606 (eci_s) P0606 (ssc) P0606
(ssc_s) P0606 (dupl) P0606
(dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601
(sub)
Fuel rail pressure sensor P0191 Rationality – Average Fuel Pressure, following > 8.0 MPa Engine off time 8 < time <= 18.5 hours 2 Drive
range / performance pressure measured during Soak period Engine stopped & Not starting 025 <= time <= 6.5 s Cycles
(hfpd) System power up (fuel pressure measurement
Window)
Fault Codes that disable P0191 P0643 P0642 P0193 P0192 P2610
(mis) P2610 (hi) P2610 (lo) U0155
P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s)
P0605 (romint) P0605 (romint_s)
P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s)
P0605 (romexc) P0605 (romexc_s)
P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl)
P0606 (dupl_s) P0605 (fmemo)
P0605 (fmemo_s) P0606 (wdog)
P0606 (wdog_s) P0607 P0601
P0601 (sub) U0140
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
High Fuel Pressure System
Fuel system P0088 Rationality - measured Fuel pressure - Target pressure > 1.0 MPa Engine state Not starting 10.0 s 2 Drive
pressure too versus target And Time after start >= 1.0 s Cycles
high Fuel Pump On Angle < See Normal injection fuel mass <= 160 mg
Table Fuel level >= 1 %
Fuel system P0087 Rationality - measured Fuel pressure - Target pressure < -1.0 MPa Fuel pump not in start mode For at least 1.0 s 5.0 s
pressure too low versus target And Fuel cut not active For at least 3.0 s
(hpfs) Fuel Pump On Angle 20 < deg Target pressure change < 0.3 MPa/80ms for at least 10.0s
CA < 112
degrees
Fault Codes that disable P0087 P0643 P0642 P0193 P0192 P0335 (_2) P0336 P0335
& P0088 (_2s) P0336 (sub) P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P00C6 (dual)
High Pressure Rise P00C6 High pressure fuel system System pressure during start < 0.01 MPa Crank angle counter (from start) >= 720 CA 2 Drive
Time (hprt) pressure rise checked during - system pressure pre-start Battery Voltage 6.0 <= Vbatt <= 16.0 V Cycles
engine start Coolant temperature -10 <= T <= 95 degC
Fuel level >= 1 %
Starter On
Start injection fuel cut request flag Set
Engine off time >= 28740 s
Fault Codes that disable P00C6 P0118 P0117 P018D P018C P0643 P0642 P0193
P0192 P0116 (hi) P0116 (lo) P0116 (stk) P0335 (_1)
P0335 (_1s) P2610 (mis) P2610 (hi) P2610 (lo) P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) U0140
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
The supercharged engine also has a sensor in the intake manifold, located after the intercooler.
5.17.2 Intake Air Temperature Sensor - Stuck in Range Diagnostic - P0111 & P00AB
This monitor checks that the inlet air temperature sensor is not stuck at a value within its normal operating range. It runs continuously
provided the engine speed is above a threshold and will fail if the sensor signal has not changed by more than a pre-determined amount after
the vehicle has been driven above a certain speed for at least a pre-determined time and also operated at idle for a calibrated time.
The inlet air temperature sensor reading is compared with a maximum and a minimum value. If it is above the maximum, then this is updated
to the current sensor reading. If the sensor reading is below the minimum, then this is updated to the current sensor value. A test value is
calculated by subtracting the minimum from the maximum value.
When the entry conditions for the driving check are true, then a timer is incremented, when these conditions are not true, then the timer is
decremented by a calibrated amount. When the timer exceeds a threshold, then a flag is set to indicate that sufficient driving has been
completed. The entry conditions for the driving check require that the mass air flow is within a window and the vehicle speed is above a
threshold.
When the entry conditions for the idle check are true, then a timer is incremented, when these conditions are not true, then the timer is
decremented by a calibrated amount. When the timer exceeds a threshold, then a flag is set to indicate that sufficient idling has been
completed. The entry conditions for the idle check require that the mass air flow is below a threshold, the engine coolant temperature is above
a threshold, the driving check has been completed and the vehicle speed is below a threshold.
Once both operating condition flags have been set, then the test value is compared to the fault threshold, if this is exceeded, then a normal
judgment is made. If the threshold has not been exceeded, then a fault will be set.
The flow chart shown below explains the operation of this diagnostic.
No
No
T e s tV a lu e = IA T _ M a x - IA T _ M in
Yes
D riv in g C h e c k C o n d itio n s
No
D e c re m e n t D riv in g C h e c k
E n g in e A irflo w w ith in w in d o w D rivin g c h e c k c o n d itio n s sa tis fie d ? No
T im e r
ve h ic le sp e e d > = th re s h o ld
Yes
In c re m e n t D riv in g C h e c k T im e r
S e t D riv in g C h e c k C o m p le te
D riv in g C h e c k T im e r > = th re sh o ld ? Yes
F la g
Id le C h e c k C o n d itio n s No
E n g in e A irflo w < = th re s h o ld
Id le ch e c k c o n d itio n s s a tisfie d ? No D e c re m e n t Id le C h e c k T im e r
E C T > th re sh o ld
v e h ic le s p e e d < = th re s h o ld
D riv in g C h e c k c o m p le te fla g is s e t Yes
In cre m e n t Id le C h e c k T im e r
Id le C h e ck T im e r > = th re s h o ld ? Yes S e t Id le C h e c k C o m p le te F la g
No
Id le & D riv in g C h e c k F la g s S e t?
Yes
No T e s tV a lu e > F a u lt le v e l? Yes
S e t S tu c k IA T fa ilu re ju d g m e n t S e t S tu ck IA T n o rm a l ju d g m e n t
The diagnostic will run if the engine has been off for greater than a calibrated time, the engine has been stopped, the time after start is greater
than or equal to a threshold, engine pre-heating must not have been detected and the difference between the maximum of the average
coolant temperature and the average of the inlet air temperature in the opposing air intake (i.e. the right hand sensor diagnostic uses the left
hand sensor reading) and the minimum of these two temperatures must be less than or equal to a threshold. The average values are
determined over four sensor readings at the start of system operation.
The monitor compares the airflow temperature sensor reading to the average values of the coolant temperature and the inlet air temperature
from the sensor in the opposite air intake (i.e. the right hand sensor diagnostic uses the left hand sensor reading). Two test values are formed,
one to check for a high bias and a second to check for a low bias, so for the right hand sensor monitor, these will be given by:
Test Value High = Average RH IAT - (maximum of Average ECT and Average LH IAT)
Test Value Low = (minimum of Average ECT and Average LH IAT) - Average RH IAT
These test values must be less than or equal to a calibrated threshold for a normal judgment to be made. If either test value is greater than
the threshold, then a failure is flagged.
The flow chart shown below explains the operation of this diagnostic for the right hand sensor.
This diagnostic is identical for both left and right-hand sensors, except the opposite sensor is used to establish the entry condition check and
the fault determination, i.e. for the left hand sensor, the right and left designations are swapped.
The left-hand sensor uses DTC P00AB and the right-hand sensor P0111.
T e m p e r a tu r e B ia s e d a t S ta rt
S ta rt - P 0 1 1 1
Yes
R e s e t T e m p e ra t u re S u m V a lu e s
R e s e t d a t a p o in t c o u n te r
No
E n t r y C o n d i ti o n s f o r IA T B ia s e d C h e c k
E n tr y
E n g in e h a s b e e n s t o p p e d
c o n d iti o n s s a t is fie d fo r I A T b ia s e d
P r e - h e a ti n g n o t d e te c te d
check?
A ft e r s ta r t tim e a b o v e a t h re s h o ld
No E n g in e s o a k ti m e w i th in w in d o w
Yes
S ta r te r m o t o r b e in g o p e r a te d ?
No
EC T_Sum = EC T_Sum + EC T
L H IA T _ S u m = L H IA T _ S u m + L H IA T
R H IA T _ S u m = R H IA T _ S u m + R H IA T
D a ta P o in t C o u n te r = D a ta P o in t C o u n te r + 1
D a ta P o in t C o u n te r = 4 ?
Yes
A v e r a g e E C T = E C T _ S u m /4
A v e r a g e L H IA T = L H IA T _ S u m / 4
A v e r a g e R H IA T = R H IA T _ S u m / 4
A b s o lu te V a lu e o f ( A v e r a g e E C T - A v e ra g e L H IA T ) < = th r e s h o l d ?
Yes
T e s t V a lu e H i g h = A v e ra g e R H IA T - ( m a x im u m o f
A v e ra g e E C T a n d A v e ra g e L H IA T )
T e s t V a lu e L o w = ( m in i m u m o f A v e ra g e E C T a n d
A v e ra g e L H IA T ) - A v e r a g e R H I A T
Yes T e s t V a lu e H ig h > H ig h L im it ? No
S e t R H I A T b i a s e d h i g h fa i lu re ju d g m e n t S e t R H I A T b i a s e d h ig h n o r m a l ju d g m e n t
No
Yes T e s t V a l u e L o w > L o w L im it? No
S e t R H IA T b ia s e d l o w fa i lu re ju d g m e n t S e t R H I A T b i a s e d lo w n o r m a l ju d g m e n t
E nd
If the engine speed is above a threshold, the mass air flow is above a threshold, the coolant temperature is below a threshold and the post-
supercharger intake air temperature sensor voltage is below or equal to a fault limit, then a fault timer will be incremented. If this fault timer
reaches a threshold, then the sensor will be judged as faulty.
If the post-supercharger intake air temperature sensor voltage is above the fault limit and the engine has been running for longer than a pre-
determined time, then the sensor will be judged as normal.
The flow chart shown below explains the operation of this diagnostic.
Range performance
or rationality fault detected?
No
No
Yes
IAT2 Sensor Voltage > Fault Limit? Yes Reset Fault Timer
No
Yes Fault Timer >= limit? After start time > threshold?
Yes
Yes
Set IAT2 stuck high at start failure judgm ent Set IAT2 stuck high at start norm al judgm ent
End
The sensor is read every 0.160 seconds and three comparison values calculated, these are:
Delta temp = Reading 0.480s ago - Current Reading
Delta temp old1 = Reading 0.640s ago - Reading 0.160s ago
Delta temp old2 = Reading 0.800s ago - Reading 0.320s ago
If all three delta values exceed a threshold then a fault will be detected with the sensor
It compares the post-supercharger intake temperature sensor reading with that of temperature sensor in the right-hand mass air flow meter.
Provided the other entry conditions are valid, then if the values of the two sensors deviate by more than a pre-determined amount for a
calibrated time period a fault will be detected. If the values are within the fault threshold for a calibrated time period, then a normal judgment is
made.
The entry conditions are that the intake manifold pressure must be below a threshold, the time after start must be below a threshold and an
engine soak check has been completed successfully. An engine soak is judged to have occurred if at engine start, the coolant temperature is
below a threshold, the air intake temperature at the MAF sensor is below a threshold and the absolute value of the coolant temperature minus
the air intake temperature is also below a threshold.
The flow chart shown below explains the operation of this diagnostic.
S e n s o r B ia s e d a t S t a r t - S ta rt
P007B
R e s e t n o rm a l a n d fa u lt t im e r s
No
R a n g e p e r fo r m a n c e No
o r s t u c k h i g h a t s ta r t f a u lt d e te c te d ?
E n g i n e S o a k C h e c k C o n d it io n s f o r I A T 2 No
B ia s e d M o n i to r - D e te r m in a t io n m a d e a t
e n g in e s t a r t
E n g in e S o a k C h e c k P a s s e d ?
E n g in e c o o la n t t e m p e ra t u re < t h re s h o ld
IA T ( fr o m M A F ) < t h re s h o ld
A b s o lu te v a l u e o f (E C T - I A T ) < t h re s h o ld
Yes
E n t r y C o n d it io n s fo r IA T 2 B ia s e d C h e c k
E n tr y
c o n d i tio n s s a ti s f ie d f o r IA T 2 b ia s e d
In le t M a n ifo ld p re s s u re < t h re s h o ld
check?
A f te r s ta r t ti m e < th r e s h o l d
Yes
No
IA T 2 D e lta = A b s o lu t e v a lu e o f ( IA T ( fr o m M A F ) -
IA T 2 )
In c r e m e n t F a u lt ti m e r
I n c r e m e n t N o r m a l tim e r
Yes
R e s e t n o rm a l t im e r R e s e t f a u lt ti m e r
S e t IA T r a tio n a lit y f a i lu r e ju d g m e n t
No
Yes N o r m a l T i m e r > P a s s L im i t?
S e t IA T r a t io n a lit y n o r m a l ju d g m e n t
E nd
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake Air Temperature
Sensor (RH intake)
IATS high input P0113 Out of range check IAT voltage (> 4.90 V) < -40 degC Ignition on 2.21 s 2 Drive
IATS low input P0112 Out of range check IAT voltage (< 0.11 V) > 119 degC Cycles
(hliat)
Fault Codes that disable P0112 P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P0113 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
IATS range / performance P0111 RH Inlet air temperature RH IAT - (maximum of LH IAT > 20 degC Engine off time 28800 <= soak time < 3930000 s 2 Drive
(iatr) biased at start average & ECT average) Difference between maximum of <= 10 degC Cycles
Or LH IAT average & ECT average,
(Minimum of LH IAT average > 20 degC and minimum of LH IAT average &
& ECT average) - RH IAT ECT average
Time after start >= 120 s
Engine condition Has been stopped
Block Heater Not detected (see table for
conditions)
Fault Codes that disable P0111 P0113 P0112 P00AD P00AC P0103 P0102 P010D
(range performance) P010C P0238 P0237 P0108 P0107 P0118 P0117 P0643
P0642 P0116 (hi) P0116 (lo) P0116 (stk) P0125 P2610
(mis) P2610 (hi) P2610 (lo) P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake Air Temperature
Sensor (RH intake)
IATS range / performance P0111 IATS stuck Filtered IAT Voltage change <= 0.029 V General Entry Conditions 2 Drive
(iatd) (Voltage movement following (Maximum - minimum) Time after start >= 4.96s Cycles
soak up at idle, or cool down Engine Speed >= 500 rpm
when driving)
Driving Check Conditions
Mass airflow 30 <= MAF <= 500 g/s
Vehicle speed >= 47 mph
Time in conditions >= 30 s
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
LH Intake Air
Temperature Sensor
IATS high input P00AD Out of range check IAT voltage (> 4.90 V) < -40 degC Ignition on 2.21 s 2 Drive
IATS low input P00AC Out of range check IAT voltage (< 0.10 V) > 119 degC Cycles
(hliat1)
Fault Codes that disable P00AC P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P00AD (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
IATS range / P00AB LH Inlet air temperature biased LH IAT - (maximum of RH IAT > 20 degC Engine off time 28800 <= soak time < 3930000 s 2 Drive
performance (iatr1) at start average & ECT average) Difference between maximum of <= 10 degC Cycles
Or RH IAT average & ECT average,
(Minimum of RH IAT average > 20 degC & minimum of RH IAT average &
& ECT average) - LH IAT ECT average
Time after start >= 120 s
Engine condition Has been stopped
Block Heater Not detected (see table for
conditions)
Fault Codes that disable P00AB P0113 P0112 P00AD P00AC P0103 P0102 P010D
(range performance) P010C P0238 P0237 P0108 P0107 P0118 P0117 P0643
P0642 P0116 (hi) P0116 (lo) P0116 (stk) P0125 P2610
(mis) P2610 (hi) P2610 (lo) P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
LH Intake Air
Temperature Sensor
IATS range / performance P00AB IAT sensor stuck Filtered IAT Voltage change <= 0.029 V General Entry Conditions 2 Drive
(iatd1) (Voltage movement following (Maximum - minimum) Time after start >= 4.96 s Cycles
soak up at idle, or cool down Engine Speed >= 500 rpm
when driving)
Driving Check Conditions
Mass Airflow 30 <= MAF <= 500 g/s
Vehicle speed >= 47 mph
Time in conditions >= 30 s
Fault Codes that disable P00AB P0113 P0112 P00AD P00AC P0103 P0102 P010D
(stuck) P010C P0238 P0237 P0108 P0107 P0118 P0117 P0643
P0642 P0116 (hi) P0116 (lo) P0116 (stk) P0125 P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake Air Temperature Sensor 2 - Post supercharger
IATS2 high input P007D Out of range check IAT2 voltage (> 4.95 V) < -40 degC Ignition on 2.21 s 2 Drive
IATS2 low input P007C Out of range check IAT2 voltage (< 0.10 V) > 119 degC Cycles
(hliat2)
Fault Codes that disable P007C P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
& P007D (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
IATS2 range / P007B Stuck high at engine start IAT2 voltage (<= 0.42V) >= 119 degC Range Performance Fault Not detected 17.6 s 2 Drive
performance Rationality Fault Not detected Cycles
(iat2_ris) Engine Speed >= 1000 rpm
Mass Airflow >= 4 g/s
Engine Coolant Temperature <= 120 degC
IATS2 range / P007B Range Performance IAT(i - 3) - IAT(i) > 30 degC Stuck High Fault Not detected 2 Drive
performance Readings taken every 128 And Rationality Fault Not detected Cycles
(iat2_dwn) milliseconds and compared IAT(i - 4) - IAT(i-1) > 30 degC
(unexpected step change in And
Signal) IAT(i - 5) - IAT(i-2) > 30 degC
IATS2 range / P007B Rationality check Difference between IAT and > 35 degC Stuck High Fault Not detected 17.6 s 2 Drive
performance (comparison with IAT after IAT2 Range Performance Drop Fault Not detected Cycles
(iat2_scf) soak) Engine Coolant Temperature < 40 degC
Intake Air Temperature < 40 degC
Absolute of (ECT – IAT) < 10 degC
Manifold Absolute Pressure < 120 kPa
Time after start < 60 s
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P007B P0113 P0112 P00AD P00AC P007D P007C P0103
P0102 P010D P010C P0238 P0237 P0108 P0107
P0118 P0117 P0643 P0642 P0073 P0072 P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0236 P0101 P010B
P115D P0106 P0069 P2601 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Intake Air Temperature
Sensor 2 - Post
supercharger
IATS2 range / P007B Rationality check Difference between IAT and > 35 degC Stuck High Fault Not detected 17.6 s 2 Drive
performance (comparison with IAT after IAT2 Range Performance Drop Fault Not detected Cycles
(iat2_scf) soak) Engine Coolant Temperature < 40 degC
Intake Air Temperature < 40 degC
Absolute of (ECT – IAT) < 10 degC
Manifold Absolute Pressure < 120 kPa
Time after start < 60 s
Fault Codes that disable P007B P0113 P0112 P00AD P00AC P007D P007C P0103
P0102 P010D P010C P0238 P0237 P0108 P0107
P0118 P0117 P0643 P0642 P0073 P0072 P0116 (hi)
P0116 (lo) P0116 (stk) P0125 P0236 P0101 P010B
P115D P0106 P0069 P2601 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
IAT Sensor Range Performance Entry Condition (TBD_IATD_LOWTIMC & TBD_IATD1_LOWTIMC) – DTCs P00AB and P0111
And
And
Engine coolant temperature has dropped by more than 5 degC, following engine start.
Or
Engine coolant temperature has dropped by more than 5 degC, following engine start
And
And
And
And
Effective engine coolant temperature ( = (ECT x 0.8) + (Transmission temperature x 0.2)) is greater than or equal to modelled ECT
(determined from ambient temperature, ECT at engine off and engine off time) plus 10 degC)
If the engine has been switched off for more than 2 minutes, then the estimated ambient temperature initialises to the RH inlet air temperature sensor
reading.
Updating before the Driving Conditions for the P0111 or P00AB Diagnostics have been completed:
If the RH inlet air temperature sensor reading is less than the current estimated ambient temperature, then the estimated ambient temperature is
changed to the RH inlet air temperature sensor reading.
Updating after the Driving Conditions for the P0111 or P00AB Diagnostics have been completed:
If the RH inlet air temperature sensor reading is used as the estimated ambient temperature.
5.18.1 Description
When all of the entry conditions have been satisfied, the input signals from the four knock sensors (KS) are checked against variable upper and lower
threshold levels that are dependent on engine speed. If either sensor input is outside the threshold, then a failure will be flagged. If a failure is noted
on two drive cycles the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Knock sensor 1 low input P0327 Out of range check (low) KS Smoothed Voltage <= See Afterstart >= 10 s 5s 2 Drive
Knock sensor 2 low input P0332 table Engine Speed >= 1000 rpm Cycles
Knock sensor 3 low input P032C Engine Coolant Temperature >= 80 degC
Knock sensor 4 low input P033C Engine load >= See table
Knock sensor 1 high input P0328 Out of range check (high) KS Smoothed Voltage >= See Vehicle speed >= 0 mph
Knock sensor 2 high input P0333 table
Knock sensor 3 high input P032D
Knock sensor 4 high input P033D
(kcsr) Fault Codes that disable Knock P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
Sensor monitoring (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Knock Sensor Low Limit Threshold (TBD_KCSR_FALTLEVELLO) - DTCs P0327 & P0332
Knock Sensor High Limit Threshold (TBD_KCSR_FALTLEVELHI) - DTCs P0328 & P0333
Engine Speed (rpm) 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000 6500 7000 7500
Voltage (V) 0.330 0.330 0.340 0.350 0.400 0.570 0.600 0.650 0.700 0.900 1.050 1.200 1.400 1.800 2.300 2.500
Engine Load Entry Condition for Knock Sensor Diagnostic (TBD_KCSR_MAPLOAD) - DTCs P0327, P0328, P0332 & P0333
Engine Speed (rpm) 1000 1400 1800 2200 2600 3000 3400 3800 4200 4600 5000 5400 5800 6200 6600 7000
Engine Load (g/rev) 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300 1.300
5.19.1 Description
The ECM Power Supplies are monitored for the following conditions.
Loss of battery supply when the ignition is on. If the supply is not present for more than a predefined time than a failure will be registered.
A system control relay supplying power to the ECM when it should be off. In this case, only a single occurrence of the fault will illuminate the MIL.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Standby Power (12V) P0560 Monitor of battery back up Loss of battery power to Pin B54 Ignition Switch On 2.56 s 2 Drive
(syrh) Cycles
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
P0560 (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
System Relay Monitor P0687 Monitor for system control Permanent supply of 12V, ECM Ignition On 10.2 s 1 Drive
(syrr) relay permanently on. Battery Voltage > 10.49 V Cycle
Engine Crank Not Requested
Initialization Timer > 0.512 s
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
P0687 (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.20.1 Description
The ECM performs a number of self checks on both the Random Access Memory (RAM), Read only Memory (ROM) and the two central processor
units it uses to control the engine management system. A failure of any of the self-checks will require the ECM to be replaced.
Performing continuous checksum calculations and comparing the results with a stored checksum value checks the ROM. If the calculated checksum
and stored checksum do not match then a ROM failure is registered. The DTC logged will depend upon when the failure was identified.
A RAM test checks the RAM during ECM initialisation and shut down.
The ECM continually monitors itself for illegal internal processor operations, tasks being performing in the wrong order and attempts to write to the
read only memory. If any of these faults are detected, P0606 will be logged.
The ECM uses two processors to perform its calculations, the two processors are continually communicating with each other to transfer critical
information. Internal diagnostic hardware continuously monitors the communication between the two processors for errors. If the level of errors
exceeds a defined limit then a failure is registered.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
ECM P0606 Controller test (cntrlr) CPU operation condition Ignition On 0.040 s 2 Drive
P0604 Initial RAM test (ramint) RAM initialization Ignition On 0.040 s Cycles
P0605 Initial ROM test (romint) ROM check sum Ignition On 0.040 s
P0604 Shut off RAM test (ramsht) RAM test result Main relay Shut off 0.040 s
P0605 Continuous ROM test (romcnt) ROM check sum ECM Running 0.040 s
P0605 ROM exchange test (romexc) ROM check sum ECM Running 0.040 s
P0606 Error capturing instructions Illegal CPU opcode execution ECM Running 0.040 s
(eci)
P0606 Scheduling sequence check Scheduling sequence ECM Running 0.010 s
(ssc)
P0606 Duplication memory fault (dupl) Mirror check result ECM Running 0.160 s
P0605 Detection of write to internal Illegal write to internal ROM ECM Running 0.040 s
ROM (fmemo)
P0606 Watch dog timer fault (wdog) Watch dog timer operation ECM Running 0.040
s
P0607 Sub CPU watch dog (subwdog) Watch dog timer operation ECM Running 0.080 s
P0601 CPU communications (cpucom) Communication time out ECM Running 0.250 s
Fault Codes that disable ECM P0601 disables P0607
Monitoring P0601 (sub) disables P0605 (romcnt_s)
P1603 EEPROM performance (eepr) EEPROM check sum ECM Running immediately 2 Drive
Engine Not starting Cycles
Voltage >= 10.0 V
Fault Codes that disable P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
P1603 (eepr) Monitoring (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
If the park / neutral input is high, and the vehicle is detected as moving with an appropriate engine load, then the high fault timer will be
enabled. When the high fault timer reaches the calibrated time, the high fault flag is set.
Engine Starting
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Crank request signal (exst)
High input P0512 Crank request signal active Crank request signal On Ignition On 0.16 s 2 Drive
while vehicle moving Battery Voltage >= 6.50 V Cycles
Vehicle speed > 12.4 mph
Engine Speed 800 < RPM < 4000 rpm
Engine load > 20.0 g/s
Low input P0512 Crank request not available Crank request signal Off Ignition On 1.28 s 2 Drive
When required Battery Voltage >= 6.56 V Cycles
Ignition key status Update detected
Ignition key position Engine crank
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
P/N Switch (pnsm)
High input P0852 Malfunction during driving Park Neutral Switch during Park/Neutral Transmission type Automatic 4.96 s 2 Drive
driving on Vehicle speed 9.3 <= Vehicle speed <= 162 mph Cycles
Engine Speed 1000 <= RPM <= 4500 rpm
Engine Coolant Temperature >= -30 degC
Engine load >= 0.7 g/rev
Low input P0851 Malfunction during cranking Park Neutral Switch during Park/Neutral Transmission type Automatic 0.64 s 2 Drive
Engine Crank off Crank request = ON Cycles
Starter Relay = ON
Gear position = P/N
Gear lever = P/N
Rationality check P0850 Check between hardwired signal Switch input = P/N Hardwired switch status No faults (P0851 or P0852) 4.96 s 2 Drive
and CAN message And CAN message = not P/N Time elapsed since gearshift > 4.96 s Cycles
Or
Switch input = not P/N
And CAN message = P/N
Fault Codes that disable P0103 P0102 P010D P010C P0238 P0237 P0108 P0107
P0850, P0851 & P0852 P0118 P0117 P0643 P0642 P0116 (hi) P0116 (lo) P0116
(stk) P0125 P0236 P0101 P010B P115D P0106 U0101
U0402 (cs) U0402 (alive) P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub) P0500 (ud) P0500
(qf) P0500 (ud_s) P0500 (qf_s)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Starter Relay (starly)
Short to battery P0617 Rationality, relay drive circuit Start relay drive ON Ignition On for at least 0.080 s 0.48 s 2 Drive
Short to battery Starter relay low side feedback On Cycles
Battery Voltage > 7.0 V
Open circuit P0615 Rationality, relay drive circuit Start relay drive OFF Ignition On for at least 0.080 s 5.12 s 2 Drive
Open circuit Starter relay high side feedback On Cycles
Starter relay low side feedback Off
Battery Voltage > 7.0 V
Short to ground P0616 Rationality, relay drive circuit Start relay drive OFF Ignition On for at least 0.080 s 5.12 s 2 Drive
Short to ground Starter relay high side feedback Off Cycles
Battery Voltage > 7.0 V
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.22.1 Description
During ignition on conditions the voltages from the two-track accelerator pedal position sensor are monitored. Both tracks are independently
monitored for out of range high and low conditions.
If the input voltage to the ECM stays above a defined value for longer than a calibratable period, the high input failure judgment is made. If the
input voltage to the ECM stays below a defined value for longer than a calibratable period, the low input failure judgment is made.
Additionally the signals from the two tracks are compared. If the angle obtained from sensor 1 differs from the angle obtained from sensor 2
by more than a defined amount for longer than a calibration period a range / performance failure judgment is made.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
LR4 and Range Rover Sport
Accelerator Position Sensor 1
(apsad) High fault P2123 Sensor monitored against an Sensor position > 93.5% Ignition On 2 Drive
upper or lower threshold, if the And Accumulated difference > 8.9% Battery voltage >= 6 V Cycles
Low fault P2122 reading exceeds either Sensor position < 13.5%
threshold, then a portion of the And Accumulated difference > 19.4%
Accelerator Position Sensor 2 difference to the threshold is
(apsad2) High fault P2128 accumulated and a fault set Sensor position > 96.0%
when this accumulated value And Accumulated difference > 5.1%
Low fault P2127 exceeds a second threshold Sensor position < 12.0%
And Accumulated difference > 17.1%
Range Rover
Accelerator Position Sensor 1
(apsad) High fault P2123 Sensor monitored against an Sensor position > 92.1% Ignition On 2 Drive
upper or lower threshold, if the And Accumulated difference > 7.1% Battery voltage >= 6 V Cycles
Low fault P2122 reading exceeds either Sensor position < 11.9%
threshold, then a portion of the And Accumulated difference > 13.4%
Accelerator Position Sensor 2 difference to the threshold is
(apsad2) High fault P2128 accumulated and a fault set Sensor position > 95.2%
when this accumulated value And Accumulated difference >19.8%
Low fault P2127 exceeds a second threshold Sensor position < 10.2%
And Accumulated difference > 6.3%
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.23.1 Description
The Electronic Throttle Interface consists of two Pulse Width Modulation (PWM) output drives to control the throttle blade position, with two analogue
signals for throttle position feedback. The two position signals have positive linear characteristics. There are various diagnostic checks carried out on
the throttle control system, all of which result in the illumination of the MIL if a fault is detected. The main checks are described below:
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Throttle difference P2119 Difference fault between actual Accumulated absolute deviation > 42 % Ignition On 2 Drive
(thrdif) throttle position and requested Or Battery voltage 6 <= Vbat <= 18 V Cycles
Accumulation of actual throttle > 42 % Throttle adaption Throttle offset adaption complete
position greater than requested For large deviation
position
Fault Codes that disable P0601 P2118 P2119 (cnt) P0122
Throttle Difference P0123 P0222 P0223 P2135
Monitoring
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Throttle Assembly P2118 Throttle duty 100% continuous Time > 2.08 s Ignition On 2.08 s 2 Drive
Fault No MLT fault flag MLT not set in main or sub Cycles
(thrdty)
Fault Codes that disable P0601 (sub)
P2118
(thrcnt) P2119 Over current fault detected by Current time > 0.16 s Ignition On 0.16 s 2 Drive
throttle driver hardware No MLT fault flag MLT not set in main or sub Cycles
Throttle Body Spring P2119 Limp home spring and throttle For Return spring, throttle angle < 2.18 % Battery voltage >= 6 V N/A 2 Drive
Fault return spring functional check For Limp Home spring, throttle < 0.70 % Over current fault flag Not set Cycles
(thrspg) at power down angle Throttle offset adaption Complete
Fault Codes that disable P0601 (sub) P2135 (dif) P2135
Throttle Body spring (dif_s) P2135
monitoring
Throttle position
sensor 1
(tps1) High fault P0123 Sensor monitored against an Sensor position > 4.50 V Ignition On 2 Drive
upper or lower threshold, if the And Accumulated difference > 2.05 V Battery voltage >= 6 V Cycles
Low fault P0122 reading exceeds either Sensor position < 0.43 V
threshold, then a portion of the And Accumulated difference > 1.21 V
Throttle position difference to the threshold is
sensor 2
(tps2) High fault P0223 accumulated and a fault set Sensor position > 4.66 V
when this accumulated value And Accumulated difference > 1.09 V
Low fault P0222 exceeds a second threshold Sensor position < 1.31 V
And Accumulated difference > 6.49 V
Fault Codes that disable P0601 (sub)
monitoring for throttle
position sensor electrical
faults
Both Throttle P2135 Sets if both throttle postion (P0122 or P0123) Detected 0.002 s Non-
Position sensors have an electrical fault And MIL
Sensors faulty (already
present (P0222 or P0223) Detected set
(tpsb) for single
Fault)
Fault Codes that disable P0601 (sub)
monitoring for both throttle
position sensors faulty
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
TPS1 4x AMP P0121 4x amplified throttle position Accumulated deviation > 5.68 V TPS1 voltage 0.298 V < TPS1 < 1.152 V 5.23.1.1.1.1.1.1.1
2 Drive
(tp4dif) sensor fault functional check Battery voltage 6 V < Vbat < 18 V Cycles
Ignition On
Throttle position P2135 Difference fault between throttle Accumulated throttle angle > 210 % Ignition On 2 Drive
sensor Difference sensor 1 and 2 difference Throttle offset adaption complete Cycles
(tpsdif)
Fault Codes that disable P0601 P0601 (sub) P0122 P0123
throttle position difference P0222 P0223
monitoring
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.24.1 Description
The Engine Torque is monitored to ensure that there is no large unintended torque available which is greater than that requested by the driver.
Torque Monitoring
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Engine Torque Fault P061A Calculates air consumption from Accumulated error value > 250 Nm Engine state Running No *
(trq_fl) fuel used by the engine and
compares with requested torque
value
Fault Codes that disable P0601 P0601 (sub) P2119 (dif) P2119 (dif_h) P2118
Torque Monitoring P2119 (cnt) P
MIL Request due to P2105 Safety monitoring fault present Fuel cut off has been Time after ignition on or crank >= 0.512 s 0.640 s 2 Drive
a fuel cut performed due to the presence Voltage supply >= 10.5 V Cycles
(mile) of a safety related fault
Fault Codes that disable None
P2105
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.25.1 Description
Two checks are performed on the vehicle speed signal. The first check monitors for the loss of any of the ABS wheel speed sensor signals. If any of
the signals are not available for greater than a predefined time a failure is registered. The second check compares the vehicle speed transmitted by
the ABS control module and the vehicle speed calculated by the ECM (using data from the transmission output shaft speed sensor). If the transmitted
and calculated speeds do not match for greater than a predefined time a failure is registered.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Vehicle Speed Input P0500 CAN transmissions from ABS not updating speed 0.52 s 2 Drive
(vspd1_ ud) ABS monitored signal Cycles
Vehicle Speed Input P0500 Monitor of Quality Factor Speed signal Quality Factor <1 0.40 s 2 Drive
(vspd1_ qf) information received from ABS Or <> 3 Cycles
Vehicle Speed Sensor P0501 Comparison of ABS Difference between ABS > 16.2 mph Engine speed >= 500 rpm 0.80 s 2 Drive
Range Performance vehicle speed and Vehicle Speed and calculated Battery Voltage >= 10.0 V Cycles
(vspddif) calculated speed from the Vehicle Speed Time after engine start >= 2.0 s
transmission output shaft Ignition On
speed Fault Codes that disable P0500 (ud) P0500 (qf) P0500
P0501 (ud_s) P0500 (qf_s) P0601 (sub)
P0721
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.26.1 Description
The fuel injector monitor operates continuously. Detection of an open or short circuit condition of each injector is possible by comparing the actual
injection signal with a target injection signal. The actual injection signal is derived from the change in injector voltage when the injector is turned off
and the target injection signal is derived from an injection set flag.
A normal judgment is made when the injector voltage moves from the on to the off position i.e. on the signal edge. If the target signal and the actual
signal are both set to one, a normal judgement is made. This process is repeated for each injector in firing order. A failure judgment is made when no
injector signal edge is detected i.e. no change in voltage but the injector has been triggered.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cylinder 1 P02EE Power supply booster voltage 3.0 s 2 Drive
Cylinder 2 P02EF error Cycles
Cylinder 3 P02F0 (injc_bv)
Cylinder 4 P02F1
Cylinder 5 P02F2
Cylinder 6 P02F3
Cylinder 7 P02F4
Cylinder 8 P02F5
Fault Codes that disable P02EE (hl) P02EF (hl) P02F0 (hl) P02F1 (hl) P02F2 (hl)
power supply monitoring P02F3 (hl) P02F4 (hl) P02F5 (hl) P0261 (lb) P0264 (lb)
P0267 (lb) P0270 (lb) P0273 (lb) P0276 (lb) P0279 (lb)
P0282 (lb) P0261 (lg) P0264 (lg) P0267 (lg) P0270 (lg)
P0273 (lg) P0276 (lg) P0279 (lg) P0282 (lg) P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cylinder 1 P02EE Injector high side and low side 2.52 s 2 Drive
Cylinder 2 P02EF short circuit Cycles
Cylinder 3 P02F0 (injc_hl)
Cylinder 4 P02F1
Cylinder 5 P02F2
Cylinder 6 P02F3
Cylinder 7 P02F4
Cylinder 8 P02F5
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cylinder 1 P0261 Injector low side 2.52 s 2 Drive
Cylinder 2 P0264 short circuit to ground Cycles
Cylinder 3 P0267 (injc_lg)
Cylinder 4 P0270
Cylinder 5 P0273
Cylinder 6 P0276
Cylinder 7 P0279
Cylinder 8 P0282
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
injector circuit monitoring (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.27.1 Description
The ignition amplifier monitor is very similar in operation to the injectors monitor, albeit checking primary coil current instead of voltage.
Internal hardware detection circuits in the ECM, monitor the individual and group outputs to the coil primaries for incorrect current conditions. If a
failure is repeatedly noted for a predefined number of times then a failure of the appropriate coil or group circuit is registered. If the failure is
registered on 2 drive cycles the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cylinder 1 malfunction P0351 Open Circuit Engine not starting 1.52 s 2 Drive
Cylinder 2 malfunction P0352 (arigt_op) Cycles
Cylinder 3 malfunction P0353
Cylinder 4 malfunction P0354
Cylinder 5 malfunction P0355
Cylinder 6 malfunction P0356
Cylinder 7 malfunction P0357
Cylinder 8 malfunction P0358
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Cylinder 1 malfunction P2301 Short circuit to battery 1.52 s 2 Drive
Cylinder 2 malfunction P2304 (arigt_bs) Cycles
Cylinder 3 malfunction P2307
Cylinder 4 malfunction P2310
Cylinder 5 malfunction P2313
Cylinder 6 malfunction P2316
Cylinder 7 malfunction P2319
Cylinder 8 malfunction P2322
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
ignition circuit monitoring (ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0600
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
The camshaft position sensors are used to monitor the actual level of camshaft advance / retard against the target level. If the target and
actual values do not match for a calibratable period of time a failure is registered. If a failure is registered on 2 drive cycles, the MIL will
illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Circuit continuity
Bank A intake P0010 Open circuit 1.52 s 2 Drive
(arvtia)
P2088 Short to ground Cycles
P2089 Short to battery
Bank B intake P0020 Open circuit
(arvtib) P2092 Short to ground
P2093 Short to battery
Bank A exhaust P0013 Open circuit
(arvtea) P2090 Short to ground
P2091 Short to battery
Bank B exhaust P0023 Open circuit
(arvteb) P2094 Short to ground
P2095 Short to battery
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
Variable Valve Timing (ramint_s) P0605 (romint) P0605 (romint_s) P0604
Circuit Monitoring (ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0600
Range/Performance High
Bank A intake P0026 Actual Cam position compared Difference too great >= 10.0 crank Engine Speed >= 500 rpm 10 s 2 Drive
Bank B intake P0028 to target position degrees Target angle change <= 1 degCA/80ms Cycles
Range/Performance Low Engine Coolant Temperature -10 <= T <=120 degC
Bank A intake P0026 Actual Cam position compared Difference too low <= 10.0 crank Battery voltage delta <= 20 V/80ms
Bank B intake P0028 to target position degrees Battery voltage change during <= 20 V
(vvtm) diagnostic
VVT Operating mode (NA Engine) 1 <= mode no. <= 4
VVT Operating mode (SC Engine) 3 <= mode no. <= 4
VVT Adaptions held (NA Engine) >= 0.5 s
VVT Adaptions held (SC Engine) >= 30 s
Speed threshold - VVT Speed >0
(Threshold = VVTSPDMIN x
VVTCOMP, see table for
values)
Entry conditions true for >= See table
Fault Codes that disable Bank A P0113 P0112 P00AD P00AC P007D P007C P0118
intake Variable Valve Timing P0117 P0643 P0642 P0010 P2088 P2089 P0111
Monitoring (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk)
P0125 P0335 (_1) P0335 (_2) P0336 P0340 (strt)
P0340 (run) P0341 P0335 (_1s) P0335 (_2s) P0336
(sub) P0340 (strt_s) P0340 (sub) P0341 (sub) P0011
P0012 P0016 P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint)
P0605 (romint_s) P0604 (ramsht) P0604 (ramsht_s)
P0605 (romcnt) P0605 (romcnt_s) P0605 (romexc)
P0605 (romexc_s) P0606 (eci) P0606 (eci_s) P0606
(ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog)
P0606 (wdog_s) P0607 P0601 P0601 (sub)
Fault Codes that disable Bank B P0113 P0112 P00AD P00AC P007D P007C P0118
intake Variable Valve Timing P0117 P0643 P0642 P0020 P2092 P2093 P0111
Monitoring (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk)
P0125 P0335 (_1) P0335 (_2) P0336 P0345 (strt)
P0345 (run) P0346 P0335 (_1s) P0335 (_2s) P0336
(sub) P0345 (strt_s) P0345 (run_s) P0346 (sub)
P0021 P0022 P0018 P1603 P0606 (cnt) P0606
(cnt_s) P0604 (ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604 (ramsht) P0604
(ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606
(eci_s) P0606 (ssc) P0606 (ssc_s) P0606 (dupl)
P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Range/Performance High
Bank A exhaust P0027 Actual Cam position compared Difference too great >= 10.0 crank Engine Speed >= 500 rpm 10 s 2 Drive
Bank B exhaust P0029 to target position degrees Target angle change <= 1 degCA/80ms Cycles
Range/Performance Low Engine Coolant Temperature -10 <= T <=120 degC
Bank A exhaust P0027 Actual Cam position compared Difference too low <= 10.0 crank Battery voltage delta <= 20 V/80ms
Bank B exhaust P0029 to target position degrees Battery voltage change during <= 20 V
(vtme) diagnostic
VVT Operating mode 3 <= mode no. <= 4
VVT Adaptions held >= 30 s
Speed threshold - VVT Speed >0
(Threshold = VVTSPDMIN x
VVTCOMP, see table for
values)
Entry conditions true for >= See table
Fault Codes that disable P0113 P0112 P00AD P00AC P007D P007C P0118
Bank A exhaust Variable P0117 P0643 P0642 P0013 P2090 P2091 P0111 (hi)
Valve Timing Monitoring P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo) P00AB
(stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0335
(_1) P0335 (_2) P0336 P0365 (run) P0366 P0335 (_1s)
P0335 (_2s) P0336 (sub) P0365 (run_s) P0366 (sub)
P0014 P0015 P0017 P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0113 P0112 P00AD P00AC P007D P007C P0118
Bank B exhaust Variable P0117 P0643 P0642 P0023 P2094 P2095 P0111 (hi)
Valve Timing Monitoring P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo) P00AB
(stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125 P0335
(_1) P0335 (_2) P0336 P0390 (run) P0391 P0335 (_1s)
P0335 (_2s) P0336 (sub) P0390 (run_s) P0391 (sub)
P0024 P0025 P0019 P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Target Error (deg CA) -60.00 -5.00 -5.00 0.00 5.00 5.00 60.00
Minimum Speed -65.00 -10.00 0.00 0.00 0.00 10.00 65.00
Entry Condition for Variable Valve Timing Position Error Diagnostic (MBD_VVTM_VVTCOMP & MBD_VTME_VVTCOMP) – DTCs P0026, P0027, P0028 and
P0029
Oil Control Valve Temperature (degC)
Minimum speed compensation factor
-0.001 25.002 49.996 100.001 119.996
6500 0.0000 0.2014 0.6653 0.2014 0.0000
1000 0.0000 0.5341 1.0010 0.4669 0.1343
Engine Speed (rpm) 1500 0.0000 0.7324 1.1993 0.6653 0.3998
2000 0.0000 0.7324 1.3336 0.9338 0.6653
3500 0.0000 0.7324 1.5991 1.1993 0.8667
Entry Condition Timer for Variable Valve Timing Position Error Diagnostic (MBD_VVTM_DELAYTIMC & MBD_VTME_DELAYTIMC) – DTCs P0026, P0027,
P0028 and P0029
Engine Coolant Temperature (degC)
Delay Time (s)
-40.00 -20.00 19.38 20.00 40.00 79.38 80.00 100.00
1000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
2000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
3000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
4000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
Engine Speed (rpm)
5000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
6000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
7000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
8000 5.040 5.040 5.040 2.000 2.000 2.000 1.040 1.040
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Invalid Output Shaft Speed U0402 CAN signal 'error marker' TCM Unable to Transmit Valid Ignition switch on time >= 5.0 s 5.0 s 2 Drive
Signal received from TCM Data Cycles
(cnem_tsp)
Invalid Wheel Speed C0031 CAN signal 'error marker' ABS Unable to Transmit Valid Ignition switch on time >= 5.0s 5.0 s 2 Drive
(Front
Left) Signal received from ABS Data Cycles
(cnem_sfl)
Invalid Wheel Speed C0034 CAN signal 'error marker' ABS Unable to Transmit Valid Ignition switch on time >= 5.0 s 5.0 s 2 Drive
(Front
Right) Signal received from ABS Data Cycles
(cnem_sfr)
Invalid Wheel Speed (Rear C0037 CAN signal 'error marker' ABS Unable to Transmit Valid Ignition switch on time >= 5.0 s 5.0 s 2 Drive
Left) Signal received from ABS Data Cycles
(cnem_srl)
Invalid Wheel Speed (Rear C003A CAN signal 'error marker' ABS Unable to Transmit Valid Ignition switch on time >= 5.0 s 5.0 s 2 Drive
Right) Signal received from ABS Data Cycles
(cnem_srr)
Fault Codes that disable None
CAN error marker
monitoring
Control Module Vehicle P0610 Rationality between the ECM ECM EEPROM stored vehicle Ignition Switch On 2.4 s 1 Drive
Options Error stored Car Configuration File options data does not match the Cycle
(vosm_ccf) (CCF) and the IPK stored CCF IPK vehicle options data
transmitted on the CAN bus. Fault Codes that disable U0300 U0155 P1603 P0606 (cnt) P0606 (cnt_s) P0604
P0610 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Lost Communication With U0121 CAN signals missing from ABS ABS CAN ID not received. No ID. Ignition On 2.56 s 2 Drive
Anti-Lock Brake System module. Battery Voltage > 10.49 V Cycles
(ABS) Control Module Engine Crank Not Requested
(cana) Initialization Timer > 0.512 s
Lost Communication With U0101 CAN signals missing from TCM CAN ID not received. No ID. Ignition On 2.56 s 2 Drive
(TCM) Transmission TCM module Battery Voltage > 10.49 V Cycles
Control Module Engine Crank Not Requested
(cant) Initialization Timer > 0.512 s
Lost Communication With U0155 CAN signals missing from IPC IPC CAN ID not received. No ID. Ignition On 2.56 s 1 Drive
Instrument Panel Cluster module. Battery Voltage > 10.49 V Cycle
(IPC) Control Module Engine Crank Not Requested (request
(cani) Initialization Timer > 0.512 s may not
succeed if
Fault Codes that disable None link down)
U0155
Lost Communication With U0140 CAN signals missing from BC BCM CAN ID not received. No ID. Ignition On 2.56 s 1 Drive
(BCM) Body Control module. Battery Voltage > 10.49 V Cycle
Module Engine Crank Not Requested (request
(bcm) Initialization Timer > 0.512 s may not
succeed if
link down)
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
U0140 (ramint_s) P0605 (romint) P0605 (romint_s) P0604 (ramsht)
P0604 (ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
CAN Signal Configuration U0300 Comparison of stored and Stored and transmitted Ignition On 7.0 s 1 Drive
Check transmitted identifiers identifiers Battery Voltage > 10.49 V Cycle
(scfg) are not equal Engine Crank Not Requested
Initialization Timer > 0.512 s
Fault Codes that disable P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
U0300 (ramint_s) P0605 (romint) P0605 (romint_s) P0604 (ramsht)
P0604 (ramsht_s) P0605 (romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606 (eci) P0606 (eci_s)
P0606 (ssc) P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s)
P0605 (fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Checksum correlation U0402 Calculated checksum compared Calculated checksum not equal 66 Battery Voltage > 10.5 V 1.34 s 2 Drive
to the transmitted checksum for to received checksum more times Ignition on for > 5.0 s Cycles
the following CAN messages: than Or Ignition off and Keep Alive request
(checked every 0.020 s) received from the TCM
Error mark check U0402 The counter value from the Error value received more 154 3.1 s 2 Drive
TCM is in error than times Cycles
(checked every 0.020 s)
Stuck check U0402 The counter value from the Counter unchanged for more 154 3.1 s 2 Drive
TCM has not changed Than times Cycles
(checked every 0.020 s)
Large skip check U0402 The counter value from the Error value received more 154 3.1 s 2 Drive
TCM is in range, but Than times Cycles
the difference between the (checked every 0.020 s)
previous value plus 0Fh - the
current value and 0Fh, is
greater than 3
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
The output of the Fuel Level Sensor is monitored to ensure it changes as fuel is used. The fuel level is continuously monitored. The fuel level should
change by more than a set percentage before a calculated amount of fuel is used. This process will operate through cumulative trips if necessary.
Once the fuel level changes by the amount required the process is reset and starts again. If the fuel used threshold is reached before the fuel level
changes by the required percentage, a temporary fault will be stored. A second occurrence will cause a permanent fault to be stored, however the
MIL will not illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Range / performance P0461 Rationality v fuel used Fuel level change <3% Fuel used (calc.) >= 20.0 l Dependent No
(flsr) Time since engine start >= 0.0 s upon (default
Battery voltage 10.5 <= Vbatt <= 16 V drive cycle condition
enables
other
monitors)
Noisy P0461 The fuel level change is Raw fuel level signal integral >= 9.0 % Time since engine start >= 0.0 s 10.24s No
calculated every 0.320 s. 9.0% Battery voltage 10.5 <= Ubatt <=16 V (default
is subtracted from this change Vehicle speed = 0 mph for >= 9.92 s condition
value and if the result is enables
greater than 0, then it is added other
to an integral value. After monitors)
0.320s of data collection, the
integral value is compared to a
Fault Codes that disable U0155
fault Threshold.
P0461
If the integral is >= to this
threshold, then a fault is set.
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
5.31.1 Description
The engine off timer monitor compares the ECM's own internal counter to the change in the engine coolant temperature since the ignition was turned
off. If the two differ by more than a calibratable period of time a failure is registered. If the fault occurs on 2 drive cycles the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Signal availability P2610 Timer signal Not received within 2.240 s ECT at end of last trip -80.0 < T < 119.4 degC 2 Drive
(eotm_mis) Engine off time available Cycles
Engine Off Timer Range P2610 Rationality with respect to ECT Engine off time See Estimated engine off time < 28800 s
Performance Change since key off Counter outside limits table Transport mode Not selected
(eotm_hi/lo) Pre-heating not detected:
< 6.25 degC within 9.9 s of
Average ECT - ECT
engine
start
Fault Codes that disable P0118 P0117 P0643 P0642 P0073 P0072 P0116 (hi)
P2610 P0116 (lo) P0116 (stk) P0071 (hi) P0071 (lo) U0155
P1603 P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
Estimated Engine off Time (minutes) 0 32 64 96 128 160 192 224 256 288 320 352 384 416 448 480
Fault Limit (minutes) 0 1 2 3 4 7 12 22 35 57 80 101 121 136 146 146
Engine Off Time Monitor (TBD_EOTM_UPPERLIMIT) – Upper Limit for DTC P2610
Estimated Engine off Time (minutes) 0 32 64 96 128 160 192 224 256 288 320 352 384 416 448 480
Fault Limit (minutes) 43 182 271 338 419 481 584 678 796 912 1036 1166 1338 1514 1714 65535
5.32.1 Description
The ambient air temperature (AAT) signal is supplied by the instrument pack. The ECM performs two diagnostic checks on the signal.
Rationality Check
The signal is checked for rationality against the intake air temperature sensor. When the entry conditions have been met the difference between the
two sensors is calculated. If the difference is greater than 30 °C for a predefined period of time th en a failure is registered. If the problem occurs on
two drive cycles then the MIL will illuminate. The DTC which is logged depends on whether the ambient air temperature sensor signal is lower or
higher than the intake air temperature sensor.
Range/ Performance
If the instrument pack detects a failure in the ambient air temperature sensor it will output a constant default value. The range / performance check
monitors for a stuck signal at this default value for longer than a predefined period. When this occurs a failure is registered. If the problem occurs on
two drive cycles then the MIL will illuminate.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
AAT Sensor Stuck High P0071 Rationality with IAT AAT Average - > see ECT at engine off - ECT at > 50 degC 2 Drive
AAT Sensor Stuck Low P0071 (maximum of LH IAT average, table Engine start Cycles
(ambr) RH IAT average & ECT average) Difference between < 10 degC
Or (maximum of RH IAT
(minimum of LH IAT average, > 20 degC average, LH IAT average &
RH IAT average & ECT average- ECT average) and (minimum
Ambient Temp Average) of RH IAT average, LH IAT
average & ECT average)
Engine off time >= 28800 s
Block Heater Not detected (see table for
conditions)
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Fault Codes that disable P0113 P0112 P00AD P00AC P007D P007C P0118
P0071 P0117 P0643 P0642 P0073 P0072 P007B (ris) P007B
(dwn) P007B (scf) P0111 (hi) P0111 (lo) P0111 (stk)
P00AB (hi) P00AB (lo) P00AB (stk) P2610 P2610 (mis)
P2610 (hi) P2610 (lo) P1603 P0606 (cnt) P0606 (cnt_s)
P0604 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
AAT Sensor External Signal P0072 Circuit low Sensor voltage (< 0.11 V) > 75 degC Ignition on 2.21 s 2 Drive
(hlamb) P0073 Circuit high Sensor voltage (> 4.94 V) < -40 degC Cycles
Fault Codes that disable P0643 P0642 P1603 P0606 (cnt) P0606 (cnt_s) P0604
P0072 & P0073 (ramint) P0604 (ramint_s) P0605 (romint) P0605
(romint_s) P0604 (ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605 (romexc) P0605
(romexc_s) P0606 (eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606 (dupl_s) P0605
(fmemo) P0605 (fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
The air temperatures pre- and post-supercharger are monitored to ensure that the difference remains within the expected range.
Component/ Fault Monitoring Strategy Malfunction Threshold Secondary Enable Time MIL
System Code Description Criteria value Parameter Conditions Required
Supercharger Intercooler Water Pump
(supercharged engine only)
Pump performance P2601 Rationality Difference between post and pre- > 55 to 90 Intake Air Temperature -20 <= IAT <= 80 degC 90 s 2 Drive
(wtp) supercharger air temperatures degC Engine Coolant Temperature 65 <= ECT <= 119.4 degC Cycles
for > 30.7 s Engine Oil Temperature 40 <= EOT <= 140 degC
19 <= Vehicle Speed <= 155
Vehicle speed
mph for at least 59s
(this timer resets if:
Engine Speed < 500 or > 6000 rpm
Mass Airflow < 3.0 or > 350 g/s
Vehicle speed > 155 or < 19 mph for > 59 s)
Fault Codes that disable P0113 P0112 P00AD P00AC P007D P007C P0103
P2601 P0102 P010D P010C P0118 P0117 P0643 P0642
P0073 P0072 P007B (ris) P007B (dwn) P007B (scf)
P0111 (hi) P0111 (lo) P0111 (stk) P00AB (hi) P00AB (lo)
P00AB (stk) P0116 (hi) P0116 (lo) P0116 (stk) P0125
P0071 (hi) P0071 (lo) P0101 P010B P115D P1603
P0606 (cnt) P0606 (cnt_s) P0604 (ramint) P0604
(ramint_s) P0605 (romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605 (romcnt) P0605
(romcnt_s) P0605 (romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc) P0606 (ssc_s) P0606
(dupl) P0606 (dupl_s) P0605 (fmemo) P0605 (fmemo_s)
P0606 (wdog) P0606 (wdog_s) P0607 P0601 P0601
(sub) P0500 (ud) P0500 (qf) P0500 (ud_s) P0500 (qf_s)
If the above table does not include details of the following enabling conditions: - intake air temperature, engine coolant temperature, vehicle speed
range, and time after engine start-up then the state of these parameters has no influence upon the execution of the monitor.
In common with other off-road vehicles, all Land Rovers except the LR2 and Range Rover Evoque are equipped with a 2-speed transfer box.
This provides a high range for use in normal conditions and a low range for use during extreme off-road driving.
During off-road driving the vehicle may be operated for extended periods at very low engine speeds and high loads. The vehicle may be
required to wade through water of varying depth and temperature. There are often sudden shocks to the drive-train due to large rocks and
similar objects.
In general, off-road operation can be far more varied and less predictable than normal, on-road driving.
Since OBD is primarily designed for passenger cars and passenger car usage patterns, Land Rover have made the engagement of high
range an enablement criteria for the following OBD monitors in order to ensure reliable functioning of the OBD system:
• Catalyst Monitoring
There is a rationality check for transfer box range engagement (DTC P2772) and this is described below.
Fault Codes that disable P2772 U0300 U0121 U0101 U0402 (tsp)
C0031 C0034 C0037 C003A U0402
(cs) U0402 (alive) P1603 P0610
P0606 (cnt) P0606 (cnt_s) P0604
(ramint) P0604 (ramint_s) P0605
(romint) P0605 (romint_s) P0604
(ramsht) P0604 (ramsht_s) P0605
(romcnt) P0605 (romcnt_s) P0605
(romexc) P0605 (romexc_s) P0606
(eci) P0606 (eci_s) P0606 (ssc)
P0606 (ssc_s) P0606 (dupl) P0606
(dupl_s) P0605 (fmemo) P0605
(fmemo_s) P0606 (wdog) P0606
(wdog_s) P0607 P0601 P0601 (sub)
P0501 P0501 (sub)