SPN 677 FMI 20: Meaning, Symptoms and Troubleshooting

Diagnostic Code

SPN 677 FMI 20: Meaning and Fix

SPN 677 FMI 20 indicates the Engine Starter Motor Relay circuit has reported a voltage signal that has drifted above the expected high limit. This typically means the ECM detects a short-to-battery or a faulty relay that is not de-energizing correctly. Technicians often encounter this after a jump-start procedure or a failed starter motor replacement, leaving the relay circuit energized with residual voltage.

Common Symptoms

  • No Crank Condition: Engine fails to crank because the ECM disables starter activation to protect the motor from continuous engagement.
  • Intermittent Start: Starter motor engages sporadically, often when the faulty relay receives a vibration that closes its contacts.
  • Battery Drain: A stuck relay keeps the starter solenoid circuit closed, causing a parasitic load that drains the battery overnight.
  • ECM Fault Lamp: The malfunction indicator lamp illuminates on the dash, alerting the driver to a detected electrical system anomaly.

Probable Causes

  • Shorted Relay Coil: Internal short in the relay winding causes the coil to draw excessive current, driving the monitored voltage high.
  • Wiring Harness Damage: Chafed insulation on the control wire creates a direct short to battery positive, bypassing the relay switch.
  • Failed ECM Driver: The ECM output transistor may fail internally, allowing battery voltage to leak back into the sensing circuit.
  • Corroded Connector: Terminal corrosion at the relay socket increases resistance, causing an abnormal high voltage reading at the ECM pin.

Advanced Technical Analysis

The ECM microcontroller monitors the starter relay control line through a pull-down resistor network. A voltage above the calibrated high threshold, typically 4.75V for a 5V logic circuit, triggers FMI 20. This condition persists for a debounce timer of 200ms to prevent false tripping from transient spikes.

Electrical breakdown analysis focuses on the relay flyback diode. If this diode fails open, the inductive kickback from the relay coil can generate voltage spikes exceeding 60V, which the ECM interprets as drifted high data. This often occurs after prolonged use with a weak battery.

As a safety fallback, the ECM disables the starter enable output and sets a torque derate to 0%. This prevents engine damage from an unexpected starter engagement. The fault becomes active and requires a key cycle or a cleared code to reset the starter control logic.

Long-term diagnostic strategy involves checking the relay duty cycle and measuring the actual voltage drop across the contacts. In workshops, this code frequently appears after a technician replaces the ECM without verifying the starter relay, leading to a recurrence. Always test the relay with a load before replacing expensive components.

Step-by-Step Troubleshooting Guide

  1. Visual Inspection: Inspect the relay socket and wiring for signs of melting, corrosion, or chafing. Repair any damaged insulation found.
  2. Voltage Measurement: Measure voltage at the relay control pin with the key ON. Expect 0V. Any voltage above 1V indicates a short.
  3. Relay Bench Test: Remove the relay and apply 12V to the coil terminals. Measure resistance; it should be 70-100 ohms, not shorted.
  4. ECM Pin Check: Disconnect the ECM connector and measure resistance from the relay pin to ground. High resistance indicates an open circuit.