Old News



Notes & Tips

Image Gallery




Subaru Page

Back Home

Engine Related Tips

Return to Notes & Tips Index

ECU Reset
TPS Diag
Underdrive Pulley

Engine Tips

How to Read Trouble Codes From the ECU

NOTE: These instructions are only for the 90-94 Legacies with an OBD I computer. If you have a 95 or later Legacy, you will need a scan tool or will need to have the dealer read the codes.

On the gauge cluster, to the top left there are a few idiot lights which are not on under normal driving conditions. One of these lights reads 'check engine.' This light comes on when the ECU detects a fault in one of the many electronic components from which it receives signals and to which it transmits signals. If the ECU recognizes a problem while the car is on, the 'check engine' light will be constantly illuminated. If it has detected a problem in the past, but the problem which it detected no longer exists, the light will be out. However, the ECU will store a record of the faults it has detected in the past until they are cleared deliberately or unintentionally. To read any current or past faults, the 'check engine' light will flash in a sort of Morse code, which we can decipher.

Underneath the steering column is a wide rectangular piece of plastic, the same color as the dash, which has a tray marked 'TRAY.' This large piece is held to the underside of the dash with a bunch of screws. Remove these screws and remove the plastic piece. Now there will be a bunch of wires for you to see. To the left of the steering column (at least in left hand drive cars) somewhere probably tucked away will be a bundle of wires with two pairs of electrical connectors which are disconnected. On some 92-94 MY Legacies the check connectors can be found on the right hand side of the steering column. One is black and connects one wire to one wire, the other is green and roughly 'T' shaped, this one also connects one wire to one wire. With the car turned completely off, connect the black connector. Next, turn the ignition to 'ON' but do not start the car. The idiot lights in the dash will come on, and some may go out after a few moments. Watch the 'check engine' light and maybe have something you can write on to remember the codes. If there is a fault code in the ECU, the 'check engine' light will begin to flash in a particular manner. The codes range in number from 11 to 52, so we know that they all will be two digits. To signify the tens place of the number, the 'check engine' light will flash a long (1.2 seconds) flash. The single digit will be a short (.2 seconds) flash. Each flash within the same code will be separated by .3 seconds. Each error code will be separated by 1.8 seconds. Don't bother trying to time all these, just watch the light and you will begin to understand. Once the ECU has flashed all stored codes, it will loop through and repeat them. Now, for example, you see two long flashes followed by two short flashes. This means you have a code number 22. By looking at the following chart, we see that 22 is the code for the knock sensor. Once you have read and recorded all faults, turn the ignition off and disconnect the black connector.

If you have done the above procedure, you will likely wonder what the green T-shaped connectors are for. These are for a more active code reading procedure called D-check mode in the Subaru manuals. To perform D-check, start with both connectors disconnected, start the engine, allow it to warm up, then turn it off. Next, connect the test mode connectors (green T-shape). Turn ignition to ON position without turning on engine. At this point if the check engine light does not come on, it is faulty and must be fixed before continuing. Depress accelerator pedal to floor, return to half throttle and hold for two seconds, then release. Start the engine. Now the light can blink in two different ways. If everything checks out so far, it will blink to indicate a number 01, 02, 03, 04, 05, 06, 07, or 08. If a problem is already detected, it will blink according to the chart below. Either way, your next step will be to drive the car with the test mode connectors connected. You must drive over 7 mph for at least one minute, and shift up to 4th gear if you have a manual tranny. Now, either you will discover any trouble codes, or if you have none it will blink at a steady rate.

Here are some pictures with notes on them that will hopefully shed some light on the little black connector problems and where they are. A larger and updated image can be found here. The images below where I have labeled the ECU are incorrect. The images below are of the TCU.


How to reset the ECU

The following procedure tells how to erase the trouble codes from the ECU. This procedure will NOT reset the ECU. To reset the ECU follow the procedure below.

ECU clear memory procedure is as follows for auto and manual transmissions:

1.  With engine at operating temperature, turn engine off. Place gear shift lever into park (auto transmission cars only).

2.  Locate the two ECU check connectors, for most cars they are located under the steering column and consist of a black plastic male and female connector, and a green male female connector. The exact location of the connectors varies with the different year models, but generally they are located under the steering column on the drivers side.
NOTE: sometimes they are still taped over with some small amount of plastic tape, so look hard, they will be there!
With the ignition OFF, connect black to black and green to green.

3.  Turn on ignition, do not start the engine, (and for auto transmission, cycle the gearshift lever from park to neutral and back to park), depress the accelerator pedal to full throttle and hold for a few seconds, and then release. Start engine and then drive for at least one minute, keeping road speed above 10 mph.

