Blogs Car Info Our Show Deals Mechanics Files Vehicle Donation

80s Honda giving PGM-FI constantly red

1980s Acura Integra PGM-FI turns red on the dash and constantly stays on red till engine turned off. It comes on red after exactly same amount of driving daily.

Separately FI is leaking gas and will be repaired tomorrow.

Other than this, the car runs very smooth.

Any tips on this PGM-FI turning red?

1987 Acura Integra Auto 170k miles
Happens in about 13 mins/ 4-5miles into the drive

If you walked into a parts store, and told the counter person you had an 80’s Honda and you needed brakes, they would just stare at you while crickets chirped in the background.




Have it looked at while it is at the mechanics.

+1. It would be beneficial to know the exact year, which engine, etc.
Also, how long (in minutes and miles) does it take to act up?

1987 Acura Integra Auto 170k miles
Happens in about 13 mins/ 4-5miles into the drive

That’s before OBD I think, but it still probably has a way for you to read the computer’s diagnostic codes. If so, that’s the place to start. It would be a fool’s errand to do more debugging until the fuel leak is corrected, as that may be the only problem and the cause of the dash light. Fix that, then if the dash warning light remains, come back here for some more ideas. Honda’s of earlier vintages tend to have fuel injection system relay problems from what we see posted here.

The repair was completed (gas leak through FI) successfully.

I am still getting PGM-FI turning red and stays red, as below:

  1. 15 mins / 4 miles in city drive
  2. 16 mins / 8 miles into HWY drive

It also happens when the car is on Park - when I first started, let it to warm up and watching for leak - maybe 5-10mins into it, it turned red - do not know exact time.

But driving it, it seem to be happening around 15 mins into the drive - and it stays solid red.

Any tips?

Not 16 miles but 8 miles (updated above)

Here’s how to pull the OBD1 codes on your 87 Acura.

The PGM-FI light is telling you that ECU has detected a fault and stored a Diagnostic Trouble Code.


The EFI computer has two ways to cypher how much fuel to inject into the engine. First is to use an assortment of sensors, the map/maf, throttle position, engine coolant temp, rpm, intake air temp. That is the only information carbureted engines have access, to set the air/fuel mixture, and they can run ok. So too can an EFI engine. In fact it only uses that set of information to start the engine and run it the first few minutes. EFI engines have a second source of info, the o2 sensor. the o2 sensor takes a few minutes to start working, but once it does, EFI engines uses the first set of sensors to get the air/fuel mixture approximately correct, then the o2 sensor to fine tune.

I have no way of knowing what’s causing your dash warning light of course. But if you’ll allow a speculation, say the computer – monitoring the o2 sensor – finds it has to pulse the injectors much more or less than it thinks it should have to based on the first set of sensors. That would confuse it and could trigger this problem. So you probably are looking at a problem from among

  • faulty o2 sensor
  • faulty map/maf sensor
  • faulty throttle position sensor
  • fuel pressure problem
  • faulty coolant temp sensor or intake air temp sensor
  • ignition system problem
  • compression problem
  • deferred maintenance problem, engine air filter, fuel filter, spark plugs, s.p. wires, distributor cap & rotor.

Rather than testing them all one by one, that’s what the diagnostic software build into the engine computer is for, to provide a diagnostic code and a clue where to start.

I have to count 2 seconds accurately between flashes to determine the code from ECU. It looks like the code is 1 - then it points to “Oxygen content” - this could be because of faulty O2 sensor, fuel supply system or wiring between O2 sensor and ECU.

O2 sensor is eight months old and it is OEM - modern sensors could have weird lifespan.

In 2015, I used Mobil 1 full synthetic - I started using syn-mix in early 2000s - car did better. In 2015, I noticed engine prob worked a bit harder to adjust - it has adjusted fine in a short while. I do not know if this has any relevance. Car only does 3-4k in a yr so change oil once a yr.

No it does not. Did you ask this question while your fuel leak was being repaired?

Does it say there’s too much O2, or too little? Is the problem too lean or too rich in other words? Diagnostic codes differentiate O2 problems between the two today. But maybe in that era they didn’t break it down to that level of detail. The ideas above all apply to O2 problems. Since you know it is an O2 problem, also consider vaccuum leaks and exhaust leaks. If I had that problem on my Corolla I’d start w/a thorough test of the entire vacuum system and test each vacuum operated device for any diaphragm leaks.

No it does not say more than "Oxygen content"
It identifies the three issues I mentioned above - nothing about leaks at all in this car.

There is another issue with totally different diagnosis - but after reset he says “all is well” - I reset mine twice but it is keep coming:
… they checked it out, made sure the intake gasket wasnt leaking, made sure the o2 sensors were okay, etc. they said they think some water may have gotten into my AEM intake, because we had some torrential rain last week…but he said the warning light came on b/c it started running lean. They said to change the oil, continue using premium gas, and they reset the light and all is well. only cost me $46 for them to tell me its alright…heh…oh well, peace of mind I guess…thanks for yalls advice.

Suggest to test the fuel pressure first. If that’s ok, disconnect the o2 sensor and measure its voltage output at wide open throttle and at idle. Warm engine. What voltage does it measure for both cases?

For comparison, a lean code for the o2 sensor on my Corolla, I start by checking these things

  • Ground connections, esp for the computer and sensors
  • Open in the wiring harness for the o2 sensor
  • Open in injector harness
  • Fuel pressure
  • o2 sensor voltages
  • Ignition system problems
  • Coolant temp sensor
  • Vacuum and vacuum sensors
  • Compression
  • ecu problem

Thanks @GeorgeSanJose

Took it to the m/c who did the O2 sensor

He says O2 Sensor is fine. But it is running rich and lean.
Prob could anything like:
MAP sensor (manifold abs pressure)
Faulty FI
Valve adjustment

Sounds like you are working the problem correctly. Best of luck.

It only throws code 1 ( “Oxygen content”), in cold start only.

Any significance of this?

It seems that on your car code 1 could either mean too rich, or too lean. That makes it difficult to diagnose with only that info, b/c first you have to guess which code 1 fault it is, rich or lean. If I had that problem on my Corolla I’d start with simple stuff that is easy to test first, like checking the entire vacuum system for leaks and inspecting the exhaust system for cracks/leaks , esp the part prior to the O2 sensor. Next I’d measure the fuel pressure and do a fuel pressure leak down test when the engine is off. Other than becoming disconnected, MAP sensors are not a common failure item, so I’d defer on that. Likewise the ECTS. Fuel injection problems are almost always some problem w/the fuel rail pressure. If the problem is just the warning light & the engine is starting & running fine, like new, not stumbling, no loss of power, unlikely to be an ignition system or compression problem. More difficult to test, but quite possible as a cause : You may have a cracked exhaust manifold or defective manifold gasket or clogged fuel injectors.

I’m not clear on why it’s throwing an oxygen code on cold start. It should be in open loop mode until the engine warms up, which means it shouldn’t care what the oxygen sensors are saying because until the engine is warm, the readings are going to be off anyway.

The only thing that comes to mind is that the engine is warmed up, it tries to bring the sensor online, sees that there’s a problem with the signal from the sensor, and remains in open loop rather than switching over to closed loop, and throws the code. In which case, you’d need to look at your sensors again, and the wiring to them.