OBD-2 CODE Setting Criteria or How the CODE was set: Although the Generic OBD-2 code definitions are the same for all manufacturers; the code setting criteria (how the code is set) is different for each auto maker. SUBARU Motors P0100 - Mass Airflow Sensor Circuit Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a MAF signal of less than 0.3v (1.3 gm/s) or more than 5.Ov (250 gm/s). P0101 - Mass Airflow Sensor Range/Performance Code Setting Criteria: - No ECM codes set, engine speed over 1500 rpm, VSS signal over 3 mph, then engine returned to idle speed, then test started and the ECM detected that the MAF sensor input was too low or high. P0102 - Mass Airflow Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a MAF signal of less than 0.3v (1.3 gm/s) for 1 second. P0103 - Mass Airflow Sensor Circuit High Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a MAF signal of more than 5.Ov (250 gm/s) for 1 second. P0105 - Pressure Sensor Circuit Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a Pressure sensor signal of under 0 kPa (shorted) or over 140 kPa (open). P0106 - Pressure Sensor Circuit Range/Performance Code Setting Criteria: - P0105 not set, engine speed over 1500 rpm, VSS over 3 mph, then back to idle speed, the ECM detected an out-of-range sensor signal. P0107 - Pressure Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an Absolute Pressure sensor signal of less than 0.2v. P0108 - Pressure Sensor Circuit High Input1 Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an Absolute Pressure sensor signal of more than 4.5v. P0115 - ECT Sensor Circuit Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an ECT sensor input of under -40°F (open) or over 300°F (shorted). P0116 - ECT Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an ECT sensor input of under -402F (open) for 1 second. P0117 - ECT Sensor Circuit High Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an ECT sensor input of more than over 300°F (shorted) for 1 second. P0117 - ECT Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an ECT sensor input of under -40°F (open) for 1 second. P0118 - ECT Sensor Circuit High Input Code Setting Criteria: - Key on or engine running, then test started and ECM detected an ECT sensor input of more than over 300°F (shorted) for 1 second. P0120 TP Sensor Circuit Code Setting Criteria: - Key on, then test started and the ECM detected a TP sensor input of under 0.1v with the throttle closed or a TP sensor input over 4.9v at any time. P0121 - TP Sensor Circuit Range/Performance Code Setting Criteria: - No TPS codes set, engine speed over 1500 rpm, VSS signal over 3 mph, then back to idle, and ECM detected an out-of-range sensor signal. P0122 - TP Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a TP sensor input of more than 0.1v with the throttle closed for 1 second. P0123 - TP Sensor Circuit High Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a TP sensor input of under 4.9v with the throttle closed for 1 second. P0125 - Insufficient Coolant Temperature For Closed Loop Code Setting Criteria: - No ECT codes set, engine warmup finished, engine speed over 1500 rpm, VSS from 25-40 mph, then test started and the ECM detected that the ECT signal did not reach closed loop status. P0130 - H02S-11 Circuit (Bank 1 Sensor 1) Code Setting Criteria: - Engine running in closed loop at idle, then test started and ECM detected the H02S-12 signal remained at 400 mVolts or higher, or at 500 mVolts or less. P0131 - A/F Sensor Circuit Low Input (Bank 1 Sensor 1) Code Setting Criteria: - Engine running in closed loop at idle, then test started and ECM detected the front A/F sensor input remained too low for over 6 seconds. P0132 - A/F Sensor Circuit High Input (Bank 1 Sensor 1) Code Setting Criteria: - Engine running in closed loop at idle, then test started and ECM detected the front A/F sensor input remained too high for over 6 seconds. P0133 - A/F Sensor Slow Response (Bank 1 Sensor 1) Code Setting Criteria: - No H02S codes set ECT input over 170°F, VSS input over 20 mph for 1 minute, then the engine is returned to idle speed, then test started and the ECM detected the front A/F sensor input did not exhibit enough rich to lean and lean to rich switches in 6 seconds. P0133 - H02S-11 Slow Response (Bank 1 Sensor 1) Code Setting Criteria: - No H02S codes set ECT input over 170°F, VSS input over 20 mph for 1 minute, then the engine is returned to idle speed, then test started and the ECM detected that the H02S-11 signal did not exhibit enough rich to lean and lean to rich switches in 6 seconds. P0135 - H02S-11 Heater Circuit (Bank 1 Sensor 1) Code Setting Criteria: - No H02S codes set, engine at idle speed, then test started and the ECM detected the H02S-11 heater current was >2 amps or <0.2 amps. P0136 - H02S-12 Circuit (Bank 1 Sensor 2) Code Setting Criteria: - Engine running in closed loop at idle, then test started and ECM detected the H02S-12 signal remained at 400 mVolts or higher, or at 500 mVolts or less. P0139 - H02S-12 Slow Response (Bank 1 Sensor 2) Code Setting Criteria: - No H02S codes set ECT input over 1702F, VSS input over 20 mph for 1 minute, then the engine is returned to idle speed, then test started and the ECM detected that the H02S-12 signal did not exhibit enough rich to lean and lean to rich switches in 6 seconds. P0141 - H02S-12 Heater Circuit (Bank 1 Sensor 2) Code Setting Criteria: - No H02S codes set, engine at idle speed, then test started and the ECM detected the H02S-12 heater current was >2 amps or <0.2 amps. P0142 - H02S-21 Circuit (Bank 2 Sensor 1) Code Setting Criteria: - Engine running in closed loop at idle, then test started and ECM detected the H02S-21 signal remained at 400 mVolts or higher, or at 500 mVolts or less. P0145 - H02S-21 Slow Response (Bank 2 Sensor 1) Code Setting Criteria: - No H02S codes set ECT input over 170°F, VSS input over 20 mph for 1 minute, then the engine is returned to idle speed, then test started and the ECM detected that the H02S-21 signal did not exhibit enough rich to lean and lean to rich switches in 6 seconds. P0147 - H02S-21 Heater Circuit (Bank 2 Sensor 1) Code Setting Criteria: - No H02S codes set, engine at idle speed, then test started and the ECM detected the H02S-21 heater current was >2 amps or <0.2 amps. P0170 - Fuel System Too Rich or Too Lean (Bank 1) Code Setting Criteria: - No ECM codes set, engine running in closed loop at over 3 mph, then test started and the ECM detected that the amount of rich or lean fuel trim correction was more than a threshold stored in memory. P0171 - Fuel System Too Rich (Bank 1) Code Setting Criteria: - No ECM codes set, engine running in closed loop at over 3 mph, then test started and the ECM detected that the amount of rich air/fuel trim correction was more than a threshold stored in memory. P0172 - Fuel System Too Lean (Bank 1) Code Setting Criteria: - No ECM codes set, engine running at over 3 mph, and the ECM detected the amount of lean A/F trim correction was more than a stored amount. P0180 - Fuel Temperature Sensor 'A' Circuit Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a Fuel Temp. 'A' signal of under -40°F (open) or over 300°F (shorted). P0181 - Fuel Temperature Sensor 'A' Range/Performance Code Setting Criteria: - P0180 not set, engine running in closed loop, VSS signal over 3 mph, then test started and the ECM detected that the Fuel Temperature Sensor 'A' signal was out-of-range or not plausible. P0182 - Fuel Temperature Sensor Low Input Code Setting Criteria: - Key on or engine running, VSS signal over 3 mph, then test started and the ECM detected that the Fuel Temperature Sensor 'A' input was over 3002F (circuit may be shorted to ground). P0183 - Fuel Temperature Sensor High Input Code Setting Criteria: - Key on or engine running, VSS signal over 3 mph, then test started and the ECM detected that the Fuel Temperature Sensor 'A' input was shorted to power. P0201-206 Injector 1, 2, 3, 4, 5 or 6 Circuit Code Setting Criteria: - Engine running at 500 rpm or higher, then test started and the ECM detected a continuous misfire condition in fuel injector 1, 2, 3 or 4. P0261, 264, P0267, P0270 Cylinder 1, 2, 3 or 4 Injector Circuit Low Input Code Setting Criteria: - Engine running, then test started and the ECM detected that the injector voltage (from Injectors 1-6) input remained low (near 0 volts) with the injector commanded off. P0262, P0265, P0268, P0271 Cylinder 1, 2, 3 or 4 Injector Circuit High Input Code Setting Criteria: - Engine running, then test started and ECM detected that the injector voltage (from Injectors 1-6) input remained high (near 12 volts) with the injector commanded on. P0301-306 Cylinder 1, 2, 3, 4, 5 or 6 Misfire Detected Code Setting Criteria: - No ECM codes set, engine running at idle or cruise speeds, VSS input over 3 mph, then test started and the ECM detected a misfire condition in cylinders 1, 2, 3 or 4 in either the 200 or 1000 rpm revolution range. P0325 - Knock Sensor '1' Circuit High Input Code Setting Criteria: - Engine running at 1200 rpm or higher, then test started and the ECM detect that the Knock Sensor '1' circuit input remained high. P0330 - Knock Sensor '2' Circuit High Input Code Setting Criteria: - Engine running at 1200 rpm or higher, then test started and the ECM detect that the Knock Sensor '2' circuit input remained high. P0335 - Crankshaft Position Sensor Circuit Code Setting Criteria: - Engine cranking, then test started and the ECM determined no CKP sensor signals were received, or with engine speed at 600 rpm or higher, no CKP signals were received for two trips. P0336 - Crankshaft Position Sensor Circuit Range/Performance Code Setting Criteria: - Engine running, then test started and ECM detected too much variation between the CKP sensor and the CMP sensor signals. P0340 - Camshaft Position Sensor Circuit Code Setting Criteria: - Engine cranking, then test started and the ECM determined that no CMP sensor signals were received, or with engine running at over 500 rpm, that no CMP signals were received. P0341 - Camshaft Position Sensor Circuit Range/Performance Code Setting Criteria: - Engine running, then test started and ECM detected that the signals from the CMP sensor and CKP sensor were erratic or not plausible. P0385 - Crankshaft Position Sensor '2' Circuit Code Setting Criteria: - Engine running, then test started and ECM did not receive CKP sensor signals. P0400 - Insufficient EGR System Flow Detected Code Setting Criteria: - Engine running for 3 minutes, throttle steady with engine running in closed loop at steady throttle, VSS from 52-58 mph for 1 minute, then test started and ECM detected little or no change in Pressure sensor input with the EGR solenoid toggled off and on. P0403 - EGR Control Solenoid Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a low input on the EGR Control solenoid circuit (circuit shorted to ground). P0410 - Secondary Air Injection System Function Code Setting Criteria: - Engine running for 3 minutes in closed loop at steady throttle, VSS input from 15-55 mph for 1 minute, and the ECM detected too little SHRTFT change with the Secondary AIR System commanded on. P0412 - Secondary Air Injection Switching Valve 'A' Circuit Code Setting Criteria: - Engine running, then test started and the ECM detected an open or short condition in the Secondary AIR Switching Valve 'A' or its circuits. P0420 - Catalyst Efficiency Below Normal (Bank 1) Code Setting Criteria: - Engine running in closed loop at 1500-3000 rpm, VSS at 45-60 mph for 3-5 minutes, then test started and the ECM determined that the H02S-11 and H02S-12 voltage amplitudes were similar (1T Code). P0420 - Catalyst Efficiency Below Normal (Bank 1) Code Setting Criteria: - Engine running in closed loop at 1500-3000 rpm, VSS at 45-60 mph for 3-5 minutes, then test started and the ECM determined that the H02S-11 and H02S-12 voltage amplitudes were similar (2T Code). P0440 - EVAP System Function Code Setting Criteria: - Cold start warmup finished, engine running in closed loop at steady throttle, VSS from 25-55 mph for 3 minutes, then test started and the ECM detected a leak in the EVAP System during the EVAP test. e Descriptionest Fault:= P0441 - EVAP System Incorrect Purge Flow Code Setting Criteria: - Cold start warmup finished, engine running at 25-55 mph for 3 minutes, throttle steady, and ECM detected incorrect purge flow in the EVAP test. P0443 - EVAP Purge Control Solenoid Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a short in the Purge Control solenoid circuit (check for grounded circuit). P0446 - EVAP Vent Control Solenoid Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a short in the Vent Control solenoid circuit (check for grounded circuit). P0450 - EVAP Pressure Sensor Circuit Code Setting Criteria: - Engine running, then test started and the ECM detected a Pressure sensor input of less than - 2.8 kPa (shorted) or more than 2.8 kPa (open). P0451 - EVAP Pressure Sensor Range/Performance Code Setting Criteria: - DTC P0450 not set, engine speed over 1500 rpm, VSS over 3 mph, then test started and ECM detected an out-of-range Pressure sensor input. P0452 - EVAP Pressure Sensor Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected that the EVAP Pressure sensor input was less than -2.8 kPa. P0453 - EVAP Pressure Sensor Circuit High Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected that the EVAP Pressure sensor input was more than 2.8 kPa. P0461 - Fuel Level Sensor Circuit Range/Performance Code Setting Criteria: - Engine running, then test started and ECM detected a too low or high signal from the Fuel Level Sensor (the lever in the fuel unit could be stuck. P0462 - Fuel Level Sensor Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a signal from the Fuel Level Sensor that indicated too low of a value. P0463 - Fuel Level Sensor High Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected a signal from the Fuel Level Sensor that indicated too high of a value. P0480 - Cooling Fan Relay '1' Circuit Low Input Code Setting Criteria: - Key on or engine running, then test started and the ECM detected an open or short condition in the Cooling Fan Relay circuit. P0483 - Cooling Fan Relay'1' Function Fault Code Setting Criteria: - Engine running for over 5 minutes, then test started and the ECM detected a fault in the operation of Cooling Fan Relay (check cooling system). P0500 - Vehicle Speed Sensor Circuit Code Setting Criteria: - Engine running in gear at light to medium load for more than 1 second, then test started and the ECM did not receive any VSS signals. P0505 - Idle Speed Control System Fault Code Setting Criteria: - No ECM codes set, engine running, then test started and the ECM detected that Actual Idle Speed was more than or less than a predetermined amount from engine Target Idle Speed. P0506 - Idle Speed Control System - RPM Lower Than Normal Code Setting Criteria: - Engine running, then test started and the ECM detected the Actual idle speed was 100-200 rpm lower than the Desired idle speed. P0507 - Idle Speed Control System - RPM Higher Than Normal Code Setting Criteria: - Engine running, then test started and the ECM detected the Actual Idle Speed was 100-200 rpm higher than the Desired idle speed. P0600 - Serial Communications Link Code Setting Criteria: - Key on, then test started and the ECM detected a Serial Communications Link fault. P0601 - ECM Memory Check Sum Error Code Setting Criteria: - Engine running, then test started and the ECM detected a Memory Check Sum Error. P0703 - Brake Switch Input Circuit Code Setting Criteria: - Key on, then test started and TCM detected the Brake Switch signal did not cycle high and low when the brake pedal was applied and released. P0705 - Transmission Range Sensor Circuit Code Setting Criteria: - Engine running with VSS signal present, then test started and TCM received incorrect TR Sensor signals or received multiple signals with transmission selector in Drive position. P0710 - Transmission Fluid Temperature Sensor Circuit Code Setting Criteria: - Key on or engine running, then test started and TCM detected a TFT sensor signal of under -402F (open) or over 3002F (shorted). P0715 - Torque Converter Turbine Speed Sensor Circuit Code Setting Criteria: - Engine running in gear at light load for 1 minute, then test started and TCM detected a fault in the torque converter turbine speed sensor circuit. P0720 - Output Speed Sensor Circuit Code Setting Criteria: - Engine running in gear at light load for more than 1 second, then test started and the TCM detected that it did not receive any OSS VSS 1 inputs. P0725 - Engine Speed Input Circuit Code Setting Criteria: - Engine running, then test started and the ECM did not receive Engine Speed signals. Refer to TCM code repair chart in other repair manuals. P0731 - Transaxle Incorrect First Gear Ratio Code Setting Criteria: - Engine running in gear with VSS inputs received, then test started and the ECM detected an incorrect Transmission first gear ratio. P0732 - Transaxle Incorrect Second Gear Ratio Code Setting Criteria: - Engine running in gear with VSS inputs received, then test started and the ECM detected an incorrect Transmission 2nd gear ratio. P0733 - Transaxle Incorrect Third Gear Ratio Code Setting Criteria: - Engine running in gear with VSS inputs received, then test started and the ECM detected an incorrect Transmission 3rd gear ratio. P0734 - Transaxle Incorrect Fourth Gear Ratio Code Setting Criteria: - Engine running in gear with VSS inputs received, then test started and the ECM detected an incorrect Transmission 4th gear ratio. P0740 - Torque Converter Clutch System Function Code Setting Criteria: - Engine running in gear at over 28 mph, then test started and the TCM detected excessive TCC slippage during vehicle operation. P0743 - Torque Converter Clutch Solenoid Circuit Code Setting Criteria: - Engine running in gear with VSS input received, then test started and TCM detected an open or short condition in TCC solenoid 'B' or circuit. P0748 - Pressure Control Solenoid Circuit Code Setting Criteria: - Key on or engine running, then test started and TCM detected an open or short condition in Pressure Control duty solenoid 'A' or its circuit. P0753 - TCM Shift Solenoid 'A' Circuit Code Setting Criteria: - Engine running in gear, then test started and TCM detected either an open or short circuit condition in TCM Shift Solenoid 'A' or its circuit. P0758 - TCM Shift Solenoid 'B' Circuit Code Setting Criteria: - Engine running in gear, then test started and TOM detected either an open or short circuit condition in TCM Shift Solenoid 'B' or its circuit. P0760 - TCM Shift Solenoid 'C' Mechanical Function Code Setting Criteria: - Engine running in gear with VSS inputs received, then test started and TCM detected a TCM Shift Solenoid 'C' mechanical fault. P0763 - TCM Shift Solenoid 'C' Circuit Code Setting Criteria: - Engine running in gear, then test started and TCM detected either an open or short circuit condition in TCM Shift Solenoid 'C' circuit.