4.  At this point the check engine light should start to flash the all clear signal (steady 1/2 second interval flashes). At this point the ECU's memory is cleared. If the check engine light does not flash, or indicates some other sequence, there is a fault present in the system, and should be checked for necessary repairs.

5.  Once done, stop the car and turn off the engine.

6.  Disconnect the plugs.

To completely reset the ECU (TCU as well) you can use one of the following methods. Note: Resetting the ECU does erase the codes in memory. The first method is commonly referred to as the "battery dance". The second method is to remove the EGI/TCU fuse (fuse 14). Both methods essentually do the same thing, the only difference is that the fuse method only works on the first gen legacies, and you don't loose your radio presets. You want to perform both these procedures on a "cold" engine. Leave it sit for a while, or overnight and do it in the morning.

1.  Disconnect the negative battery terminal cable for 30-45 minutes. Or pull fuse 14 labeled (EGI/TCU) from the fuse panel at the driver's kick panel for 30-45 minutes.

2.  Reconnect the negative battery terminal cable, or re-insert fuse 14.

3.  Turn off all your accessories.

4.  Start the car, but DO NOT touch the throttle at all.

5.  Let the car idle for 10-15 minutes, or until the car is at normal operating temperature. Again, do not touch the throttle.

6.  Turn the ignition key to the "OFF" position. That's it

Trouble Code Table

Item Contents of Diagnosis Fail-Safe Operation
crank angle sensor No signal entered from crank angle sensor, but signal (corresponding to at least one rotation of the crank) entered from cam angle sensor none
starter switch Abnormal signal emitted from starter switch Turns starter signal switch OFF
cam angle sensor No signal entered from cam angle sensor, but signal (corresponding to at least two rotations of cam) entered from crank angle sensor none
Injector #1 Fuel injector inoperative (Abnormal signal emitted from monitor circuit) none
Injector #2 Fuel injector inoperative (Abnormal signal emitted from monitor circuit) none
Injector #3 Fuel injector inoperative (Abnormal signal emitted from monitor circuit) none
Injector #4 Fuel injector inoperative (Abnormal signal emitted from monitor circuit) none
Water temperature sensor Abnormal signal emitted from water temperature sensor Adjusts water to a specific temperature, maintains radiator fan "ON" to prevent overheating
Knock sensor Abnormal voltage produced in knock sensor monitor circuit Sets in regular fuel map and retards ignition timing
Air flow sensor Abnormal voltage input entered from air flow sensor Controls the amount of fuel (injected) in relation to engine speed and throttle sensor position
Air control valve Air control valve inoperative (Abnormal signal produced in monitor circuit) Prevents abnormal engine speed using "fuel cut" in relation to engine speed, vehicle speed, and throttle sensor position
Throttle sensor Abnormal voltage input entered from throttle sensor Sets throttle sensor's voltage output to a fixed value
Oxygen sensor Oxygen sensor inoperative  none
Vehicle speed sensor Abnormal voltage input entered from vehicle speed sensor Sets vehicle speed signal to a fixed value
Canister purge solenoid valve Solenoid valve inoperative none
A/F learning control Faulty learning control function none
Idle switch Abnormal voltage input entered from idle switch Judges OFF operation
Duty solenoid valve
(Wastegate control)
Duty solenoid valve inoperative none
Atmospheric pressure sensor Faulty sensor Sets sensor to 760 mmHg
Pressure sensor and pressure exchange solenoid valve Faulty sensor or pressure exchange solenoid valve inoperative Prevents abnormal supercharging pressure using "fuel cut" in relation to engine load
Air flow sensor Use of improper air flow sensor none
Neutral switch Abnormal signal entered from neutral switch none
Inhibitor switch Abnormal signal entered from inhibitor switch none
Parking switch Abnormal signal entered from parking switch none

How to test the Throttle Positioning Sensor (TPS)

Here's the procedure out of the chilton's manual to test the TPS switch.

1.  Turn the ignition switch ON. 2.  Measure the voltage between the ECU connector terminal and ground.

Voltage should be as follows:
Terminal 2 and ground: 0.7-1.6 volts with the throttle fully open
Terminal 2 and ground: 4.4-4.8 volts with the throttle fully closed
Terminal 3 and ground: 5 volts
Terminal 1 and ground: 0 volts

3.  Ensure voltage smoothly decreases in response to throttle opening. If measurements are not within specification, check and repair ECU terminals or harness.

4.  Disconnect the connector from the throttle sensor. Measure the resistance between throttle sensor terminals 2 and 3. Resistance should be 12 kilo-ohms.

