I would've posted this on Altimas.net, but I figured it'd get lost in the static so I never bothered. You folks may appreciate it.
Recently, my 3.5's Check Engine Light (the FSM/ESM term is Malfunction Indicator Light, or MIL) illuminated in all its amber glory. The light presented with it no other symptoms, so I finished what I was doing that day, came home and threw myself into the ESM, which is rather less interesting than reading the dictionary, only more prone to put you to sleep.
The local network of wiring, sensors, controllers, chips and other various bits of silicon in the Altima is apparently vastly complicated, so I won't bore you (or me) by addressing it in detail here. However, one thing I found interesting is that the MIL shines only under two conditions:
1) If the ECM detects what Nissan considers a "serious" fault (such as a misfire), the MIL illuminates immediately and the ECM stores a trouble code.
2) If, however, the ECM senses a less serious problem, such as a vacuum leak, the MIL does not illuminate immediately. Instead, the ECM stores an identifying trouble code and waits to see if the same fault arises during the next trip cycle, which roughly corresponds to the next time you hop in the car and drive it around after turning it off. If the ECM senses the same fault, it trips the MIL light and you get to wade into the ECM or make the always-entertaining trip to your local dealer.
Your dealer uses a scan tool called a Consult to interface with the ECM directly. However, shadetree mechanics can manually pull the trouble code(s) from the ECM and, if desired, clear the code from memory, thus putting out the Check Engine Light, which incidentally shines like the fires of Hades at night against the dimmed gauge cluster.
To check the fault code yourself from the comfort of your own garage, put the ECM in "Diagnostic Test Mode II" by doing the following:
1) Sit your butt in the driver's seat.
2) Turn the ignition key to the ON position and wait three seconds. (Do not start the car.)
3) Fully depress and release the accelerator pedal five times in less than five seconds. (If you've got bad ankles, give up now and drive the car to the dealer.)
4) Wait exactly seven seconds. Fully depress the accelerator pedal and hold it down for about ten seconds until the MIL light begins flashing.
5) Release the accelerator pedal and start counting flashes to obtain the four-digit trouble code. Long flashes (0.6 seconds) indicate the first digit of the code; count the blinks one through nine and write down the first digit. (Ten blinks indicates a zero.) The next three digits follow in turn in the same fashion except with faster blinks (0.3 second) and a 1.0-second pause between digits.
The ECM code repeats intself until you turn the ignition key to the OFF position, at which point the ECM resets itself to standard get-in-and-drive-the-car mode. You can look up the trouble codes in the ESM/FSM; there's a bunch of them. In the ESM, refer to page EC-639. Additionally, if you get four blinks of ten (0000), the ECM is indicating no malfunction.
You can clear the code (and the annoying MIL) by holding down the accelerator pedal for more than 10 seconds while in Diagnostic Test Mode II. When you release the pedal, the ECM erases the trouble code(s).
In my case, my trouble code was 0442 - "Evaporative System Small Leak" - discussed on page EC-973. This could indicate anything from a poorly sealed gas gap to a leak in the evaporative recovery system underneath the car. I checked everything I could and decided to clear the code, thinking that maybe a slightly loose gas cap might've been the culprit. It apparently was, as the MIL hasn't shined since.
This is exactly the kind of problem that I hate -- hate
-- having dealer monkeys diagnose, as it takes hours and hours for them to dirty up the inside of my car, change all my radio presets, go through my trunk and glovebox and grease up the doorhandles and hood before they wander over and say, "Well, it's fine now." Noooo thank you.
One other interesting bit (well, I thought it was mildly entertaining at least) I ran across while poring through the OBD section was that the ECM often changes engine behavior when it senses a fault. We've all seen the posts from folks whose engines wouldn't rev past 2400 rpm, for example, and seen them report the bad news their dealers had provided: The MAF gave up the ghost.
Well, that may well be the case, but the fact that the engine wouldn't rev past 2400 rpm is not because the MAF died. It's instead because the ECM sensed a two-trip MAF failure, illuminating the MIL and storing an MAF trouble code. When this fault is detected, the ECM limits engine rpm to 2400 as a "limp home" or self-preservation tool. This is all well and good, but it doesn't necessarily mean the MAF is dead; it simply means that the ECM thinks the MAF is bad.
Bringing the car home, yanking the trouble code and clearing it will restore full engine operation until the ECM senses MAF failure again twice. And as anyone who works with computers or other electronic gadges knows, the more complicated the machine the more prone it often is to freak out occasionally with neither rhyme nor reason. Clearing out the code once before taking the car to the dealer and having him take the ECM's word as God's own before presenting you with an $800 bill for a new MAF in this case may well protect your checkbook and your sanity.
For those of you who've made it through my typical lengthy post, I salute you. The knuckleheads over at Altimas.net wouldn't have read past the third word, methinks.