K2500 SES and poor fuel economy

The K2500’s latest fuel economy: 8.7 mpg. I almost ran it out of fuel driving home on Monday. When I left work, the needle said I had a third of a tank. Then, by Rio Bravo, it was hovering in the red. After I climbed the first hill and went down the other side, the engine started sputtering. Fortunately, I got it to run again after the road leveled out, and I filled up at the first station in Isleta.

The SES light is still on, and when I pulled the codes, I got just one code, 42:

Trouble Code 42 indicates that there may be a malfunction in the Electronic Spark Timing (EST) system.

During cranking, the timing is controlled by the ignition module while the ECM monitors the engine speed. When the engine speed exceeds 400 RPM, the ECM sends a BYPASS signal to the ignition module which switches the timing to ECM control. The ECM calculates what the timing should be then “tells” the ignition module via the EST circuit.

An open or ground in the EST circuit will stall the engine and set a Code 42. The engine can be re-started but it will run on ignition module timing.

The conditions for setting this code are:

  • System in BYPASS mode but the ignition module is still controlling timing
       - or -
  • Engine speed > 600 RPM with no EST pulses (ECM controlled timing) going to the ignition module for 200 msec.

Typical causes for this code include:

1) BYPASS line is open or grounded
2) EST line is open or grounded
3) PROM or CALPACK not seated properly in the ECM
4) Poor connections between ignition module and ECM
5) Poor routing of EST harness and/or poor quality ignition wires (EMI induced electrical noise)
6) Faulty or incorrect ignition module
7) Faulty ECM

Now, I recently replaced the ignition module, so I don’t think that’s the problem. Most likely whatever is causing this issue is contributing to the poor fuel economy.

Also, apparently disconnecting the battery for ten minutes will clear stored codes. I should do that and see if it throws this code again.