PCM EEPROM
The PCM contains an EEPROM (Electrically Erasable Programmable Read Only Memory) to store software and calibration information. The PCM uses the information to control fueling, idle speed, ignition timing, transaxle shifting, and emissions. The information is based on various aspects of the vehicle such as engine size, vehicle weight, transaxle type, final driver ratio, etc.The EEPROM is programmed (flashed) with the software and calibration information. Replacement PCMs do not contain this information. Therefore, the technician must program the replacement PCM using the latest diagnostic tools, equipment, and programs.
The EEPROM, unlike earlier model years, is not replaceable. The only repair option is to replace the PCM. The PCM incorporates specific diagnostic trouble codes (DTCs) to diagnose an internal failure or program change within the PCM and/or the EEPROM. The PCM uses the following DTCs to detect the conditions:
^ DTC P0601 PCM Memory - ROM.
The PCM uses this DTC to verify the integrity of the PCMs operating program. During the initial programming of the PCM, the PCM calculates a check sum value of the operating program. This check sum value is stored within the EEPROM. At key ON, the PCM loads the operating system, and performs a key ON check sum calculation. The PCM compares the key ON check sum to the previously check sum value stored within the EEPROM. If the key ON check sum does not match the stored check sum, DTC P0601 will set. This requires that the PCM be replaced, and the replacement PCM be programmed using the approved tools/equipment and procedures.
^ DTC P0602 - PCM Not Programmed.
When diagnosis leads to a PCM malfunction, the PCM must be replaced. The replacement PCM does not contain the final program and calibrations. This final information must be programmed into the service PCM using the approved tools/equipment, and procedures. If the service PCM is not programmed, DTC P0602 will set. When the DTC sets, the PCM disables the fuel pump relay, and the fuel injectors.
^ DTC P0603 - PCM Long Term Memory Reset.
Specific vehicle information is stored within an area of the EEPROM called non-volatile memory. The PCM uses this DTC to verify the integrity of the non-volatile information across ignition cycles. At key OFF, before storing this information, the PCM performs a check sum calculation of the information. At key ON, the PCM retrieves the information, and places it into the PCMs Random Access Memory (RAM). After retrieval, the PCM conducts a check sum of the information in RAM, and compares this value to the value stored in the EEPROM at the previous KEY OFF. If the values do not match, DTC P0603 will set. Also, during operation, the PCM maintains a running check sum on a certain section of RAM that contains critical information. If, at any time this running check sum fails, DTC P0603 will set.
^ DTC P0604 - PCM Memory - RAM.
The PCM loads the vehicle operating information stored in the EEPROM into the PCMs Random Access Memory (RAM). This allows the PCM to work with, and make any updates to the information. The PCM tests all areas of the RAM. If the PCM detects an error in any area of RAM, DTC P0604 will set. This requires that the PCM be replaced, and the replacement PCM be programmed using the approved tools/equipment and procedures.
^ DTC P0606 - PCM Internal Performance. The PCM uses this DTC to detect a malfunction within the controller (PCM hardware). This requires that the PCM be replaced, and the replacement PCM be programmed using the approved tools/equipment and procedures.
^ DTC P1621 - PCM Memory Performance. Specific vehicle information is stored within an area of the EEPROM called non-volatile memory. The PCM uses this DTC to verify the integrity of the non-volatile memory areas in the EEPROM. There are several locations (areas) within non-volatile memory to store the specific/critical operating information. If the PCM detects a problem in one location of the EEPROM, the PCM attempts to store the data in another location. If the PCM runs out of valid places to store the information, DTC P1621 will set.
The PCM stores a copy of the previous key ON values in the non-volatile memory. When the DTC sets, the PCM defaults to the previously stored information. The vehicle operator will not notice a difference in vehicle performance. The PCM will continue to search for good memory locations within non-volatile memory to store the information. A CURRENT DTC P1621 requires that the PCM be replaced, and the replacement PCM be programmed using the approved tools/equipment and procedures.
IMPORTANT: The PCM uses the EEPROM to save critical data even when the battery power is removed from the PCM. The EEPROM stores information such as TP sensor learned value, Transaxle Shift Adapt values, Vehicle Theft Deterrent Password, Crankshaft Angle Sensing Error values, and Oil Life Indexes. These values are stored in the EEPROM during the first 30 seconds after the key is turned OFF. Disconnecting the battery before the PCM is able to store the values may result in an EEPROM reset. This results in a reset of the stored values. Therefore, you should wait at least 30 seconds after key OFF before disconnecting the battery or PCM connectors to allow these values to be stored in the EEPROM.