SPN 628 refers to Program Memory, a diagnostic parameter that monitors the integrity and operational status of the non-volatile memory (typically Flash ROM or EEPROM) within an Electronic Control Module (ECM). Unlike sensor-based parameters that reflect physical phenomena such as temperature or pressure, SPN 628 is an internally generated diagnostic that the ECM uses to report on the health of its own firmware storage. This parameter is critical across virtually all heavy-duty diesel applications — including Cummins ISX, ISB, and ISL engines, Detroit Diesel DD13/DD15/DD16 platforms, PACCAR MX-13 engines, Volvo D13 powertrains, and Caterpillar C15 and C9 engines — as well as off-highway equipment from John Deere and agricultural platforms using Bosch EDC control units. When SPN 628 becomes active, it signals that the ECM may not be able to reliably execute its programmed instructions, making it one of the most serious fault conditions a technician can encounter.
Technical Overview
Program memory in a heavy-duty ECM refers to the storage medium — most commonly NOR Flash memory — where the ECM’s operating firmware, calibration tables, and control algorithms reside. During each ignition cycle, the ECM performs a self-diagnostic routine that includes a cyclic redundancy check (CRC) or checksum verification of the program memory contents. This process compares the stored checksum against a known-good reference value embedded in the firmware itself. If the calculated checksum does not match, the ECM interprets this as corruption, unauthorized modification, or physical memory degradation. The diagnostic is entirely internal — there is no external sensor or actuator involved. The ECM’s microprocessor (often a PowerPC or ARM-based architecture in modern controllers) executes this verification at boot-up and may perform periodic checks during operation. Some platforms, such as Cummins ECMs using INSITE-compatible modules, also validate the calibration partition separately from the executable code partition, meaning faults can be isolated to either the base software or the engine-specific calibration dataset.
J1939 Network Behavior
SPN 628 is reported over the SAE J1939 CAN bus within the Diagnostic Message 1 (DM1) frame, defined under PGN 65226 (0xFECA). DM1 broadcasts active diagnostic trouble codes from a given source address and is transmitted at a rate of once per second when faults are present, or upon request via PGN 59904 (Request PGN). The source address for SPN 628 will typically be the engine ECM (SA 0x00) or, in multi-ECU architectures, the specific module that manages program memory validation — such as a transmission control unit (TCU) or aftertreatment control module (ACM) if those units have independent firmware storage. The Failure Mode Identifier (FMI) accompanying SPN 628 is critical to interpretation: FMI 12 (Bad Intelligent Device or Component) and FMI 13 (Out of Calibration) are the most commonly observed, indicating either hardware failure of the memory device itself or a checksum mismatch due to improper reprogramming. Fleet telematics systems that monitor J1939 data — such as Cummins PowerSpec, Detroit’s Virtual Technician, or third-party systems using RP1210-compliant adapters — will capture and report this fault, often triggering immediate maintenance alerts.
Diagnostic Importance
A fault on SPN 628 is treated by the ECM as a critical internal system failure because the integrity of program memory is foundational to every other function the controller performs. If the firmware or calibration data is corrupt, the ECM cannot guarantee that fuel injection timing, emissions control strategies, engine protection thresholds, or aftertreatment regeneration logic are executing correctly. As a result, most OEM implementations activate significant engine protection responses when this fault becomes active. Cummins engines may enter a Derate Mode, restricting engine torque output and limiting vehicle speed to safe levels. Detroit Diesel platforms using the MCM (Motor Control Module) may prevent the engine from starting if the fault is detected during initialization. Volvo’s VCADS system flags this as a Level 3 fault requiring immediate service. Ignoring an active SPN 628 fault risks operating the engine under an unknown or corrupted control strategy, which can lead to over-fueling, emissions non-compliance, engine damage from improper protection thresholds, and in worst cases, complete ECM failure that requires module replacement rather than reprogramming.
Common Failure Patterns
The most frequent real-world cause of SPN 628 activation is an interrupted or failed ECM reprogramming event. If a technician performs a calibration update using Cummins INSITE, Detroit Diesel DiagnosticLink, DAVIE (DAF/PACCAR), or Volvo PTT and the process is interrupted by a power loss, communication dropout, or software error, the program memory can be left in a partially written state, triggering checksum failures on the next boot. Battery voltage instability during programming is a particularly common contributing factor — voltage drops below 12.8V during Flash write cycles can corrupt memory sectors. Physical degradation of the Flash memory chip itself, while less common, does occur on high-mileage units (typically above 1,000,000 miles) or in environments with extreme thermal cycling, such as vocational vehicles operating in desert or arctic conditions. Unauthorized third-party tuning or emissions defeat software can also trigger SPN 628 if the modified calibration does not match the ECM’s expected checksum profile. Finally, in rare cases, internal ECM hardware failures — such as failed voltage regulators supplying the memory chip — can manifest as intermittent SPN 628 faults that resist software correction.
Diagnostic Approach
Begin diagnosis by connecting a J1939-compliant diagnostic adapter — such as a Nexiq USB-Link 2, Cummins INLINE 7, or Dearborn DG Technologies DPA 5 — and reading all active and stored fault codes with the manufacturer’s OEM software. Document the complete FMI associated with SPN 628, as this will determine the diagnostic path. For FMI 12, verify ECM supply voltage at the module’s main power pins (typically requiring 11–13V DC at idle, with less than 0.5V drop across ground circuits under load) before any reprogramming is attempted. Check battery condition and charging system output — a battery capacity test below 75% CCA is a contraindication for reprogramming. If voltage is confirmed good, attempt a full ECM reprogramming procedure using the latest validated calibration file from the OEM’s service portal (Cummins QuickServe, Detroit Diesel Connect, Volvo TechToolbox). Ensure the vehicle is connected to a battery support unit maintaining 13.5V throughout the process. For FMI 13, verify that the installed calibration part number matches the engine dataplate and emissions certification. If reprogramming fails to clear the fault or the fault returns within one ignition cycle, escalate to ECM hardware replacement — most OEMs require core return and dealer-level authorization for new module programming. Document all steps per SAE J1939-73 diagnostic layer requirements for warranty or emissions compliance records.
Fault Codes for SPN 628
FMI 0: Data valid but above normal operational range (most severe)
SPN 628 FMI 0 indicates ECM program memory corruption or excessive errors beyond normal operational thresholds. This critical fault triggers immediate engine protection modes including torque derate or shutdown. Technicians commonly encounter this code after ECM firmware updates fail, power supply f
View SPN 628 FMI 0 Diagnostic Guide →
FMI 1: Data valid but below normal operational range (most severe)
SPN 628 FMI 1 indicates that the Engine Control Module (ECM) internal program memory has detected data valid but below the normal operational range. This typically occurs after a failed ECU flash update or during a corrupted boot sequence. Technicians frequently encounter this fault after replacing
View SPN 628 FMI 1 Diagnostic Guide →
FMI 2: Data erratic, intermittent or incorrect
SPN 628 FMI 2 indicates an issue with the program memory, where data is erratic, intermittent, or incorrect. This fault frequently arises after technicians perform ECM updates or when electrical interference disrupts the memory. In real-world scenarios, mechanics might encounter this fault following
View SPN 628 FMI 2 Diagnostic Guide →
FMI 3: Voltage above normal or shorted high
SPN 628 FMI 3 indicates voltage above normal condition in the ECM’s program memory circuit, typically manifesting as 5V reference exceeding 5.5V threshold. This fault commonly appears after lightning strikes, alternator overvoltage events, or jump-starting procedures with incorrect polarity. The ECM
View SPN 628 FMI 3 Diagnostic Guide →
FMI 4: Voltage below normal or shorted low
SPN 628 FMI 4 indicates the ECM has detected a voltage below normal or a short-to-ground condition on the internal program memory supply rail. This fault commonly appears after a failed ECM firmware update or a sudden battery disconnect during key-on, corrupting the memory reference voltage. Technic
View SPN 628 FMI 4 Diagnostic Guide →
FMI 5: Current below normal or open circuit
SPN 628 FMI 5 refers to a fault in the ECM’s program memory, where the current is below normal or an open circuit occurs. This fault often appears after ECM firmware updates or improper module installations. Technicians frequently encounter this issue during diagnostics when a vehicle exhibits errat
View SPN 628 FMI 5 Diagnostic Guide →
FMI 6: Current above normal or grounded circuit
SPN 628 FMI 6 indicates abnormal current flow in the Engine Control Module’s program memory circuits, typically manifesting as excessive amperage or ground faults within the microcontroller’s memory subsystem. This fault commonly appears after ECM water damage during pressure washing operations, whe
View SPN 628 FMI 6 Diagnostic Guide →
FMI 7: Mechanical system not responding properly
SPN 628 FMI 7 indicates the Engine Control Module (ECM) program memory has detected a mechanical system not responding properly, typically due to corrupted internal firmware or a failed flash update. This code commonly appears after a forced DPF regeneration interrupted by battery disconnection, or
View SPN 628 FMI 7 Diagnostic Guide →
FMI 9: Abnormal update rate
SPN 628 FMI 9 relates to an abnormal update rate in the program memory, often indicating irregularities in the ECM’s ability to process data. This fault can manifest after software updates or ECM replacements, where the new programming may not synchronize effectively with existing systems. Technicia
View SPN 628 FMI 9 Diagnostic Guide →
FMI 11: Root cause not known
Program Memory SPN 628 FMI 11 indicates ECM software execution failures where the root cause remains undetermined despite system monitoring. This fault commonly appears during ECM reflashing procedures or after power supply interruptions, creating intermittent engine operation issues. Technicians fr
View SPN 628 FMI 11 Diagnostic Guide →
FMI 12: Bad intelligent device or component
The SPN 628 FMI 12 code indicates issues with program memory, often due to faulty intelligent devices. This fault typically emerges after electronic control module (ECM) updates or replacements. Technicians frequently encounter this error when the ECM fails to properly store or recall program data,
View SPN 628 FMI 12 Diagnostic Guide →
FMI 13: Out of calibration
SPN 628 FMI 13 signals that the engine control module has detected a program memory calibration mismatch, meaning the stored software version or parameter set does not match the expected factory reference for the hardware. This fault commonly appears after a failed ECM flash update or when a used EC
View SPN 628 FMI 13 Diagnostic Guide →
FMI 14: Special instructions
SPN 628 FMI 14 indicates an issue with the program memory, often tied to special instructions in the ECM. This fault code typically arises after a software update or ECM replacement. Technicians may notice this code if the ECM fails to execute specific tasks due to corrupted or missing instructions,
View SPN 628 FMI 14 Diagnostic Guide →
FMI 18: Data valid but below normal operating range (moderately severe)
SPN 628 FMI 18 indicates program memory data validity with values below normal operating parameters within the ECM. This fault commonly manifests after ECM firmware updates or when flash memory sectors experience degradation. Technicians frequently encounter this code following unsuccessful reflashi
View SPN 628 FMI 18 Diagnostic Guide →
FMI 31: Condition exists
SPN 628 FMI 31 indicates the ECM has detected a permanent integrity fault in its internal program memory, typically the flash or EEPROM sector storing calibration data. This code commonly appears after an interrupted software update, a low battery voltage event during reflash, or a hardware failure