GM Full-Size Trucks 1980-1987 Repair Guide

Computer Command Control (CCC) System (California or fuel injected engines only)



The CCC System monitors up to nineteen engine/vehicle operating conditions which it uses to control up to nine engine and emission control systems. This system controls engine operation and lowers the exhaust emissions while maintaining good fuel economy and driveability. The Electronic Control Module (ECM) is the brain of the CCC system. The ECM controls as many as 12 engine related systems constantly adjusting them for maximum efficiency. In addition to maintaining the ideal air/fuel ratio and adjusting ignition timing, the CCC System also controls the Air Management System, the transmission torque converter clutch (certain automatic transmission models only), idle speed, Evaporative Emissions System, the EGR valve operation and the early fuel evaporative (EFE) system.

The CCC system is primarily an emission control system, designed to maintain a 14.7:1 air/fuel ratio under all operating conditions. When this ideal air/fuel ratio is maintained the catalytic converter can control oxides of nitrogen (NOx), hydrocarbon (HC) and carbon monoxide (CO) emissions.

There are two operation modes for CCC System: closed loop and open loop fuel control. Closed loop fuel control means the oxygen sensor is controlling the carburetor or throttle body delivered air/fuel mixture ratio. Under open loop fuel control operating conditions (wide open throttle, engine and/or oxygen sensor cold), the oxygen sensor has no effect on the air/fuel mixture.

On some engines, the oxygen sensor will cool off while the engine is idling, putting the system into open loop operation. To restore closed loop operation, run the engine at part throttle and accelerate from idle to part throttle a few times.

The carburetor mixes air and gasoline into a combustible mixture before delivering it to the engine. However, carburetors have reached a point where they can no longer control the air-fuel mixture sufficiently close to the ideal 14.7:1 ratio for most operating conditions. Therefore, an electric solenoid has been incorporated into the carburetor to control the air-fuel ratio. The solenoid is connected to the ECM. The ECM provides a controlling or adjustment signal to the solenoid. The solenoid controls the metering rod(s) and a idle air bleed valve to maintain the ideal air-fuel ratio throughout the operating range of the engine. Since conditions that would effect the air fuel ratio vary widely, the ECM monitors conditions through several sensors. This provides for proper adjustment of the solenoid, for all driving conditions.

One of the most important sensors that the ECM relies on for controlling mixture is located in the exhaust stream and is known as the oxygen sensor or simply an O 2 sensor. The sensor functions when the engine's exhaust temperature rises above 600ºF (316ºC). There is a direct relationship between the mixture delivered by the carburetor and the amount of oxygen left in the exhaust gases. The O 2 sensor detects the level of oxygen in the exhaust and signals the ECM by varying the voltage signal to the ECM. From this signal, the ECM is able to calculate whether the mixture is too rich or too lean and will adjust the mixture control solenoid accordingly. This process goes on continually and is referred to as Closed Loop operation. Closed loop operation tries to maintain the optimum 14.7:1 air/fuel mixture to the engine.

In the morning when the engine is cold, if the system keep the air/fuel mixture at the 14.7:1 ratio, the engine wouldn't run very well. When the engine is cold, it has to have a richer mixture. An automatic choke is used to give the engine a richer mixture until it is up to normal operating temperature. In addition to the choke, a temperature sensor located in the water jacket of the engine is used by the ECM to monitor engine temperature. When the temperature sensor signal indicates that the engine is cold, the ECM will ignore the oxygen sensor signal. During the period that the O 2 sensor signals are ignored the ECM is running in a mode known as open loop. During this open loop period, the ECM adjusts the mixture control solenoid to deliver a richer mixture based on a preset program retained in the ECM's memory. The ECM also uses information from other sensors during cold start operation. After the engine has warmed up to normal operating temperature, based on the temperature sensor's signal, the ECM will switch to closed loop operation.

While the oxygen and coolant temperature sensor influence the ECM the most in control of the fuel mixture, there are three other factors which influence the ECM. One of these is the load that is placed upon the engine. When an engine is working hard, such as pulling a heavy load up a long grade, it requires a richer air/fuel mixture. This is different from a vehicle that is operating in a cruise condition on a level highway at a constant rate of speed. Manifold vacuum is used to determine engine load. A vacuum sensor is used to detect changes in the manifold vacuum which are signaled to the ECM. As load changes occur, the vacuum signal varies. The ECM takes this varying signal into account when determining what mixture the carburetor should be delivering to the engine.

Another factor in determining what air/fuel mixture should be is the amount of throttle opening. The more throttle opening at any given time, the richer the mixture required by the engine. On most applications, a Throttle Position Sensor (TPS) is used to signal the ECM as to the position of the throttle, whether it is at idle, part throttle or wide open throttle.

The final factor in the fuel mixture equation is the speed the engine is running. Certainly, when an engine is operating at 600 rpm, it doesn't need as much fuel as it does when it is operating at 4000 rpm. Therefore, a tachometer signal from the distributor is fed to the ECM for calculation in the fuel mixture equation.

