1980-1985 Cadillac DEFI Diagnostics

To the best of my knowledge, Cadillac's DEFI system of 1980 was the first such system on a production automobile. Rather than simply a digital implementation of previous analog systems, it provided closed-loop error correction, substitute parameters to provide a limp-home mode should a sensor fail, and most remarkable of all, the ability to access current and stored trouble codes without any special tools. To aid in diagnostics, a number of "live" parameters could also be examined in real time. This OBD-implementation continued through the HT4100 era and well into the 1990's.

Many years ago, I kept a cheat-sheet in the glovebox of my '85 Biarritz so that I could monitor RPM and digital speed on the climate head with a few key-presses. Years later, this information, once prevalent on the web, seems to have vanished. The below is copied from the now-defunct HT4100 chapter webpage of the CLC, originally taken from the Cad shop manuals, and applies to the 82-85 models. For the 80/81 cars, there are some differences. Unless otherwise noted, assume codes/parameters are the same.




Technical Documents: Click Here
Includes the 1980 368 DEFI Manual.

Return to Main Page



To Enter Diagnostic Mode, Proceed as Follows:

1.  Turn the ignition ON

2.  Depress the OFF & WARMER buttons on the ECC panel simultaneously and hold until '..' appears. '-1.8.8' will then be displayed which indicates the beginning of the diagnostic readout and verifies all display segments.

3.  Trouble codes may then be displayed on the ECC control head beginning with the lowest numbered code.  Note that the Fuel Data panel goes blank when the system is in the diagnostic mode. After the Trouble Codes have been displayed, if any, the display will then show '.7.0'.  This is a decision point.

4.  To clear Trouble Codes, when '.7.0' is displayed, depress OFF & HI simultaneously. Hold until '.0.0' is displayed.  Once '.0.0' is displayed, the ECM will display '.7.0'.

5.  To exit the diagnostic mode, depress any of the ECC buttons except LO or Outside Temperature, or turn the ignition off for 10 seconds. Trouble codes are not erased when this is done without clearing the codes.

The engine control solenoids, some dash warning lights and the ISC can be tested using the Output Cycling capabilities of the system (see below).  Switch Tests enable the testing of many of the switches in the car, including a comprehensive test of the Cruise Control controls. 

Casually reach around the steering column with your left hand, and using your
two most inconvenient fingers, awkwardly press Off+Warmer as shown.

Trouble Codes


Circuit Affected


Circuit Affected

