For 1990-2009 cars

DTC | DTC Parameters | Diagnosis
--- | --- | ---
P0601 Control Module ROM | This DTC will set if the ECM has detected a fault with its read only memory (ROM). The ROM is checked once at initialization and once at power down. The engine will not start if a fault is detected at start-up. | Record all ECM DTCs and include with repair information. Reprogram the ECM. If the fault returns, replace the ECM.
Important: This DTC does NOT indicate a faulty ECM. P0602 Control Module Not Programmed | This DTC will set if the ECM is not programmed correctly, which does NOT infer that the ECM is at fault. The engine will not start if the ECM is not programmed or was programmed incorrectly. | Record all ECM DTCs and include with repair information. Reprogram the ECM
P0603 Control Module Long Term Memory Reset | This DTC will set if the ECM has registered an error in switching OFF its power stages to its memory devices. This condition is checked once per drive cycle during initialization. | Record all ECM DTCs and include with repair information. Replace the ECM.
P0604 Control Module RAM | This DTC will set if the ECM has detected a fault with its random access memory (RAM). The RAM is checked once per driving cycle during initialization. | Record all ECM DTCs and include with repair information. Reprogram the ECM. If the fault returns, replace the ECM.
Important: This DTC does NOT necessarily indicate a faulty ECM. P0606 Control Module Internal Performance | This DTC will set if the ECM has detected that the engine torque it has calculated is out of range. Engine speed must be greater than 1120 RPM to run this diagnostic. | Record all ECM DTCs and include with repair information. Reprogram the ECM. If the fault returns, replace the ECM.
Important: The MIL will be commanded ON after 5 seconds after the DTC has set. DTCs P0601, P0603, P0604, and P0606 are type A DTCs. DTC P0602 is a type D DTC.

### Procedure For Replacing Or Reprogramming The ECM

1. Turn the ignition OFF if the engine control module (ECM) is going to be replaced.
2. Use the service stall system (SSS) to reprogram the new/old ECM. Refer to the Service Stall System User Guide for procedures or follow the on-screen instructions.
3. After the ECM has been replaced, use the SSS to perform the ECM Passlock relearn procedure. Refer to the SSS User Guide for procedures or follow the on-screen instructions.
4. The ECM will automatically go through a throttle body relearn procedure once the reprogram is complete. The ECM normally will go through a throttle body relearn procedure anytime the ignition is left ON with the engine OFF for longer than 29 seconds, if the enable conditions have been met. Refer to the DTC P1526/P2176 flowchart for these enable conditions. The ECM will take about 2-3 seconds to perform the relearn. To ensure that the procedure has been completed, the ignition should be turned OFF for 10 seconds, then turned ON, with the engine OFF for 1 minute.
5. Clear the DTCs in all controllers if any exist. It may be normal for U-type or Passlock DTCs to set in other controllers or for the ECM to set U-type, Passlock, or DTC P0600 DTCs after a reprogram has been performed. Clear the DTCs if any are present, then turn the ignition OFF for 10 seconds. Turn the ignition ON and recheck for DTCs. As long as the LAST TEST for a DTC indicates PASSED on the scan tool, the DTC is not currently failing and most likely will not cause a problem.
6. The ECM will continuously and automatically relearn the crankshaft notch variation necessary for correct misfire diagnostics. No manual procedure is required.