Personally, the biggest "bell and whistle" in a vehicle is the automatic transmission. If available, buy a car/truck with a standard transmission. You'll have total control of your vehicle. I bought a new Geo Metro in 1998 equipped with a manual shifter. When I got rid of this 3-cylinder car in 1994 with 250,000 miles on the odometer, it still had the original rear brakes. I used engine braking to bring the car to stop.
I had a similar problem with my old Pontiac Grand Prix. It would just stop for no apparent reason, at any time, and then would easily start up again. I was lucky. A friend told me to suspect the MAP. I back probed the connector with the engine running, and everything looked OK…. including the PWM signal going to the ECM. The manual gave limits on its frequency range, and it looked OK with my portable scope. The frequency changed within the specified limits when I rev’ed the engine. I checked with the car parts store and they didn’t accept returns on any sensors. Anyway, I didn’t want to ‘shotgun’ the problem by just replacing stuff until I got the car working… I wanted to know what was wrong. So I drove around with the scope on the seat of my car for a week, with a wire going out to the MAP sensor. One day it failed. When I restarted the car, the signal on the scope was noisy. I thought my back-probed connection was loose, but it wasn’t. I happened to hit the MAP while fiddling with the connector, and the noise changed, the signal went out of the normal frequency range, and the car engine died. I called the wife to take me to the car parts store for the $40 sensor. Problem fixed… until a couple of years later, when it started acting the same way again. New sensor fixed it again. GM must have had a problem with their MAP sensors.
I had a similar problem, and since the car was several years old, and I had neither the time nor tools to do that kind of diagnostics, I sold the car to a friend, after first explaining to him that it had some sort of fuel system intermittent problem, and there was no way that I would promise that it would get him home. But with those caveats understood, he still purchased it, and eventually found the problem, which was an intermittent short circuit to ground on the supply side of one of the fuel injectors, which would cause a system reset, which meant that the fuel would not come back on until the engine was switched off and re-started. Of course, the list of faults that can produce a system reset on that vehicle was fairly long, and I did not see the list until a year later.
There are a couple of minor problems with the story, though:
1) The mass airflow sensor is a pollution-control device. It only helps the engine fine-tune the fuel-air mixture; it's not a critical component (which is why the engine continued to run OK when he disconnected it). If the engine died when the MAF was plugged in, it was more likely to be a short in the heater circuit than anything else, I'd guess.
2) Nobody in their right mind thinks "firmware" first when an intermittent problem shows up. They'd think "bad ground," "flaky solder joint," or "fault in cable harness" first. If this really was the result of a firmware bug shutting down the whole engine in response to an out-of-range MAF reading, the author just made what was probably the luckiest guess of his career. :) And somebody at Bosch or Delphi needs to be fired or at least forced to pee in a cup before s/he's allowed to write any more code.
Joe, Thanks for sharing. Really enjoyed your article. 2 remarks: 1) you did a great job of capturing the essence of the Engineer's blessing & curse - which is you can basically solve any problem very cost-effectively yourself. The issue is the people that should be solving these problems for you (e.g. your mechanic, the manufacturer, etc.), fall far short of the mark, creating yet one more thing that needs de-bugged properly by you. Personally, my problem is i am left with a troubleshooting to-do list that will keep me busy for a long time to come and those that have job roles that should be resolving these problems for me offer little-to-no help. What is an Engineer to do ? I guess the typical non-Engineer just settles things by buying their way out - they'd buy a new car for example. Remark 2) I hope you told the mechanic that called back I can tell you, but it will cost you handsomely. Your hard-earned knowledge would certainly be worth that and is fair pay-back given he should be the one solving YOUR automotive problems, not the other way around! Isn't that what he gets paid for? On the bright-side, at least he did not charge you without fixing the issue and was up-front about things. This is unfortunately not always the case when it comes to repairs.
This story reminds me of my dad's advice about buying cars from years back: Though he was an auto mechanic who made a living fixing cars, he always instructed his children NOT to buy cars with all the bells and whistles, which at the peak of his career pretty much amounted to things like electric windows. He saw these extra features as just additional points of failure in a car.
I enjoyed your writing and hey you fixed the problem! I wanted to relate a similar type scenario. This is a true story. My old trusty and well loved '91 Toyota Land cruiser broke down for the first time in my 11 years ownership at the Nissan dealer parking lot. I discovered this upon attempting to drive away having just signed the dotted line to buy an Armada! Talk about weird. Anyway, long story short, I had to debug what was fairly quickly identified as an electronics issue right there in summer heat of the Nissan customer parking area. Well, I had enough experience to try swapping a few relays around. That and a few other standard attempts didn't do it so I had to drive home in a loaner Nissan while waiting for the new truck to arrive. Desperation being the catalyst, I came across a break out of the ECM connector pins and expected voltage, what they were connected to. Back to the truck next day and half an hour later DVM in hand I identified some sensor device (I forget which one now) that wasn't outputting expected voltage. Went to parts house and purchased one (I think less than $50 luckily) and hey presto the cruiser stopped pouting and was running again. I felt quite pleased with myself but now I was pouting at having to very soon say bye-bye to my trusty and not at all rusty friend for 11 years.
Great article Joe. Funny that as a firmware engineer, you saw this as mostly a firmware problem. As a hardware engineer, I see it mostly as a hardware problem -- a failed Mass Air Flow sensor. I guess in reality it's a little bit of both.
Your story ranks high on the list of the worst automotive debugging nightmares I've heard. I'm glad you were able to resolve it on your own.
NASA's Orion Flight Software Production Systems Manager Darrel G. Raines joins Planet Analog Editor Steve Taranovich and Embedded.com Editor Max Maxfield to talk about embedded flight software used in Orion Spacecraft, part of NASA's Mars mission. Live radio show and live chat. Get your questions ready.
Brought to you by