12 No Distributor (TACH) Signal 44 Lean Exhaust Signal (80 not used)
13 O2 Sensor Not Ready (80 not used) 45 Rich Exhaust Signal (80 not used)
14 Shorted Coolant Sensor Circuit 51 PROM Error Indicator (80 not used)
15 Open Coolant Sensor Circuit 52 ECM Memory Reset Indicator (80/81 not used)
16 Generator Volatage Out Of Range (80 not used) 53 Distributor Signal Interrupt (80/81 not used)
18 Open Crank Signal Circuit (80 not used) 55 1980 Only - "ECM"
19 Shorted Fuel Pump Circuit (80 not used) 60 Transmission Not In Drive
20 Open Fuel Pump Circuit (80 not used) 61 Set/Coast/Resume/Accel Depressed Simultaneously
21 Shorted Throttle Position Sensor Circuit 62 Cruise Engaged while exceeding 80 MPH
22 Open Throttle Position Sensor Circuit 63 Car And Set Speed Tolerance Exceeded 
23 EST/Bypass Circuit Problem 64 Car Acceleration Exceeds Maximum Limit (icy/wet pavement)
24 Speed Sensor Circuit Problem 65 Coolant Temperature Exceeds Maximum Limit (while cruise engaged)
25 1981 only: Modulated Displacement Malfunction 66 Engine RPM Exceeds Maximum Limit (while cruise engaged)
26 Shorted Throttle Switch Circuit 67 Shorted Set Or Resume Circuit (81 not used)
27 Open Throttle Switch Circuit 68 81: Set/Coast & Resume/Accel Improperly Set
28 Open Fourth Gear Circuit (80: see 30; not used for 81) .7.0 System Ready For Further Tests
29 Shorted Fourth Gear Circuit (80: see 30; not used for 81) .7.1 Cruise Control Brake Circuit Test (Brake Light Switch)
30 ISC Circuit Problem (codes 28, 29, 30 for '80) .7.2 Throttle Switch Circuit Test
31 Shorted MAP Sensor Circuit .7.3 Drive (ADL) Circuit Test
32 Open MAP Sensor Circuit .7.4 Reverse Lamp Sw. Circuit Test
33 MAP/BARO Sensor Correlation .7.5 Cruise On/Off Circuit Test (new for 81)
34 MAP Signal Too High (aka MAP Hose) .7.6 "Set/Coast" Circuit Test (new for 81)
35 Shorted BARO Sensor Circuit .7.7 "Resume/Accelleration" Circuit Test (new for 81)
36 Open BARO Sensor Circuit .7.8 "Instant/Average" Circuit Test
37 Shorted MAT Sensor Circuit .7.9 "Reset" Circuit Test
38 Open MAT Sensor Circuit .8.0 A/C Clutch Circuit Test (new for 81)
39 TCC Engagement Problem (80/81 not used) -1.8.8 Display Check
40-43 Not Used .9.0 System Ready To Display Engine Data
.9.5 System Ready for Output Cycling Or In Fixed Spark Mode
.9.6 Output Cycling
.0.0 All Diagnostics Complete

Live Data / Parameters (1981-85)

To enter Engine Data Display Mode, proceed as follows:

1.  Turn the ignition ON. Tests can be performed with the motor off or running. Some data will be zero if the motor is off, eg RPM or if the car is not moving, eg Vehicle Speed.
2.  Depress the OFF & WARMER buttons on the ECC panel simultaneously and hold until '..' appears. '-1.8.8' will then be displayed which indicates the beginning of the
     diagnostic readout.
3.  Trouble codes may then be displayed on the ECC control head beginning with the lowest numbered code.  Note that the Fuel Data panel goes blank when the system is
     displaying in the diagnostic mode.  After the Trouble Codes have been displayed, if any, the display will then show '.7.0'.  This is a decision point.
4.  Depress and release the RESET button on the Fuel Data panel. The engine data series begins as the display switches from code .7.0 to .9.0.
5.  To advance the display, depress the INSTANT/AVERAGE button located on the Fuel Data Panel. To return to a previously displayed parameter, depress the RESET button on
     the Fuel Data Panel.  It is possible to leave the Engine Data Series at any time and return to code .7.0 by depressing the OFF and HI buttons on the ECC control panel.  
     After the last parameter is displayed, the system advances to code 9.5 and waits for the next command.


Parameter #



Display Units


Throttle Position

-10 to 90



Manifold Air Pressure

14 to 108

KiloPascals (kPa)


Barometric Air Pressure

14 to 108

KiloPascals (kPa)


Coolant Temperature

-40 to 151

Degrees Celsius


Manifold Air Temperature

-40 to 151

Degrees Celsius


Injector Pulse Width

0 to 19.9



Oxygen Sensor

0 to 1.99



Spark Advance

0 to 52



Ignition Cycles

0 to 50

Key Cycles


Battery Voltage [81: open/closed loop ind where 1=closed]

0 to 19.9



Engine RPM [81: Batt Voltage; will not display 10's digit]

0 to 199



Vehicle Speed [81: n/a]

0 to 199



PROM I.D. [81: n/a]

0 to 199




Full Name


Where positioned


Electronic Control Module

The ECM is a digital computer which takes inputs from sensors around the engine bay and computes the ideal fuel/air mixture at that point in time. It also maintains the Cruise Control and other onboard systems. Sometimes referred to as an ECU.

Aluminum-cased, the ECM is behind the lower right instrument panel cover. Also visible by removing the glovebox liner.


Distributor Tachometer Signal

Pulses from the HEI distributor for RPM usage

Rear center of the engine.

O2 Sensor

Oxygen Sensor

Senses Oxygen level of exhaust

Screwed into left hand exhaust manifold. If faulty, can cause mixture to be too rich or too lean.


Coolant Temperature Sensor

Measures Engine Coolant Temperature

Front left corner of Intake Manifold (4.1). A faulty sensor will cause extremely rich or lean running.


Manifold Air Temperature

Measures Intake Manifold Air Temperature

Intake Manifold in front of the Throttle Body. Similar response as CTS but used for 'fine-tuning'.


Manifold Absolute Pressure

Intake Manifold Pressure, commonly known as Vacuum

Under the dash near the right hand A/C outlet (4.1). Connects to the throttle body via a vacuum hose.


Barometric Air Pressure

As measured with a normal house barometer, senses weather conditions & height above sea level.

Under the dash near the right hand A/C outlet. NOTE: swapping connections between MAP & BARO.


Throttle Position Sensor

Senses Throttle Angle (0 to 90 degrees)

On the right side of the Throttle Body. A variable resistor is used for this sensor. When worn, will cause unstable idling.


Electronic Spark Timing

Spark Angle

The ECM adjusts engine timing via feedback to the HEI module.


Exhaust Gas Recirculation

Recycles a percentage of exhaust gas to allow for cooler operating temperatures

Inlet manifold. When faulty, causes detonation, pinging, and poor running.


Positive Crankcase Ventilation

Takes piston ring bypass gases from the oil sump to the inlet manifold for burning.

Rocker Arm Cover. When faulty to the extreme can suck oil into intake manifold causing white smoke from exhaust.


High Energy Ignition

HEI Distributor. Provides basic spark timing and final spark to plugs. Signals to and from ECM for modified spark angle

Center Rear of engine (4.1). If faulty, weak spark or no spark.


Idle Speed Control

During idling, this motor will hunt to maintain a constant idle speed regardless of engine load

Left side of throttle body. Faulty or maladjusted will cause idle speed to be erratic. Needs to be adjusted concurrently with TPS. See notes on this page on adjustment.


Torque Convertor Clutch

Locks the torque convertor giving a mechanical drive between the engine and planetary gears within the automatic gear box. At 60mph, should lower the engine revs from about 1900 to about 1700. It is switched in by the ECM once a combination of conditions have been met (engine temp, engine load, road speed, etc).

TCC solenoid adjacent to transmission valve body (requires pan removal).


Speed Sensor Circuit

Supplies pulses to the ECM according to the speed of the vehicle

Generated at the rear of the speedometer housing by a photo-transistor. ECM uses signal for cruise control, TCC lockup, and other functions.

Output Cycling Test

This series of tests can be used to determine whether faults exist between engine bay solenoids, two indicator lights, the ISC motor and the wiring or ECM.  I have successfully used it to diagnose and then solve cruise control, Torque Converter Clutch  and ISC problems.

The Cruise Control solenoid on the Cruise Control transducer which has the ball chain connected to the throttle, is continuously cycled.  It should sound like a constant chattering of the solenoid during the output cycling test, which will run for two minutes before shutting off.

The following will be cycled between their on and off modes every three second:

Coolant Light, Cruise Engage Light, TCC Solenoid, Canister Purge Solenoid, Cruise Vacuum Solenoid, Air Switching Solenoid, EGR Solenoid, Air Divert Solenoid, and the ISC will extend and retract.

In order to run the tests, we need to get the Climate Control Display (ECC panel) showing 9.5.  There are two ways to get 9.5 displayed on the panel:

1.  Use the usual method (OFF & WARMER) to display 7.0, then depress the INSTANT/AVERAGE button on the Fuel Data Display.

2.    Depress the INSTANT/AVERAGE button on the Fuel Data Display while parameter .1.3 is being displayed on the ECC.

For 1981, the procedure is slightly different, and the car can be put into 4, 6 or 8 cyl mode using the Fuel Data buttons. For advanced troubleshooting, an actual shop manual is recommended.

Input (Switch) Test
(Also applies to 1980/81 368 though not all tests may be applicable)

Code .7.0 must be displayed on the ECC control head before the switch tests can begin. To start the switch tests sequence depress and release the brake pedal; the switch tests begin as the display switches from Code .7.0 to Code .7.1, see Figure 8D1-4. (If the display doesn’t advance to Code .7.1, refer to the diagnosis chart, Code .7.1, because the ECM is not processing the brake signal.)

As each code is displayed, the associated switch (see Figure 8D1-5), must be cycled within 10 seconds or the code will be recorded in the ECM’s memory as a failure. After the ECM recognizes a test as passing or after the 10 second time-out elapses without the proper cycling being recognized, the display automatically advances to the next switch test code. The switch tests sequence is performed as follows:

1.     With Code .7.1 displayed, depress and release the brake pedal again to test the Cruise Control brake circuit.

2.     With Code .7.2 displayed, depress the throttle from the idle position to an open throttle position and then slowly release the throttle.
        While this action is being performed, the ECM checks the throttle switch for proper operation.

3.     With Code .7.3 displayed, shift the transmission lever into drive and then neutral. This action checks the operation of the drive switch.

4.      With Code .7.4 displayed, shift the transmission lever to reverse and then into park. This action checks the operation of the reverse switch.

On cars without Cruise Control, codes .7.5, .7.6 and .7.7 will be displayed but cannot be performed during the switch tests. When these codes are displayed during the switch tests, allow the code to reach it’s 10 second time out. After this time out has elapsed, the display will advance to the next code. Allow codes .7.5, .7.6 and .7.7 to time out (30 seconds). Since these codes will be recorded as failures in the switch tests sequence, a display of .0.0 will never be observed at the completion of the tests (see Step # 12). To confirm proper operation of the remaining switches, codes .7.8, .7.9 and .8.0 must be observed as having advanced within their 10 second time out. If the code cannot be advanced within its time out, it should be considered a failed test. Note: 7.5, 7.6 and 7.7 are not part of the switch test in 1980.

5.      With Code .7.5 displayed, switch the Cruise Control instrument panel switch from off to on and back to off to check the operation of this switch.

6.      With Code .7.6 displayed and with the cruise instrument panel switch in the on position, depress and release the set/coast button to check the operation of this switch.

7.      With Code .7.7 displayed and with the cruise instrument panel switch in the on position, depress and release the resume/acceleration switch to check the operation of this switch.

8.      With Code .7.8 displayed, depress and release the “instant/average” button on the Fuel Data panel to test the operation of this switch. (Avg button for '80).

9.      With Code .7.9 displayed, depress and release the “reset” button on the Fuel Data panel to test the operation of this switch. (This concludes testing for '80.)

10.    With Code .8.0 displayed, depress and release the “outside temperature” button TWICE.
When diagnostics are first entered, compressor clutch engagement is commanded as indicated by the “outside temperature” status light being on. When the “outside temperature” button is pushed the status light will go out and the clutch should disengage. When the button is pushed the second time the status light will come back on and the clutch should reengage. This action checks the ECM’s ability to recognize and process the air conditioning clutch signal. However, the compressor cycling switch in series with the compressor drive circuit must be closed in order to energize the A/C compressor clutch. Sometimes, the engine may need to be running and the ECC may need to be operating in auto and 60’F to close the contacts of the compressor cycling switch.

11.      When the switch tests are completed, the ECM will now go back and display the switch codes which did not test properly. Each code which did not pass will be displayed beginning with the lowest number. The codes will not disappear until the affected switch circuit has been repaired and retested. Refer to the appropriate diagnosis chart for each trouble code.

12.      After the switch tests are completed and all circuits pass, the ECC panel displays “.0.0” and then returns to Code .7.0. “.0.0” indicates that all of the switch circuits are operating properly.

TPS & ISC Adjustments / Troubleshooting

If the diagnostics are run after a Service Soon error is shown, and errors relating to the Throttle Position Sensor (TPS) and/or Idle Speed Control (ISC) are 21, 22, 26, 27and/or 30, it is likely that the TPS is worn.  The TPS is a wirewound variable resistor, and when it is worn, it has the same effect on the Electronic Control Module (ECM) as a worn volume control on a radio.  On a radio you will get a crackle when you adjust the volume......a worn TPS will give an intermittent throttle position readout to the ECM, and can cause the idle speed to fluctuate and cause the above errors.

The TPS is used to send the throttle position to the ECM, indicating to the computer the angle of throttle.  It senses 0-90 degrees of throttle angle.  The ISC is controlled by the ECM and adjusts the idle speed dynamically according to load when the engine is at idle.  The air conditioning compressor cycling or moving the gear selector from Park/Neutral to Forward and Reverse positions will change the load on the engine, which the ISC compensates for.

If either the TPS or ISC are replaced, they need to be adjusted together.  Instructions for adjusting them are covered HERE. Figure 6D3-8 is available HERE.

Return to Main Page      Comments? Corrections? Contact Webmaster      Cory Heisterkamp 2022