Chapter 3
Diagnostic Trouble Codes

Retrieving the Codes
General Motors vehicles provide diagnostic trouble codes by flashing the malfunction indicator lamp, or MIL. On earlier vehicles, this light may be the "Check Engine" light or the "Service Engine Soon" light; regardless of the name on the light, they all have the same purpose: To indicate problems in the computer system, and to flash out diagnostic trouble codes.

The first step in retrieving the diagnostic trouble codes is to find the diagnostic link connector, or DLC. This is the connector that provides access to the computer system, using a scan tool or diagnostic computer. You may know it as an ALDL or ALCL.

In addition to providing an outlet for plugging in a scan tool, you can also use the diagnostic link connector to force the malfunction indicator lamp to flash out diagnostic trouble codes; here’s how:

• Turn the key off.
• Find the diagnostic link connector; it’s usually under the dash, right near the driver’s seat, but on some vehicles it can be in the ash tray compartment, glove box… even in the center console. If you can’t find the link, refer to your shop manual.
• Run a jumper between terminals A and B. This grounds the test terminal, placing the system in diagnostic mode.
• Turn the key on, engine off.

To read any codes in memory, run a jumper between terminals A and B
on the diagnostic link connector, and turn the key on.

The malfunction indicator light should begin flashing; first one flash, a short pause, then two more flashes, just like this:

Code 12 indicates no problems, as long as the engine isn't running.

Then a slightly longer pause, and the same pattern of flashes, two more times. This indicates diagnostic trouble code 12. Code 12 indicates that there’s no reference pulse from the ignition system—just what you’d expect with the key on, engine off.

After code 12 flashes three times in a row, any other codes in memory follow; watch these flashes carefully—missing a single flash will have you chasing a ghost! Record any codes you see, for translation and diagnosis later. Here’s what code 31 looks like:

Here's how code 31 would look:

If there are no codes in memory, the system continues flashing code 12.

Record any codes in memory, clear the codes and road test the vehicle.
Then recheck the codes, and compare the original codes with those you retrieved after the road test.

Once you’ve recorded any codes that were in memory, clear the codes and road test the car again. If the transmission shifts okay, and no codes return, there may not be anything wrong with the transmission or computer system. More than one vehicle has been repaired simply by clearing the codes.

Another possibility is the problem may be intermittent, or only occurs during a specific set of circumstances. Return the car to the customer, and explain the situation. Keep the codes you recorded originally on record, in case the problem returns.

There are three possible situations you can run into when checking the codes this way:

1. The codes after your road test are the same as those from beforehand — these codes indicate a hard code; that is, a problem that’s there now. You should be able to find these problems fairly easily, by following the diagnostic procedures in your shop manual.

2. The codes after your road test are new; they weren’t there before — these codes are also probably hard codes. The codes that were there beforehand may have been preventing the conditions that enabled these new codes to set. Once again, refer to your shop manual for the diagnostic procedures for these codes.

3. The codes that were there originally didn’t return — these are the problem codes. They may be left over from a previous failure, or they may indicate an intermittent failure. They may even indicate a problem that hasn’t reached the conditions necessary to reset. In any case, they may be very hard to find.

Try comparing the codes to the complaint; very often the two will correspond, such as a late shift and a vehicle speed sensor code. This will at least point you in the right direction.

If you can’t find a problem, and the transmission seems to shift okay, keep a record of your test results, and return the car to the customer. If the problem returns, you can compare the new condition with the original tests, to find the problem.

Clearing the Codes
Never disconnect the battery cable to clear the codes. Disconnecting the battery will clear all memories from the vehicle: radio presets, anti-theft codes, seat memories — all these and more will disappear if you disconnect the battery. And that’ll leave you with a whole series of headaches… and an unhappy customer.

Most cars and trucks have a battery-powered fuse that supplies constant voltage to the computer, even when the key’s off. This fuse provides the power to keep the computer memory alive. Look for this fuse in the fuse block, marked "ECM" or something of that nature. If you’re not sure which fuse it is, check your shop manual.

Remove the fuse from the fuse block, and wait for 10 seconds. This clears the computer memory, and erases any codes that were there.

GM’s Diagnostic Trouble Codes
This list provides all of the diagnostic trouble codes for GM vehicles, up to the introduction of OBD-II. Many of these codes vary their definition, depending on vehicle year or model. If you aren’t sure what condition one of these codes indicates, always check your shop manual for the specific year, make and model vehicle you’re working on.

