Codes are not able to be displayed from the Check Engine Light except for 88 and above 900s and 9000s without turbos and 89 and up turbos with the 2.4 LH injection system. The emission sticker under the hood will identify these cars. Earlier 2.2 LH cars will not display codes. Later Trionic cars will display basic codes just by turning the key on and waiting a few seconds.

Pulling codes on a 2.4 LH variant requires alternately grounding and ungrounding a test connection. The proper sequence of these grounds will trigger the ECU to display the fault codes via the Check Engine light. The codes will be displayed as a series of flashes making up a five digit code. Before and after each code will be a long flash of the light. After the last code is displayed, there will be three long flashes indicating no more codes are stored.

You will need to make a toggle switch with leads long enough to reach from the test connector to the driver's seat so you can read the codes and toggle the switch as necessary. One end of the lead will have to have a terminal to fit the test connector. They vary from a common male connector to a small female connector. See below for the location and connector type. The other lead on your switch needs to be able to be securely fastened to a good ground near the driver's seat. The door latch on the B pillar makes a good ground point for pulling codes.

Test Connection Location and Terminal Requirements

88 900s have the connector beside the evaporator housing in the engine compartment. It is in between the fender well and the housing, sometimes pushed down in the harnesses there. It will have a black plastic connector with places for three wires, but only one wire in it. That wire will be gray with a red stripe. The terminal needed to securely attach to the test point is a common male blade end.

89 and up 900s have the connector under the rear seat. It usually has a black cover over it. It is a bigger connector capable of holding 10 wires. Usually there are 4 wires there. You want to use pin 2, again a gray wire with a red stripe. The terminal required to attach securely to it is a small female blade connector. Small alligator clips work well here too.

900 Convertibles have the test point under the rubber bellows in front of the shifter. The same type of connector as above is used, same color, same pin.

9000s' test point is under the hood in the connector on the left side near the wind shield. It usually has a cover and has several connections in it, one a round 6 pin connector, a single pin connector, a 4 pin connector and a three pin connector. You will want the three pin connector and the odd oriented pin in that. It requires a common male blade terminal to access it.


Connect your switch leads to the connection point and to a ground. Insure that the test switch is off or open, not grounding the test point. Turn the key on. When the Check Engine Light comes on, switch your switch to On or closed. Immediately the Check Engine light should go off. Wait until it flashes back on and immediately turn your switch to off or open. The first code is coming, record the flashes. The first long flash will indicate this then a short flash followed by a series of flashes will represent the digits, the first digit will be the short flash indicating 1. The first code you get should be 1-2-2-3-1 indicating no RPM signal. This is normal since the engine isn't running.

After the first code is displayed and the long flash indicates its finished, flip your test switch to On or closed, after the Check Engine light flashes once, turn your switch to off or open and wait for the next code. Use this procedure until you get three long flashes for a code. This indicates all the codes have been read.

To restart the codes, with your switch On or closed, wait until the Check Engine light flashes twice then flip it to Off or open and the codes will start over, displaying the first code again.

After you have read all the codes and received the three long flashes, you can use the switch to erase them. With your switch On or closed, wait for the Check Engine light to flash three short flashes and then switch it to Off or open. The codes should be erased, rerun the procedure to verify. The no rpm code will reappear each time.

If at any time you need to abort the procedure, just turn the key off. But be sure the test switch is switched off or disconnected before you turn the key back on. Cycling the key and starting with the switch Off or open will start the procedure over.







1 2 2 3 1


No RPM Signal Normal if engine not running

Check rpm signal at ECU pin 1

1 2 2 2 1


No Air Mass Meter Signal

Check connection. Substitute known good meter

1 2 2 1 4


Incorrect NTC signal (signal out of range, indicating below -90C or above 160C)

Check the resistance directly at sensor. spec is ~2500 ohms at 68F, ~325 ohms at operating temp (80C)

1 2 2 1 1


Battery Voltage below 10V or above 16V

Check electrical system

1 2 2 2 5


02 sensor problem Fault must be present for 3 minutes to set code

Check sensor output(fluctuations between 0 and 1 volt) check preheater circuit and fuse

1 2 2 2 3

Depends On Severity

Air/fuel mixture too lean

Insure no vacuum leaks. Check injector seals. Check ELCD operation Check fuel pressure Check for code 12225

1 2 2 2 4

Depends On Severity

Air/fuel mixture too rich

See above

1 2 2 3 2


Memory voltage below 1 volt

Check ECU pin 4 for voltage with the key off

1 2 2 1 2


Throttle Position Sensor Idle circuit closed while driving

Check Throttle Switch adjustment
Check harness to sensor for short

1 2 2 1 3


Throttle Position Sensor Full Throttle circuit closed at idle

See above

1 2 2 2 2


AIC circuit fault

Check wiring from ECU to AIC

1 2 1 1 1

Depends On Severity

Incorrect air/fuel mixture while driving

Check for vacuum leaks Check 02 preheater Check ELCD system Check fuel pressure

1 2 1 1 2

Depends On Severity

Incorrect air/fuel mixture at idle

See above

1 2 1 1 3

Depends On Severity

Idle too high

Check Throttle Plate adjustment
Check for vacuum leaks Check for binding AIC Valve

1 2 1 1 4

Depends On Severity

Idle too low

See above

0 0 0 0 0


No More Codes

Must see this code to erase others

Back To Index