The ECM is a reliable solid state computer, protected in a metal box and located in the cab. It is used to monitor and control all the functions of the CCC System. As explained previously the ECM can perform several functions at the same time but it also has the ability to detect certain faults within the CCC system. Generally when it detects a fault in the system the ECM will do three things; one is it will warn the driver by turning on the "CHECK ENGINE" or "SERVICE ENGINE SOON" light on the instrument panel, second it will try to compensate for the fault in many cases and third it will record what system or circuit is faulty in it's memory. When the engine is started, the CHECK ENGINE light will remain on for a few seconds, then turn off. This is normal operation but if the CHECK ENGINE light remains on, the self-diagnostic system has detected a problem. The ECM records the fault in it's memory in the form of a diagnostic trouble code. The diagnostic trouble codes recorded in the ECM's memory can later be accessed to aid in diagnosis of the Computer Command System fault. It should be understood though, that as powerful as the ECM is as a computer it does have limitations and cannot detect all the possible failures that could be encountered.


Although stored codes may be read with only the use of a small jumper wire, the use of a hand-held scan tool such as GM's TECH 1 or equivalent is recommended. There are many manufacturers of these tools; a purchaser must be certain that the tool is proper for the intended use.

The scan tool allows any stored codes to be read from the ECM memory. The tool also allows the operator to view the data being sent to the ECM while the engine is running. A scan tool makes collecting information easier; the data must be correctly interpreted by an operator familiar with the system.

An example of the usefulness of the scan tool may be seen in the case of a temperature sensor which has changed its electrical characteristics. The ECM is reacting to an apparently warmer engine (causing a driveability problem), but the sensor voltage has not changed enough to set a fault code. Connecting the scan tool, the voltage signal being sent to the ECM may be viewed; comparison to either a chart of normal values or a known good vehicle reveals the problem quickly.


Diagnosis of a driveability and/or emission problem requires attention to detail and following the diagnostic procedures in the correct order. Resist the temptation to perform any repairs before performing the preliminary diagnostic steps. In many cases this will shorten diagnostic time and often cure the problem without further testing.

Visual/Physical Underhood Inspection

This is possibly the most critical step of diagnosis. A detailed examination of connectors, wiring and vacuum hoses can often lead to a repair without further diagnosis. Performance of this step relies on the skill of the technician performing it; a careful inspector will check the undersides of hoses as well as the integrity of hard-to-reach hoses blocked by the air cleaner or other component. Wiring should be checked carefully for any sign of strain, burning, crimping, or terminal pull-out from a connector. Checking connectors at components or in harnesses is required; usually, pushing them together will reveal a loose fit.

Diagnostic Circuit Check

This step is used to check that the on-board diagnostic system is working correctly. A system which is faulty or shorted may not yield correct codes when placed in the Diagnostic Mode. Performing this test confirms that the diagnostic system is not failed and is able to communicate through the dash warning lamp.

Reading Trouble Codes

Once the integrity of the system is confirmed, enter the Diagnostic Mode and read any stored codes. To enter the diagnostic mode:

  1. Turn the ignition switch OFF . Locate the Assembly Line Diagnostic Link (ALDL), usually under the instrument panel. It may be within a plastic cover or housing labeled DIAGNOSTIC CONNECTOR. This link is used to communicate with the ECM.
  3. The code(s) stored in memory may be read either through the flashing of the dashboard warning lamp or through the use of a hand-held scan tool. If using the scan tool, connect it correctly to the ALDL.
  5. If reading codes via the dash warning lamp, use a small jumper wire to connect Terminal B of the ALDL to Terminal A . As the ALDL connector is viewed from the front, Terminal A is on the extreme right of the upper row; Terminal B is second from the right on the upper row.
  7. After the terminals are connected, turn the ignition switch to the ON position but do not start the engine. The dash warning lamp should begin to flash Code 12. The code will display as one flash, a pause and two flashes. Code 12 is not a fault code. It is used as a system acknowledgment or handshake code; its presence indicates that the ECM can communicate as requested. Code 12 is used to begin every diagnostic sequence. Some vehicles also use Code 12 after all diagnostic codes have been sent.
  9. After Code 12 has been transmitted 3 times, the fault codes, if any, will each be transmitted 3 times. The codes are stored and transmitted in numeric order from lowest to highest.

The order of codes in the memory does not indicate the order of occurrence.

  1. Switch the ignition OFF when finished with code retrieval or scan tool readings.

Due to increased battery draw, do not allow the vehicle to remain in the Diagnostic Mode for more than 30 minutes. If longer periods are necessary, connect a battery charger.

Clearing Trouble Codes

Stored fault codes may be erased from memory at any time by removing power from the ECM for at least 30 seconds. It may be necessary to clear stored codes during diagnosis to check for any recurrence during a test drive, but the stored codes must be written down when retrieved. The codes may still be required for subsequent troubleshooting. Whenever a repair is complete, the stored codes must be erased and the vehicle test driven to confirm correct operation and repair.

The ignition switch must be OFF any time power is disconnected or restored to the ECM. Severe damage may result if this precaution is not observed.

Depending on the electric distribution of the particular vehicle, power to the ECM may be disconnected by removing the ECM fuse in the fusebox, or disconnecting the positive battery terminal. Disconnecting the battery cables to clear codes is not recommended as this will also clear other memory data in the vehicle such as radio presets or clock.

Field Service Mode

If ALDL terminal B is grounded to terminal A with the engine running, the system enters the Field Service Mode. In this mode, the dash warning lamp will indicate whether the system is operating in open loop or closed loop.

If working in open loop, the dash warning lamp will flash rapidly 2 1 /2 times per second. In closed loop, the flash rate slows to once per second. Additionally, if the system is running lean in closed loop, the lamp will be off most of the cycle. A rich condition in closed loop will cause the lamp to remain lit for most of the 1 second cycle.

When operating in the Field Service Mode, additional codes cannot be stored by the ECM. The closed loop timer is bypassed in this mode.