Code

Definition

12

No Distributor or RPM Reference Pulse

13

O2 Sensor Circuit
Right O2 Sensor Circuit (Allanté)

14

Coolant Sensor Circuit — High Temperature

15

Coolant Sensor Circuit — Low Temperature

16

System Voltage High
DIS Fault Line Circuit (DIS)

17

Spark Reference Circuit
Left O2 Sensor Circuit

18

Open Crank Signal Circuit

19

Shorted Fuel Pump Circuit

20

Open Fuel Pump Circuit

21

TPS Voltage High
Idle and WOT Switch Error (S10/15 with Carb)

22

TPS Voltage Low
Fuel Cutoff Relay Circuit (S10/15 with Carb)

23

EST Bypass Circuit (DFI)
IAT or MAT — Low Temperature Indicated (PFI)
M/C Solenoid Circuit (Carbureted Models)

24

VSS or Park/Neutral Switch
Output Speed Low (4L80E)

25

Air Switch Solenoid Circuit (S10/15 with Carb)
IAT or MAT High Temperature Indicated (PFI)

26

QDM Error
Shorted Throttle Switch Circuit (DFI)

27

2nd Gear Switch Circuit Problem or Open 4th Gear Switch
Open Throttle Switch Circuit (DFI)

28

3rd Gear Switch Circuit Problem or Open 4th Gear Switch
Open 4th Gear Switch (DFI)
Pressure Switch Manifold (4L60E, 4L80E)

29

4th Gear Switch Circuit Problem
Canister Purge Solenoid Voltage High (Carb)
Shorted 4th Gear Switch (DFI)

30

ISC Circuit Error (DFI)

31

Shorted MAP Sensor Circuit (DFI)
EGR Vacuum Error (Diesel)
Canister Purge Solenoid Voltage High (5.0, 5.7 with Carb)
Park/Neutral Switch (FI)
Wastegate or Solenoid Circuit (Turbo)
No Reference Signal (S10/15 with Carb)

32

Baro Sensor Voltage Signal Low
EGR System Failure (FI and Diesel)
Open MAP Sensor Signal (DFI)

33

MAP Sensor Signal Voltage High
MAF Sensor Signal Voltage High PFI except:
1.8, 2.0, 2.3, 2.8 with A, J, L, P and W body / 3.1 with A and W body

34

MAP Sensor Signal Voltage Low or Vacuum Sensor Circuit Problem
MAF Sensor Signal Voltage Low (PFI) except: 1.8, 2.0, 2.3, 2.8 with A, J, L, P and W body / 3.1 with A and W body

35

ISC Error (Carb)
IAC Error (FI)
Shorted Baro Sensor Circuit (DFI)

36

Closed Throttle Vacuum Low (2.3 PFI)
MAF Sensor Burnoff Relay Error
Open Baro Sensor Circuit (DFI)
Shift Problem with Solenoid B (4T60E)
DIS System Circuit

37

Shorted MAT Sensor (DFI)
Brake Switch Stuck On (4L60E)

38

Open MAT Sensor (DFI)
TCC Brake Switch Circuit (4T60E, 4L60E)

39

TCC or VCC Engagement Problem

40

Open Power Steering Pressure Circuit (DFI)

41

No Distributor Reference Signal (Carb)
C3I Cam Sensor Signal Error (SFI-DFI)
Cylinder Select Error (5.0, 5.7 PFI)
No Crank Sensor Signal (2.3 PFI)

42

EST Error
Left O2 Sensor Signal Lean (Allanté)

43

EST Retard Signal Low
Left O2 Sensor Signal Rich (Allanté)

44

O2 Sensor Signal Lean
Left O2 Signal Lean (’92-on Corvette)
Right O2 Sensor Signal Lean (Allanté)

45

O2 Sensor Signal Rich
Left O2 Signal Rich (’92-on Corvette)
Right O2 Sensor Signal Rich (Allanté)

46

Power Steering Pressure Switch
Antitheft System (F and Y Body)
Left-to-Right Bank Fueling Difference (Allanté)

47

ECM/PCM/BCM Data Problem

48

Misfire Diagnosis

49

Air Management System Fault

50

Second Gear Pressure Circuit (Allanté)

51

PROM/Mem-Cal Error

