I’ve always been pretty fond of Honda’s engineering. Toyotas are a definite go-to for freaking indestructible little cars that just keep going for over a decade… or TWO, if they’re not used in areas where the roads are salted, but there are a few places you can tell some corners were cut to keep the vehicle on budget. It’ll be like certain elements of the interior feel cheap and nasty, because they used all the budget on the chassis and powertrain. Honda has a certain sort of fit and finish to everything that’s a cut above, but this also pushes up the price of their vehicles a bit.In previous versions of the Civic, there were a couple of common trim lines. There was the EX which was usually the lower trim and had a smaller engine size, the DX which had the larger engine but fewer interior features, and the SI which had the larger engine, variable valve timing, and all the power accessories and stuff. The corresponding Acura models were pretty much a fancier SI.
Around 2000, the auto industry met a very strange set of circumstances. The market had dramatically fragmented in two different directions, with the domestic Big Three (Ford, Chrysler, General Motors) investing ENTIRELY in large sport futility vehicles, whereas overseas brands such as Toyota, Honda, Subaru, Suzuki*, Kia, Hyundai, Nissan, Mitsubishi, and a host of others I’m probably forgetting about off the top of my head, were remaining loyal to their longtime customers and their preferences for smaller, fuel-efficient vehicles. The sales and pricing tactics behind the large SUVs were all messed up too – the vehicles were mostly being leased instead of sold outright, which brought in a lot of extra money to the automakers’ financing divisions in interest and fees, but also had the unfortunate effect of encouraging the automakers to once again start pumping out disposa-cars that were made to last up to 80,000 miles or 6 years then become unserviceable scrap metal.
So, there are some possible reasons as to why Honda may have been seeking to reduce the price of their 2001 model year vehicles (which would have been spec’d out and designed in 2000 and prior years). I suspect one of them may have been the dot-com crash, but who knows.
So, at first glance, a Civic VP seemed pretty normal for a lower trim line car. It had a pretty basic interior with cloth seats, a cheaper audio system, manual crank windows, no power accessories to speak of other than power steering (which was perplexing as it was by no means actually needed!), and used the D17A1 engine which didn’t have VTEC variable valve timing. That seems perfectly reasonable. It also made use of the D17’s lean burn capability to save on fuel, and could go damn near forever on one full 12 gallon tank, when it was working right.
The key is, when it was working right.
Now, to allow this to make sense to those not already intimately familiar with the systems to the point of them having caused headaches, here’s a little introduction to closed-loop electronic fuel injection.
The stoichiometric ratio by mass of gasoline to air needed to allow for complete, optimal combustion, is 14.7:1. For sake of simplicity, let’s assume that your gasoline were pure octane (C8H18) – the stoichiometric equation would be 2 C8H18 + 25 O2 → 16 CO2 + 18 H2O.
If you add too much fuel, you get unburned hydrocarbons and very nasty exhaust. You can, however, allow the gasoline to be the limiting reagent by adding more air to some extent and it works fine, although if you go too far, preignition becomes a problem (engine knock). The engine will usually be allowed to run rich during hard acceleration to avoid knock, with some “scavenging” possible downstream and in the catalytic converter.
Almost all modern automobile engines use electronic fuel injection. This system uses software or even analog electronics (in very old variants like early Bosch Jetronic) to precisely meter out fuel to each cylinder in a manner that keeps it at 14.7:1. The feedback loop relies on the signal from an oxygen sensor in the exhaust stream to measure the amount of oxygen remaining after combustion has taken place.
The sensors are of one of two designs. Earlier designs are a “narrow band” type where the output cycles from a higher voltage to a lower one quickly as the oxygen concentration crosses a certain threshold which closely corresponds to the system running at an optimal ratio. The software reacts to this “bang-bang” output by adjusting a short term fuel trim value up and down repeatedly to keep it right at the threshold. If you are using an OBD2 interface on a vehicle compatible with this, you can monitor the short term fuel trim value while the engine runs and see it, as well as the oxygen sensor voltage (in most cases) cycling up and down. Normally the cycling should be fairly tame, but wild cycling of like 10% indicates a problem, usually the damn pricey knuckle-buster ass sensor… 😉
If you are using an OBD2 scanner (and not watching the display while driving, I hope!) on a vehicle with a narrowband sensor, you will also observe that the system cycles from closed-loop to open-loop mode during hard acceleration. This is normal and is a limitation of the narrowband system. It simply isn’t capable of being used while the software has called for richer conditions to avoid engine knock. Once you let off the gas a bit, it will resume closed-loop operation.
These narrowband sensors are usually pretty much identical, except… on this stupid Civic VP.
More and more vehicles in current production have gotten away from the limitations of the narrow-band sensor by switching to wideband sensors. These output an analog voltage level without a sharp transition and can be used to monitor and maintain oxygen levels corresponding to ratios other than 14.7:1. Now you can have full closed loop control during hard acceleration AND the system can pretty much call for and maintain any ratio it wants, including anything from 10:1 while you’re flooring it up a freeway entrance to prolonged lean-burn operation while cruising at highway speeds.
In any vehicle made after 1997, EPA standards require two oxygen sensors, upstream and downstream of the catalytic converter. The downstream sensor’s purpose is to allow a diagnostic cycle to run as you’re driving to ensure that the catalytic converter is actually working. In a lot of vehicles, that’s all it does. In some really oddball systems, it is actually used as part of the air/fuel ratio regulation. Guess who did this—–
Enter the horrible, godawful engine management system of the Civic VP. In the process of lowering the bill of materials cost for the car, Honda undoubtedly approached their usual systems manufacturer, the automotive parts giant Nippondenso, with a specification, and were not pleased with the cost estimate, so they got creative and turned instead to Keihin Corporation for the system. Keihin is best known for their motorcycle components and fuel injection systems, and I feel like they got in a bit over their head on this project as it would have been unlike anything they’d worked on before. I’ve never heard of a motorcycle with a lean-burn feature, at least not from that time period.
For whatever twisted reason, Keihin did not use a wideband oxygen sensor, even though those were available at the time and were already being used in some passenger car and SUV applications… notably to help the Big Three’s SUVs meet California emissions standards by allowing weird air-fuel ratios. Barely.
NGK, a big manufacturer of spark plugs and ignition components, also makes oxygen sensor elements. As I recall, the three big manufacturers of them are Bosch, NGK, and Nippondenso, with their parts being used by pretty much everyone. In some cases the sensors are even successfully interchangeable! This was the case on my old 1995 Civic; it really didn’t care whose “universal” heated oxygen sensor you put in as long as you wired it in the right pinout. It’d just come right up and enter closed loop operation. Of course, that engine management system was wonderfully primitive… few variables, no EGR valve, no variable valve timing. It was hilariously simple. Well, Keihin found out that NGK could manufacture narrowband oxygen sensors with a higher oxygen concentration threshold than you’d get from a 14.7:1 ratio. Great! Now they can keep the lean-burn mode right on target! Oh wait, the custom narrow-band sensor costs $600. Eh, that’s ok, we saved so much money!
…… I have absolutely no idea how they were getting the 14.7:1 ratio off this system. It seemed like it had to be derived from the downstream sensor SOMEHOW, but how was never clear, nor was I ever able to make it work like this ever again once The Product Lifecycle Endenining happened.
“Product Lifecycle” might as well be a four letter swear word stronger than “fuck”**, by the way. Since the late 1990s to early 2000s or so when the freaking beancounters took over everything, when an electronics manufacturer introduces a product, its entire future has been planned out in advance. It will be manufactured for only so many years, then it will enter “lifetime buy” status wherein production will continue to order for a certain window of time, but then it’s closed to new orders and the device will never be manufactured again. If you’re lucky, the device may be licensed out to another manufacturer for second-source production, but even then, most of those manufacturers also put it on a fixed lifecycle. It probably increases profit margins by some piddling tiny amount for the companies who employ this system, but in the end, it creates tons of extra costs for the manufacturers of equipment using these parts, and for the end users trying to keep their stuff in service. I should add, it also scares me a little when I see that Dell EMC servers contain a component that they named the “Lifecycle Controller”. I don’t know what this does. I don’t want to know what this does.
So, it seems that Honda really dropped the ball hard here. On the earlier Generation 6, 5, and prior Civics, they really didn’t care whose narrowband sensor you put in them, so it probably wasn’t a big deal sourcing parts – if Nippondenso couldn’t deliver them that month, they could go to NGK, or Bosch, it didn’t matter much at all. With the Keihin system built to support lean-burn on the D17A1, it became a unique, critical part, that nobody else made, and it was expensive….. and they didn’t bother to secure a long lifecycle or a large quantity of extra sensors. Once the sensors reached end of life, the fun began.
While the cars were still in production and new vehicles were still in the sales channel, the sensors ran out. They were originally $650 each through the dealerships while they were available, but after that, the cars all became almost impossible to drive. Once in a blue moon, someone would come across new old stock sensors in a parts warehouse somewhere, but those all dried up quick, and the usual Chinese dumpshit houses flooded the market with supposedly compatible sensors that weren’t. In most cases, they still retained the original $650 price tag, though. The last time I checked, there was no option to keep these cars in service once the sensor failed, but in most cases, they stayed in operation by sheer luck by virtue of being low enough in mileage to have not worn out the sensor.
I had planned for a while to try replacing the custom narrowband sensor with a wideband sensor and an Arduino board set up to just keep reading its output voltage and simulate the output of the custom narrowband, but the specifications on where this thing were to have been set were not available anywhere. In addition, this was complicated by the fact that the quite active community of hackers and performance tuners who had worked out and documented just about everything on the earlier Honda ECMs couldn’t figure out anything about the Keihin one other than how to delete the RFID immobilizer daughterboard that required expensive keys. It was apparent from the behavior of this ECM and what it provided via OBD2 PIDs that it did not have an analog to digital converter on the pin that read the sensor – more like just a logic input and a Schmitt trigger, if even that.
Even though measuring the exact output voltage from a narrowband oxygen sensor is not useful for determining the oxygen concentration beyond whether you’re above or below the transition point, it is vital for diagnostic purposes. For one thing, a common trick is used in which a resistive voltage divider is connected to the output pin. This applies a sentinel voltage to it through a high resistance, which the software looks for. The sensor only works once it’s heated to a high temperature (250 degrees C or so…?) and behaves like an open circuit otherwise. If the sentinel voltage is present after startup, this indicates the sensor is not ready for use and the system will need to remain open loop until it warms up more. A timer is started at this point, and if the sensor doesn’t come up after a sane and reasonable warmup period, it sets a fault code for oxygen sensor open circuit, falls back to open loop, and lights the check engine light. Cracking of the sensor element is a common failure mode.
There are also failure codes for slow response, or a voltage level that’s just totally out of whack, each with a potentially useful and descriptive fault code to let you know whether it could be an issue at the sensor or the wiring harness (+12 shorted to sensor output, or sensor output shorted to vehicle ground? Well Excuse Me, Princess)
The only PID present from this system was “Equivalency Ratio”. The software would not provide this value when it was running open loop. In fact, it seemed to have no real sanity checking whatsoever, though it would exhibit a pair of strange reactions to the sensor being incorrect or even absent.
The first thing it’d do is, if you had JUST cleared the fault codes, it would run open loop for one drive cycle, and would have a pending fault code for oxygen sensor no response (or something like that). It was driveable, but fuel efficiency was terrible as to be expected, with stinky rich exhaust. I remember driving it like this from Orlando to Miami once, a distance of about 240 miles, and having to stop for gas with it almost empty after about 200. The 18 mpg or so it turned in would make sense for a big SUV, but not for that car.
The second thing it’d do, after this first drive cycle, would be to turn on the Check Engine light. Makes sense, right? However… it would begin trying to use the incorrect reading from the sensor as well, and would do some Very Bad Things. For one, if you were cruising at a low engine load at about 40 mph, it would try to activate the lean-burn mode, using the output of the sensor to tune it in, and would begin running so rich it’d actually flood itself while already running, leading to a great volley of nonstop misfires. Once this started, you could break out of it by manually downshifting, but you could not accelerate at all unless you did. If you did drive it around normally, only possible by using the D2 and D3 settings on the transmission, it would turn in an impressive (for the wrong reasons!) 8 miles per gallon. I can’t even imagine what the air/fuel ratio was when it did this, but it was definitely so rich as to entirely prevent proper combustion. Fault codes would be set both for “system too lean” and “system too rich” – it was horribly confused! It pretty much had to remain married permanently to a scan tool so you could reset the ECM EVERY TIME YOU STARTED THE CAR to get back into that open-loop state. Strangely, there was a slight difference if you were to leave the downstream sensor unplugged or not – as I recall the engine would entirely stop after a minute if you had the downstream unplugged, but it’d keep running with it present, suggesting that at least something was happening with its reading. The downstream sensor, by the way, DID have analog to digital conversion and you could read its output voltage.
I won’t get into the goofy ass story here of what finally happened to the car, other than that I was glad when it finally left service for good.
* When have you ever seen any MARKETING for Suzuki? Nice vehicles, but it’s like nobody’s ever heard of them.
** just in case the count of times I say “fuck” on this site was getting critically low or something