Best of Deals Car Reviews Repair Shops Cars A-Z Radio Show

94 Mazda MX-3 Surges

1994 Mazda MX-3
1.6L 16V DOHC
50,000 miles

Vehicle was parked unused for 9 years under a carport. In 2015, brakes, battery and fuel pump were replaced and vehicle resumed service. Initially, vehicle ran well, but seemed slightly lacking in power. After 6 months, a rough idle was noticed, with the vehicle exhibiting what seemed like an intermittent misfire at idle.

At this point the spark plugs, plug wires and distributor rotor were replaced without a successful resolution to the problem and the misfire grew worse.

Eventually, the Check Engine light started blink codes for the Mass Airflow Sensor and the Throttle Position Sensor. Both were replaced which caused the Check Engine light to stop, but did not have any effect on the idle or lack of power.

Recently the transmission HOLD light began flashing from time to time. This resulted in the Transmission Speed Sensor being replaced, but did not resolve the flashing HOLD light. Transmission fluid was replaced, but still no resolution to the flash of the HOLD light.

Within the last 3 months, an Oxygen Sensor (Inversion) code from the Check Engine light and the engine will not rev past 2400 RPM. At 2400 RPM it will drop RPM’s and then surge back to 2400, drop and surge, drop and surge, until the throttle is released. Sometimes there will be a backfire through the intake. If the throttle is just at 2400, the surge cycle is slow, if the throttle is opened wider, the surge cycle is faster.

O2 sensor replaced, throttle body removed and cleaned, EGR valve tested, checked for vacuum leaks and inspected vacuum hoses, still surging. While the Check Engine light for the Oxygen Sensor (Inversion) has stopped, the codes for the Mass Airflow Sensor (08) and the Throttle Position Sensor (12) have returned.


For a car sitting that long, it is very difficult not to introduce fuel system problems once you resume using it. That would be my guess. Clogged fuel injectors, fuel filter, fuel pump. That condition may or may not throw an o2 sensor or lean/rich code. If it is bad enough to cause a misfire, it will throw a misfire code usually.

First step is probably to replace the fuel filter (if it hasn’t already been done recently) followed by a fuel system pressure test.

Thank you for the advice!
I have not replaced the filter, but did do a fuel pressure test that was outlined in AllData. Fuel pressures met all specs, but, that doesn’t necessarily mean the filter doesn’t need replacing. I will see if I can find a filter locally, so far, I’ve had to order all parts.
I’ve found that if I rev it immediately upon starting, it will rev beyond 2400. However, once the RPM’s drop below about 2700, it starts the drop and surge process. Ironically, it’s idling great now.

I notice you mentioned replacing the rotor but not the distributor cap. If that is true, I would try one now.

And the tires are almost totally unsafe, so get them replaced soon, meanwhile keeping your speed below 10 MPH.

Also the timing belt is probably overdue, if this engine has one.

The idle speed should hold pretty steady. Idle rpm surging and dropping on cars of that era is often caused by problems in the gadget that varies the idle speed for coolant temperature. When the coolant is icy cold, the idle speed has to be much higher. I had some surging on my Corolla of similar vintage due to a fault with that part a while ago. My solution was just to disable it, since it doesn’t get that cold in San Jose. That function is done differently car to car. Check w/your repair manual how it is done on your car, often it is a gadget called the idle air control. You might disable it to see if that solves the idle rpm surging.

Air leaks allowing unmetered air into the engine can cause surging too. Sometimes you can spray starter fluid at various places near the intake and head, if the rpms go up, that’s a clue you have an air leak near that spot. The backfire could be caused by an air leak or air fuel mixture problem, but could also be caused by a fault in the ignition system, or valve or valve timing problems.

If you have surging when driving down the road, does the speed of the vehicle correspond? When the engine rpms surge higher, does the vehicle speed also go higher? If not, that could be the transmission or clutch (if manual) slipping.

If you can isolate which problems are transmission related and which are engine related, then work on solving one or the other first, that might be easier than trying to solve everything at once.

If you post your actual diagnostic codes, folks here will chime in some ideas.

Thank you George,
The vehicle speed does drop, but the rpm’s never surge past 2400. Ironically, if i rev it immediately after starting, i can rev past 2400, but once it has been started for about 5 seconds, or the rpm drops below 2700, it begins the problem again.

The codes are from OBD1; 8 and 12. I’ve reset them by disconnecting the battery and pressing the brake and the only one that has come back since i did that yesterday, is 12, which is the Throttle Position Sensor. I’ve checked the voltages on it and they are as follows:
TPS Voltages - Engine Running

Green\Red - Throttle Closed 4.9V; Open 4.9V
Blue\White - Throttle Closed .4V; Open 3.4V
Red\White - Throttle Closed .3V; Open 6.0V
Black - No Voltage

Voltages do not fluctuate when the problem is occurring.

MAF Voltages - Engine Idling

White\Red (1B PCME Pin) - 13.87V
Green\Black (2O PCME Pin) - 1.39V
Pink\Black (2P PCME Pin) - 1.68V
Blue\Black (2D PCME Pin) - .01V
Blue\LightGreen(2F PCME Pin) - 0V

These appear to be within limits, according to AllData.

I think you need to monitor the TPS voltage at the moment the fault is detected, after the fault is set the computer will lower the rev limiter to prevent damage to the engine.

Usually the TPS is supplied with a precision 5 volt source, and ground. There’s a third connection, it’s output, which varies between 0 and 5 volts as the throttle is moved from fully closed to fully open. So that explains 3 of the 4 wires. What the red/white wires is for remains a mystery. If the Blue/white wire above is what I think it is, the TPS output voltage, double check w/your service manual that it is reaching the proper high voltage it is supposed to reach at wide open throttle. 3.4 volt seems maybe a little on the low side. Also try to figure out what the red/white wire is for. I don’t see how it could be 6 volts when there’s only 5 volts supplies to the TPS.

One or more of those MAF pins should vary roughly according to rpm during parked-driveway testing. Does it? The way most of them work is the computer varies the voltage to a heated-wire circuit to maintain it always at the same temperature. With more airflow the computer has to increase the voltage, b/c the airflow going past would otherwise cool the heated wire to a lower temperature.

Thank you to all!
I have replaced the computer with a used one from Ebay, and the issue seems to be resolved. I can now rev past 2400, however, there is still a dead spot around 2400 where it wants to drop a bit, but pressing the accelerator pushes the RPM’s on up. I’m going to work on adjusting the TPS today, as I understand, it needs to be fairly precise in its position.

Thanks again!