52

Mem-Cal CalPal ECM Error
ECM/PCM Memory Reset Indicator (DFI)
EOT Sensor Circuit Low (’92-on Corvette)
System Voltage High Too Long

53

System Voltage High
Distributor Signal Interrupt (DFI)
EGR System Failure (Carb)
Antitheft System (F Body)
Air Switch Solenoid (S10/15 with Carb)
Reference Voltage Overload (Diesel)

54

M/C Solenoid Circuit Voltage High (Carb)
Fuel Pump Circuit Voltage Low (FI)

55

ECM Error
Air Switch Valve Problem (S10/15 with Carb)
TPS Misadjusted (DFI)
Fuel Lean Monitor (’92-on Corvette)

56

Open 4th Gear Switch Circuit or Shorted 3-4 Shift Solenoid (Allanté)
Vacuum Sensor Circuit (’92-on Corvette)

57

PCM/BCM Data Circuit Problem
Shorted 4th Gear Switch Circuit or Open 3-4 Shift Solenoid (Allanté)

58

Antitheft System Problem
Transmission Temperature High (4L60E, 4L80E)
Pass Key Fuel Enable Circuit

59

Transmission Temperature Circuit Problem (DFI)
Transmission Temperature Circuit Low (4L60E, 4L80E)

60

Cruise Control — Transmission Not in Drive

61

Cruise Control — Vent Solenoid Circuit Problem
Throttle System Error (PFI)
O2 Sensor Degraded (A, J, L and W body)

62

Cruise Control — Vacuum Solenoid Circuit Problem
Gear Switch Error (2.3, 2.8, 3.1 with A, N and W body)
EOT Sensor Circuit High (’92-on Corvette)

63

Cruise Control — Car Speed and Set Speed Difference Too High
MAP Sensor Signal Voltage High (3.1 and 2.8 PFI with A and L body)
EGR Flow Check Error (3.8 PFI)
Right O2 Sensor Circuit Open (’92-on Corvette)

64

Cruise Control — Car Acceleration Too High
EGR Flow Check Error (3.8 PFI)
Right O2 Sensor Circuit Lean (’92-on Corvette)

65

Cruise Control — Servo Position Sensor Failure
EGR Flow Check Error (3.8 PFI)
Injector Current Low (2.3 PFI)
Right O2 Sensor Circuit Rich (’92-on Corvette)

66

Cruise Control — Engine RPM Too High
A/C Pressure Sensor Circuit (2.3, 3.1, 3.3, 3.8 PFI)
Engine Power Switch Circuit (’92-on Corvette)
3-2 Control Solenoid Circuit Fault (4L60E)

67

Cruise Control — Switch Shorted During Enable
Torque Converter Clutch Solenoid Fault (4L60E)

68

Cruise Control — System Error
Overdrive Ratio Error (4L80E)

69

A/C Pressure Switch Circuit
Torque Converter Clutch Solenoid Stuck On (4L60E)

70

Intermittent TPS Signal (DFI)

71

Intermittent MAP Sensor Signal (DFI)

72

Vehicle Speed Control Circuit Loss

73

Force Motor Current Error (4L60E, 4L80E)
Intermittent CTS Signal (DFI)

74

Intermittent MAT Sensor Signal (DFI)

75

Intermittent VSS Signal (DFI)
System Voltage Low (4L60E, 4L80E)

79

Transmission Fluid Over Temperature (4L60E)

80

Fuel System Rich (DFI)

81

Shift Solenoid B Circuit Error (4L60E, 4L80E)

82

Shift Solenoid A Circuit Error (4L60E, 4L80E)

83

TCC Solenoid Circuit Error (4L80E)
TCC PWM Solenoid Circuit Error (4L60E)

85

Throttle Angle Too High (DFT)
Undefined Ratio Error (4L80E)

86

Low Ratio Error (Solenoid B Closed) (4L80E)

87

High Ratio Error (Solenoid B Open) (4L80E)

90

VCC Brake Switch Signal Problem (DFI)

91

PRNDL Switch Problem (DFI)

92

Heated Windshield Request Problem (DFI)

96

Torque Converter Overstress (DFI)

97

P/N to D/R at High Throttle Angle (DFI)

98

High RPM From P/N to D/R in ISC Range (DFI)

99

Cruise Control — Servo Apply Problem (DFI)

PAGE 26-33