5.  Measure the resistance between terminals while slowly opening the throttle valve from the closed position.

Resistance should be as follows:
Terminals 2 and 4: 10-12 kilo-ohms with the throttle valve fully closed
Terminals 2 and 4: 3-5 kilo-ohms with the throttle valve fully open

6.  Ensure resistance smoothly increases in response to throttle opening. If measurements are not within specification, replace the throttle sensor.

7.  Disconnect connectors from ECU and throttle sensor.

8.  Measure resistance between ECU connector and throttle sensor connectors.

Resistance should be as follows:
ECU terminal 1 and throttle sensor terminal 2: 0 ohms
ECU terminal 2 and throttle sensor terminal 4: 0 ohms
ECU terminal 3 and throttle sensor terminal 3: 0 ohms

9.  Measure resistance between throttle sensor connectors and ground.

Resistance should be as follows:
Terminal 2 and ground: 1 mega-ohm minimum
Terminal 4 and ground: 1 mega-ohm minimum
Terminal 3 and ground: 1 mega-ohm minimum

10.  If resistance is not within specification, check and repair the harness or connector.

Here is a diagram for the pin-outs.

Basics of Installing an Unorthodox Underdrive Pulley

First thing I did was take out the radiator fans, not too hard. Next took the belts off, the pulley tensioners on these motors are quite ingenious. Then came the second biggest pain in the ass in the project; loosening the bolt for the main pulley and getting it off. I had no one to help me, stuck a BIG screw driver down the little access hole on the auto tranny, and tried to hold the two while not popping my shoulder out... I finally get the bolt off. Then the stupid pulley wouldn't come off. I banged on the inside of it with a small hammer for a while, finally got that off, after struggling for a while. Cleaned the shaft, of course the stock pulley slides on and off a lot easier now.

The biggest pain in the ass was getting the Underdrive pulley to fit. The key-way did not fit. I'm pretty sure the main thing was that it was not tall enough. I ended up filing the key way deeper, and slightly wider so it would fit on. I got it on almost all the way, maybe 1 mm or 2 that I didn't just push on with my hands. Then I just cranked it down the rest of the way with the bolt. The subie mechanic I talked to recommended 110 ft/lbs of torque on that bolt, as well as lock titing the threads. Reassembled in reverse order, the belts they sent fit perfectly. They were the gates Unorthodox recommended. I got my pulley from SPO Motorsports. They had probably one of the better prices.

I've got pics of the difference between the stock pulley and underdrive one in the Image Gallery.

Customizing the stock Intake - MAF Sensor Issues

Well I did my intake mod before there was really anything out there for my car. What I did was take a generic bracket that fit a cone style filter, and modified it to fit my car. I took the stock air box off, got the bracket centered on the MAF sensor, marked where the holes needed to be drilled on the bracket, and drilled the holes. You will need to pick up some nuts and washers that fit the stock bolts that hold the MAF sensor to the stock air box. After the bracket was connected I needed to make something to keep the intake arm from sagging. I took a piece of metal, bent it so it supported the intake arm, and could be secured to the fenderwell. The trick with this piece was making it high enough that the intake arm wouldn't sag, yet not hit the hood. Be patient and try and get some help. After getting everything lined up and drilled I painted the piece. I then used a large (I think 4" or more) hose clamp to secure the intake arm to my bracket. I then tightened everything down and made sure there was no clearance issues. There are pictures of my mod in the Image Gallery.

I have sort of an addendum to this mod. Since the install of this, about 4-5 years ago I had an intermittent problem for about a year or so. The car would suddenly loose power, and sometimes die. One day it got extremely bad, the car would not run, was sputtering, choking, and check engine light was on. I let the car sit for a couple minutes, then it started up fine. Well I checked the codes and boom, I had a MAF sensor code. This confirmed my suspicion. However I was not going to replace a $300 MAF sensor on a whim. After replacing the MAF sensor I had no problems.

By adding an aftermarket intake or doing my little mod you are seriously setting yourself up for a MAF sensor failure. It is an extremely sensitive sensor, and is vital in your engine's operation. I still have my intake setup, however I have added some extra bracing to help eliminate some vibrations. Vibration and air turbulence are two main causes for the sensor's failure. I have some pics of the new bracing in the Image Gallery, and sort of what each piece looks like.

I would recommend doing a snorkusectomy. You can read Marc's how to on his Subaru Site. With the snorkusectomy and a drop in K&N panel filter you should see some gains in power and not have to worry if your MAF sensor is going to die.

Return to top