P0604 Internal Control Module Random Access Memory (RAM) Error

What does it mean?

This diagnostic trouble code (DTC) is a generic powertrain code, meaning it applies to vehicles equipped with OBD-II (Dodge, Chevrolet, BMW, Saturn, Kia, VW, etc.). Although generic, specific repair steps may vary by make/model.

When a stored P0604 code appears, it means the Powertrain Control Module (PCM) has detected an internal random access memory (RAM) error. This type of code applies to the PCM itself.

 

RAM, in relation to the PCM, allows for quick access to frequently requested data on demand. The PCM is factory-programmed with vital engine management information. In fact, there is so much information programmed into the PCM that it would take too long to access it every time an engine management response is triggered. RAM contains a selected and defined amount of data that enables the PCM to respond faster in situations that occur repeatedly and in rapid sequence.

Specific parameters for engine and transmission management are programmed into the RAM for each vehicle produced. It not only allows for quicker management of engine efficiency and performance but also serves to recognize and interact with other onboard vehicle control modules.

If the PCM detects a discrepancy between the RAM and other controllers, or if the RAM is not functioning as expected, a P0604 code will be stored, and a Malfunction Indicator Lamp (MIL) may illuminate. Depending on the severity of the malfunction, multiple failure cycles may be required for the MIL to light up.

Photo of a PCM with the cover removed:


Powertrain Control Module PCM

Other internal control module error codes include:

P0601 Internal Control Module Memory Checksum Error
P0602 Control Module Programming Error
P0603 Internal Control Module Keep Alive Memory (KAM) Error
P0605 Internal Control Module Read Only Memory (ROM) Error

Code Severity and Symptoms

Conditions that can lead to the storage of a P0604 can seriously affect engine management. A stored P0604 code should be considered severe.

Symptoms of a P0604 code may include:

No-start condition
Multiple driveability issues
Harsh or erratic automatic transmission shifting
Reduced fuel economy
Engine may stall or run rough (especially at idle)

Causes

Possible causes of this code include:

PCM programming error
New or incorrect PCM
Aftermarket (high-performance) PCM program installed
Blown ECM/PCM fuse
Low battery voltage or completely discharged battery
Faulty ECM/PCM power relay
A defective ECM/PCM
Open or shorted wiring or connectors in the CAN harness
Unsecured control module ground strap or broken ground wire

Diagnostic and Repair Procedures

Diagnosing a stored P0604 code can be challenging, even for the most experienced and well-equipped technician. However, a few preliminary tests can be performed before handing the issue over to a professional.

With almost all diagnostics, I like to start with a visual inspection of the engine management cable harnesses and connectors. Damaged or burnt wiring and connectors should be repaired or replaced before proceeding.

Connect the scanner to the vehicle’s diagnostic connector and retrieve all stored codes and freeze frame data. Before clearing the codes, write them down in case it turns out to be an intermittent issue. A P0604 code should be diagnosed and repaired before attempting to diagnose any other stored codes, as other stored codes are likely false. Now, clear the codes and hope that the P0604 was stored in error.

If the P0604 immediately resets, test the battery voltage to the PCM. RAM requires a minimum of 12.5 volts to function properly. Corroded or loose battery terminals may mean inadequate voltage is reaching the RAM. Test the PCM fuses for battery voltage with the circuit loaded. Corroded fuses may appear normal until a load is applied to the circuit, at which point their fault will be discovered.

If the PCM has not been programmed correctly, the RAM will not function or may not be recognized. If the PCM for the vehicle in question has been recently replaced, it may have been improperly programmed or not programmed at all. A used controller (from another vehicle) will only work if it has been reprogrammed specifically for the vehicle in question. Aftermarket (high-performance) programmers can also cause the same issue, resulting in the storage of a P0604.

Improperly programmed or replaced controllers can be reprogrammed using a dedicated factory scanner. Most dealerships offer PCM programming for a modest fee if you cannot access such a scanner. Several aftermarket PCM manufacturers offer pre-programmed controllers for certain models. Check with your auto parts supplier and have the vehicle identification number, mileage, and other relevant information on hand.

P0605 Internal Control Module Read-Only Memory (ROM) Error

What does it mean?

This diagnostic trouble code (DTC) is a generic powertrain code, meaning it applies to vehicles equipped with OBD-II. Although generic, specific repair steps may vary by make/model.

This fault code essentially means the PCM/ECM (Powertrain/Engine Control Module) has detected a fault in the internal control module’s ROM (Read-Only Memory) within the PCM. The PCM is essentially the vehicle’s “electronic brain” controlling functions such as fuel injection, ignition, etc. When self-checks fail in the ROM, this DTC is set.

This code is a generic powertrain code. It is considered generic because it applies to all makes and models of vehicles (1996-newer), although specific repair steps may be slightly different by model. A quick online search shows this DTC is more commonly found in Ford and Nissan vehicles.

Other internal control module error codes include:

P0601 Internal Control Module Memory Checksum Error
P0602 Internal Control Module Programming Error
P0603 Internal Control Module Keep Alive Memory (KAM) Error
P0604 Internal Control Module Random Access Memory (RAM) Error

Photo of a PCM with the cover removed:


Powertrain Control Module PCM

Symptoms

Symptoms of a P0605 DTC will include MIL (Malfunction Indicator Lamp) illumination, though there may be other symptoms including but not limited to various warning lights on the dashboard, stalling, and no-start conditions.
Potential Causes

There is an internal fault in the PCM/ECM
Using an aftermarket performance programmer may trigger this code

Possible Solutions

In some cases, “flashing” the PCM with updated software may fix this DTC. You will need access to make and model specific information such as Technical Service Bulletins (TSBs).

If there are no PCM flash updates, the next step would be to check certain wiring. Inspect and verify the voltage and grounding of the PCM and related circuits. If any issues are found, repair and retest.

If wiring is OK, the next step is to replace the PCM, which is the most likely repair for this code. This is typically not a DIY task, although in some cases it may be. We highly recommend having the work performed by a qualified repairer/technician who can reprogram the new PCM. Installing the new PCM may involve using special tools to program the vehicle’s VIN (Vehicle Identification Number) and/or anti-theft information (PATS, etc.).

Instead of replacing the PCM, some specialized shops may actually be able to repair the PCM. This may involve removing the PCM, shipping it to them for repair, and reinstalling it. This is not always an option for daily drivers.

NOTE: This repair may be covered under the emissions warranty, so be sure to check with your dealer as it may be covered beyond the bumper-to-bumper or powertrain warranty period.

Other PCM DTC codes: P0600, P0601, P0602, P0603, P0604, P0606, P0607, P0608, P0609, P0610.

P0607 Control Module Performance

What does it mean?

This diagnostic code (DTC) is a generic powertrain code, meaning it applies to vehicles equipped with OBD-II. Although generic, specific repair steps may vary by make/model.

This code essentially means that the PCM/ECM (powertrain/engine control module) programming has failed. This can be a more serious code and may also be referred to as “ECM internal circuit malfunction”.

 

Symptoms

The P0607 code will illuminate the MIL (malfunction indicator lamp). Other potential symptoms of a P0607 include:

The vehicle may also enter “limp-home” mode where it operates with reduced power
No start condition (cranks but won’t start)
May stall while driving

Photo of a PCM with cover removed:


Powertrain Control Module PCM

Causes

A P0607 may be caused by one or more of the following:

Loose ground terminal on PCM/ECM
Dead or faulty battery (main 12V)
An open or short circuit in the power or ground circuit
Loose or corroded battery terminals
Failed PCM/ECM

Possible Solutions

As a vehicle owner, you can’t do much to diagnose this DTC. The first thing to check is the battery – check voltage, inspect for loose/corroded terminals, etc., also perform a load test. Also inspect the PCM grounds/wiring. If that is good, other common fixes for a P0607 control module performance DTC appear to be replacing the PCM or updating (re-flashing) the PCM with updated software. Make sure to check TSBs for your vehicle (Technical Service Bulletins) as there are known TSBs for this P0607 code for certain Toyota and Ford vehicles.

If the PCM needs to be replaced, we strongly recommend having the work done by a qualified repairer/technician, who has the capability to reprogram the new PCM. Installing the new PCM may involve using special tools to program the vehicle’s VIN (vehicle identification number) and/or anti-theft information (PATS, etc.).

NOTE: This repair may be covered under the emissions warranty, so be sure to check with your dealer as it may be covered beyond the bumper-to-bumper or powertrain warranty period.

Other PCM DTC codes: P0600, P0601, P0602, P0603, P0604, P0605, P0606, P0608, P0609, P0610.

P0608 Malfunction in Output A of the Control Module

What does it mean?

This generic powertrain diagnostic trouble code (DTC) generally applies to many OBD-II vehicles. This may include, but is not limited to, vehicles from Citroën, Chevy, Ford, Peugeot, GMC, Dodge, Ram, Ducati, etc.

The Powertrain Control Module (PCM) detected a malfunction in a specific output voltage signal from the Vehicle Speed Sensor (VSS) when a P0608 code is stored.

In this case, a VSS output signal was expected to come from the PCM itself or one of the many (other) onboard controllers. This particular VSS output circuit has been designated “A”. Consult a reliable vehicle information source for the specific function of this circuit regarding the vehicle in question.

Vehicles equipped with OBD-II diagnostic systems can use up to seventy onboard controllers. These controllers communicate via the Controller Area Network (CAN).

The VSS is an electromagnetic sensor used to complete a circuit that provides one or more controllers with an accurate signal reflecting the vehicle’s speed. The VSS is typically positioned near the transmission output shaft (or the transfer case for 4-wheel drive) or in the rear differential. A toothed steel reluctor (permanently attached to the output shaft or ring gear) passes in close proximity to the electromagnetic sensor and completes the circuit. The gaps between the teeth cause circuit interruptions. The PCM and other controllers receive these circuit completions and interruptions as a voltage pattern in the form of a wave. The frequency of this waveform pattern is interpreted as the vehicle’s speed.

The VSS signal is typically input into a main controller, such as the PCM or the Transmission Control Module (TCM). Once the main controller receives the VSS input, it is shared with other controllers via the CAN. If one of these secondary controllers fails to receive the VSS signal, or receives an inconsistent VSS signal, a P0608 code will be logged and a Malfunction Indicator Lamp (MIL) may be illuminated.

Example photo of a VSS (Vehicle Speed Sensor):


Vehicle Speed Sensor VSS

How severe is this DTC?

Codes associated with the VSS can affect transmission shift strategy and engine operation. A stored P0608 code should be classified as severe and diagnosed/repaired as soon as possible.

What are some of the symptoms of the code?

Symptoms of a P0608 trouble code may include:

  • Erratic or incorrect speedometer/odometer
  • Abnormal transmission shifting (automatic)
  • Output shaft speed sensor codes
  • Input speed sensor codes
  • ABS or Traction Control System (TCS) codes

What are some common causes of the code?

Causes

of this code may include:

  • Faulty PCM, TCM, or other controller
  • Open or shorted circuits in the CAN
  • Corroded, broken, or loose electrical connectors
  • Controller programming error

What are the P0608 troubleshooting steps?

If other VSS-related codes are stored, they will need to be diagnosed and repaired before attempting to diagnose P0608.

A diagnostic scanner, a digital volt/ohmmeter, and a reliable vehicle information source will be necessary to diagnose this code.

Use the vehicle information source to search for Technical Service Bulletins (TSBs) that match the vehicle in question, as well as the stored code and presented symptoms. If you find an applicable TSB, the likelihood that it will provide useful diagnostic information is very high.

Use the vehicle information source for diagnostic flowcharts, wiring diagrams, connector pinout diagrams, connector face views, and component testing procedures/specifications. All of this information will be needed for a successful diagnosis.

After a visual inspection of the controller connectors and visible CAN harnesses, connect the scanner to the vehicle’s diagnostic port and retrieve all stored codes. If freeze frame data is available, record it as well. Take note of all this information. It may prove useful later in your diagnosis. Now, clear the codes and test-drive the vehicle until the PCM enters readiness mode or the code resets.

If the PCM enters readiness mode without any codes being stored, you are dealing with an intermittent code, and the contributing problem may need to worsen before an accurate diagnosis can be reached.

If the code resets, continue your diagnosis.

Warning: Before using the DVOM to test circuit resistance and continuity, disconnect all associated controllers. Failure to do so may damage the controller.

With the ignition on and the engine off, use the DVOM to test the individual VSS output circuits on the appropriate controller. Compare your results with the VSS signal data. If no acceptable output signal is detected, suspect a controller failure.

If an acceptable VSS output signal is found at the controller, use the DVOM to test the individual circuits between each of the associated controllers. Repair or replace system circuits or components as needed and retest the VSS Signal.

A P0608 code (without any other stored codes) will not be caused by a faulty VSS
In most cases, a controller failure is unlikely. In the case of P0608, it is more likely that a controller issue or programming error is the cause

P0609 Malfunction in Output B of the VSS Control Module

What does it mean?

This generic powertrain diagnostic trouble code (DTC) generally applies to many OBD-II vehicles. This may include, but is not limited to, vehicles from Citroën, Chevy, Ford, Peugeot, GMC, Dodge, Ram, Ducati, etc.

 

The Powertrain Control Module (PCM) detected a malfunction in a specific vehicle speed sensor (VSS) output voltage signal when a P0609 code is stored.

In this case, a VSS output signal was expected to come from the PCM itself or one of the many (other) onboard controllers. This particular VSS output circuit has been designated “B”. Consult a reliable vehicle information source for the specific function of this circuit regarding the vehicle in question.

Vehicles equipped with OBD-II diagnostic systems can use up to seventy onboard controllers. These controllers communicate via the Controller Area Network (CAN).

The VSS is an electromagnetic sensor used to complete a circuit that provides one or more controllers with an accurate signal reflecting the vehicle’s speed. The VSS is typically positioned near the transmission output shaft (or the transfer case for four-wheel drive) or in the rear differential. A toothed steel reluctor (permanently attached to the output shaft or ring gear) passes in close proximity to the electromagnetic sensor and completes the circuit. The gaps between the teeth cause circuit interruptions. The PCM and other controllers receive these circuit completions and interruptions as a voltage pattern in the form of a wave. The frequency of this waveform pattern is interpreted as the vehicle’s speed.

The VSS signal is usually input into a main controller, such as the PCM or the Transmission Control Module (TCM). Once the main controller receives the VSS input, it is shared with other controllers via the CAN. If one of these secondary controllers fails to receive the VSS signal, or receives an inconsistent VSS signal, a P0609 code will be logged and a Malfunction Indicator Lamp (MIL) may be illuminated.

Example photo of a VSS (Vehicle Speed Sensor):


Vehicle Speed Sensor VSS
How severe is this DTC?

Codes associated with the VSS can affect transmission shift strategy and engine operation. A logged P0609 code should be classified as severe and diagnosed/repaired as soon as possible.
What are some of the symptoms of the code?

Symptoms of a P0609 fault code may include:

    Erratic or incorrect speedometer/odometer
    Abnormal transmission shifting (automatic)
    Output shaft speed sensor codes
    Input speed sensor codes
    ABS or Traction Control System (TCS) codes

What are some of the common causes of the code?

Causes

of this code may include:

    Faulty PCM, TCM, or other controller
    Open or shorted circuits in the CAN
    Corroded, broken, or loose electrical connectors
    Controller programming error

What are the P0609 troubleshooting steps?

If other VSS-related codes are stored, they will need to be diagnosed and repaired before attempting to diagnose P0609.

A diagnostic scanner, a digital volt/ohmmeter, and a reliable vehicle information source will be required to diagnose this code.

Use the vehicle information source to search for Technical Service Bulletins (TSBs) that match the vehicle in question, as well as the logged code and presented symptoms. If you find an applicable TSB, the likelihood of it providing useful diagnostic information is very high.

Use the vehicle information source for diagnostic flowcharts, wiring diagrams, connector pinout diagrams, connector face views, and component testing procedures/specifications. All of this information will be necessary for a successful diagnosis.

After a visual inspection of the controller connectors and visible CAN wiring harnesses, connect the scanner to the vehicle’s diagnostic port and retrieve all stored codes. If freeze frame data is available, record it as well. Take note of all this information. It may prove useful later in your diagnosis. Now, clear the codes and test drive the vehicle until the PCM enters readiness mode or the code resets.

If the PCM enters readiness mode without any codes being stored, you are dealing with an intermittent code, and the contributing problem may need to worsen before an accurate diagnosis can be reached.

If the code resets, continue your diagnosis.

Warning: Before using the DVOM to test circuit resistance and continuity, disconnect all associated controllers. Failure to do so may damage the controller.

With the key on and engine off, use the DVOM to test the individual VSS output circuits at the appropriate controller. Compare your results with the VSS signal data. If no acceptable output signal is detected, suspect a controller failure.

If an acceptable VSS output signal is found at the controller, use the DVOM to test the individual circuits between each of the associated controllers. Repair or replace circuits or system components as needed and retest the VSS Signal.

     A P0609 code (without any other stored codes) will not be caused by a faulty VSS
     In most cases, a controller failure is unlikely. In the case of P0609, a controller issue or programming error is more likely to be the culprit

P060A Internal Control Module CPU Performance Monitoring

❓ What does this code mean?

This generic powertrain diagnostic trouble code (DTC) generally applies to many OBD-II vehicles. This may include, but is not limited to, vehicles from Honda, Ford, Mercedes Benz, Nissan, Toyota, etc.

When a P060A code is stored, it means the Powertrain Control Module (PCM) has encountered an internal processor error. Other controllers may also detect a PCM processor performance error and cause the storage of such a code.

PCM Operation

The internal control module monitoring processors are responsible for various controller self-test tasks and the overall responsibility of the internal control module. The internal controller’s temperature (especially the PCM), as well as multiple input and output signals, are constantly monitored by specific controller processors.

Whenever the ignition is turned on and the PCM is powered up, many internal controller processing self-tests are initiated. In addition to running internal controller self-tests, the Controller Area Network (CAN) also compares signals from each individual module to ensure each controller is functioning correctly. These tests are performed simultaneously.

Error Detection

If the PCM detects a discrepancy between any of the onboard controllers, which would indicate an internal processor error, a P060A code will be stored and a Malfunction Indicator Lamp (MIL) may be illuminated. Multiple failure cycles may be required for MIL illumination, depending on the perceived severity of the malfunction.

Powertrain Control Module (PCM)

⚠️ How severe is this DTC?

Internal control module processor codes should be classified as severe. A stored P060A code could result in a no-start condition or severe driving problems, suddenly and without warning.

Common Symptoms

Symptoms of a P060A fault code may include:

  • ⚠️ Multiple driving issues
  • ⚙️ Harsh or erratic automatic transmission shifting
  • Reduced fuel efficiency
  • Rough idle or stalling
  • ❌ Hesitation during acceleration

Possible Causes

Causes of this code may include:

  • ⚙️ Faulty controller or programming error
  • Bad controller fuse or power relay
  • Open or shorted circuit or connectors in the CAN harness
  • Insufficient control module ground

Troubleshooting P060A

Even for the most experienced and well-equipped professional technician, diagnosing a P060A code can be very challenging. There is also the issue of reprogramming. Without the necessary reprogramming equipment, it will be impossible to replace a faulty controller and perform a successful repair.

If ECM/PCM power codes are present, they will obviously need to be rectified before attempting to diagnose a P060A.

Several preliminary tests can be performed before declaring an individual controller faulty. A diagnostic scanner, a digital volt/ohmmeter (DVOM), and a reliable vehicle information source will be required.  

  1. Retrieving Codes and Data: Connect the scanner to the vehicle’s diagnostic port and retrieve all stored codes and freeze frame data. You’ll want to note this information, just in case the code proves to be intermittent. After recording all relevant information, clear the codes and test-drive the vehicle until the code resets or the PCM enters readiness mode. If the PCM enters readiness mode, the code is intermittent and will be more difficult to diagnose. The condition that caused the P060A to be stored may even need to worsen before a diagnosis can be made. If the code resets, continue with this short list of preliminary tests.
  2. Researching Technical Information: When trying to diagnose a P060A, information can be your best tool. Search your vehicle information source for Technical Service Bulletins (TSBs) that match the stored code, the vehicle (year, make, model, and engine), and the symptoms presented. If you find the right TSB, it may provide diagnostic information that will help you significantly.
  3. Consulting Schematics and Diagrams: Use your vehicle information source to obtain connector face views, connector pinout diagrams, component locations, wiring schematics, and diagnostic flowcharts related to the code and vehicle in question.
  4. Testing Fuses and Relays: Use the DVOM to test the controller’s power fuses and relays. Test and replace blown fuses as needed. Fuses should be tested with the circuit loaded.
  5. Inspecting Wiring and Connectors: If all fuses and relays appear to be working as expected, a visual inspection of the wiring and harnesses related to the controller is necessary. You will also want to check the chassis and engine ground connections. Use your vehicle information source for ground locations for the related circuits. Use the DVOM to test ground integrity.
  6. Inspecting Controllers: Visually inspect the system controllers for signs of water, heat, or collision damage. Any damaged controller, especially by water, should be considered faulty.
  7. Final Diagnosis: If the controller’s power and ground circuits are intact, suspect a faulty controller or a controller programming error. Replacing the controller will require reprogramming. In some cases, you can purchase pre-programmed controllers through aftermarket sources. Other vehicles/controllers will require onboard reprogramming that can only be performed by a dealer or other qualified source.

⚠️ Conclusion: Unlike most other codes, P060A is likely caused by a faulty controller or a controller programming error.

⚠️ System Ground Test: Test the system ground integrity by connecting the DVOM’s negative test lead to ground and the positive test lead to battery voltage.

Sources and related content

Internal Control Module A/D Processing Performance

What does it mean?

This generic powertrain diagnostic trouble code (DTC) generally applies to many OBD-II vehicles. This may include, but is not limited to, vehicles from Ford, Dodge, Duramax, GMC, Chevrolet, Isuzu, Ram, etc.

When a P060B code is stored, it means that the Powertrain Control Module (PCM) has detected an internal processor error from a specific set of processors (designated as A/D). Other controllers may also detect a PCM processor performance error and cause the storage of such a code.

The internal control module monitoring processors are responsible for various controller self-test tasks and the overall responsibility of the internal control module. The internal controller temperature (especially PCM), as well as multiple input and output signals, are constantly monitored by specific controller processors.

Whenever the ignition is turned on and the PCM is powered up, many internal controller processing self-tests are initiated. In addition to running internal controller self-tests, the Controller Area Network (CAN) also compares signals from each individual module to ensure each controller is functioning correctly. These tests are performed simultaneously.

If the PCM detects a discrepancy between any of the onboard controllers, which would indicate an internal processor error, a P060B code will be stored and a Malfunction Indicator Lamp (MIL) may be illuminated. Multiple failure cycles may be required for MIL illumination, depending on the perceived severity of the malfunction.

Photo of a PCM with the cover removed:


Powertrain Control Module PCM
How severe is this DTC?

Internal control module processor codes should be classified as severe. A stored P060B code could result in a no-start condition or severe driving problems, suddenly and without warning.
What are some of the symptoms of the code?

Symptoms of a P060B trouble code may include:

  • Multiple driving issues
  • Harsh or erratic automatic transmission shifting
  • Reduced fuel efficiency
  • Irregular idle or stalling
  • Hesitation during acceleration

What are some common causes of the code?

Causes of this code may include:

  • Faulty controller or programming error
  • Bad controller fuse or power relay
  • Open or shorted circuit or connectors in the CAN harness
  • Insufficient control module ground

What are the troubleshooting steps for P060B?

Even for the most experienced and well-equipped professional technician, diagnosing a P060B code can prove very challenging. There is also the issue of reprogramming. Without the necessary reprogramming equipment, it will be impossible to replace a faulty controller and perform a successful repair.

If ECM/PCM power codes are present, they will obviously need to be corrected before attempting to diagnose a P060B.

Several preliminary tests can be performed before declaring an individual controller faulty. A diagnostic scanner, a digital volt/ohmmeter (DVOM), and a reliable vehicle information source will be required.

Connect the scanner to the vehicle’s diagnostic port and retrieve all stored codes and freeze frame data. You’ll want to note this information, just in case the code proves to be intermittent. After recording all relevant information, clear the codes and test the vehicle until the code resets or the PCM enters readiness mode. If the PCM enters readiness mode, the code is intermittent and will be more difficult to diagnose. The condition that caused the P060B to be stored may even need to worsen before a diagnosis can be made. If the code resets, continue with this short list of preliminary tests.

When trying to diagnose a P060B, information can be your best tool. Search your vehicle information source for Technical Service Bulletins (TSBs) that match the stored code, the vehicle (year, make, model, and engine), and the symptoms presented. If you find the right TSB, it can provide diagnostic information that will help you significantly.

Use your vehicle information source to obtain connector face views, connector pinout diagrams, component locators, wiring schematics, and diagnostic flowcharts related to the code and vehicle in question.

Use the DVOM to test the controller power fuses and relays. Test and replace blown fuses as needed. Fuses should be tested with the circuit loaded.

If all fuses and relays appear to be functioning as expected, a visual inspection of the wiring and harnesses related to the controller is necessary. You’ll also want to check chassis and engine ground junctions. Use your vehicle information source to obtain ground locations for related circuits. Use the DVOM to test ground integrity.

Visually inspect system controllers for signs of water, heat, or collision damage. Any damaged controller, especially by water, should be considered faulty.

If the controller power and ground circuits are intact, suspect a faulty controller or controller programming error. Controller replacement will require reprogramming. In some cases, you can purchase pre-programmed controllers through aftermarket sources. Other vehicles/controllers will require onboard reprogramming that can only be performed by a dealer or other qualified source.

Unlike most other codes, P060B is likely caused by a faulty controller or controller programming error
Test system ground integrity by connecting the DVOM negative test lead to ground and the positive test lead to battery voltage

P060C Internal Control Module Main Processor Performance

Code P060C: Definition and Implications
Code P060C is a generic OBD-II code indicating an internal anomaly of the PCM’s main processor (Powertrain Control Module). It occurs when the PCM detects a discrepancy during its processor performance self-tests, often related to calculation or internal communication errors.


Code Severity

  • Classified as critical: This code can cause sudden malfunctions (e.g., stalling, no-start condition) or a complete loss of control over engine/transmission systems. Immediate action is required.


Common Symptoms

  • Multiple driving issues: Erratic engine or transmission behavior.

  • Harsh shifting (automatic transmission).

  • Unstable idle or repeated stalling.

  • Hesitation during acceleration.

  • Decreased fuel efficiency.


Possible Causes

  1. PCM hardware failure:

    • Damaged internal processor (overheating, short circuit).

    • Corrosion or water ingress in the PCM.

  2. Software issues:

    • PCM programming error (corrupted or outdated firmware).

  3. Electrical problems:

    • Blown fuse or faulty relay supplying power to the PCM.

    • Open or shorted CAN circuit.

    • Poor grounding of the PCM or oxidized connectors.


Diagnostic Procedure

Required Tools:

  • Advanced OBD-II scanner (with CAN data reading capability).

  • Digital multimeter (DVOM).

  • Technical documentation (wiring diagrams, service bulletins).


Key Steps

  1. Preliminary Check:

    • Consult Technical Service Bulletins (TSBs) for software fixes or PCM-related recalls.

  2. Code and Data Analysis:

    • Use the scanner to retrieve all stored codes (prioritize codes related to power supply or the CAN network).

    • Examine live data (e.g., PCM supply voltage, temperature).

  3. Electrical Inspection:

    • Test the fuses and relays powering the PCM (under load).

    • Check ground integrity (resistance < 0.5 Ω between PCM ground and battery).

    • Inspect PCM connectors (corrosion, bent pins, sealing).

  4. CAN Network Test:

    • Measure CAN-H and CAN-L voltage using the DVOM (normal values: ~2.6 V and ~2.4 V respectively).

    • Look for short circuits or breaks in the CAN wiring harness.

  5. PCM Diagnosis:

    • If power and ground circuits are intact, suspect a faulty PCM.

    • PCM reprogramming may be necessary (requires dedicated equipment, often available at dealerships).


Recommended Solutions

  • Software update: If a programming error is identified.

  • Replace the PCM: In case of hardware failure, followed by mandatory reprogramming.

  • Repair faulty circuits: Replace fuses, repair CAN wiring, clean connectors.


Precautions and Tips

  • Do not replace the PCM without a complete diagnosis: Costs are high and reprogramming is mandatory.

  • Check the vehicle’s history: An accident or water exposure may have damaged the PCM.

  • Consult a professional: Diagnosing P060C often requires specialized equipment (e.g., OEM reprogramming tool).


In summary: Code P060C reflects a critical PCM failure, often related to its internal processor. A methodical approach (power, ground, CAN) is essential before concluding that PCM replacement is necessary. Ignoring this code can lead to a complete vehicle breakdown.

Internal Control Module Performance Accelerator Pedal Position

Code P060D: Accelerator Pedal Position (APP) Sensor Circuit Performance Error


1. Definition and Context

  • Meaning:
    Code P060D indicates an internal PCM (Powertrain Control Module) error related to the Accelerator Pedal Position (APP) sensor circuit. This code applies exclusively to vehicles equipped with a Drive-By-Wire (DBW) throttle system.
  • Affected Brands:
    All OBD-II vehicles (Chevrolet, Jeep, Toyota, Ford, GMC, Land Rover, etc.).
  • Severity:
    Critical – Risk of sudden acceleration limitation, stalling, or cruise control malfunctions.

2. DBW System Operation

  • Key Components:
  • APP Sensors (2 or more): Measure pedal position.
  • TPS (Throttle Position) Sensors: Verify actual throttle opening.
  • PCM: Compares APP and TPS signals to adjust the throttle via an electric actuator.
  • Self-Tests:
  • At startup, the PCM and CAN network verify signal consistency between sensors and controllers (TCM, TCSM, etc.).
  • A discrepancy between signals triggers code P060D.

3. Common Symptoms

  • Limited or stuck acceleration.
  • Unstable idle or stalling.
  • Harsh gear shifts (automatic transmission).
  • Inactive cruise control.
  • Illuminated check engine light (MIL).
  • Limp Mode activated.

4. Possible Causes

  • Electrical/Electronic Failures:
  • Faulty APP or TPS sensor.
  • Short circuit or open circuit in wiring.
  • Corroded or loose connectors.
  • PCM ground issues.
  • Controller Problems:
  • Faulty PCM or programming error.
  • Failed DBW actuator motor.
  • CAN network malfunction.

5. Diagnostic Procedures

Preliminary Steps

  1. Read Codes and Data:
  • Use an OBD-II scanner to retrieve stored codes (prioritize ECM/PCM/TCM codes).
  • Note freeze frame data.
  1. Check Technical Service Bulletins (TSBs):
  • Search for known manufacturer fixes.

Sensor and Circuit Tests

  • APP/TPS Sensors:
  • Measure resistance and voltage with a multimeter (follow manufacturer specifications).
  • Verify signal consistency with an oscilloscope.
  • Wiring and Connectors:
  • Visually inspect for corrosion, damage, or disconnection.
  • Test for continuity and absence of short circuits.

PCM and Power Supply Check

  • Power and Ground:
  • Test fuses, relays, and ground junctions with a multimeter.
  • Check for water infiltration or physical damage to the PCM.
  • Reprogramming:
  • If the PCM is suspected, reprogramming (via dealership or specialized tool) is often required.

6. Common Mistakes to Avoid

  • Replacing the PCM without complete diagnosis: The problem may stem from a sensor or circuit.
  • Ignoring related codes: A P0120 (TPS) or P2122 (APP) code should be addressed first.
  • Neglecting ground: Poor chassis/engine ground can distort readings.

7. Key Recommendations

  • Required Equipment:
  • High-end scanner (with CAN data reading capability).
  • Oscilloscope for real-time signal analysis.
  • Vehicle technical documentation (wiring diagrams, reference values).
  • Professional Intervention:
  • PCM reprogramming requires specialized equipment (e.g., OEM type).
  • If in doubt, entrust the diagnosis to a certified technician.

In summary: Code P060D signals a critical problem in the communication between the PCM, APP/TPS sensors, and the CAN network. A methodical approach (electrical tests, TSB verification, reprogramming) is essential to avoid costly repairs or safety risks.

P060E Internal Control Module Throttle Position Performance

What Does It Mean?

This generic powertrain diagnostic trouble code (DTC) generally applies to many OBD-II vehicles. This may include, but is not limited to, vehicles from Toyota, Chevy, Saturn, Chevrolet, GMC, Pontiac, Seadoo, Hummer, etc.

When a P060E code is stored, it means the Powertrain Control Module (PCM) has detected an internal performance error with the Throttle Position Sensor (TPS) circuit. Other controllers may also detect an internal PCM performance error (in the TPS circuit) and cause a P060E to be stored.

The internal control module monitoring processors are responsible for various controller self-test tasks and the overall responsibility of the internal control module. The input and output signals from the TPS/APP sensor are self-tested and are constantly monitored by the PCM and other associated controllers. The Transmission Control Module (TCM), the Traction Control System Module (TCSM), and other controllers are subject to interaction with the TPS/APP sensor.

Most OBD-II equipped vehicles use the Drive-By-Wire (DBW) system (instead of a cable throttle). This not only helps reduce exhaust emissions and increase fuel efficiency but also promotes more effective interaction with stability and traction control systems and helps optimize the accuracy of cruise control systems.

Controlled by the PCM using an electric throttle actuator motor, the DBW system uses one or more Accelerator Pedal Position (APP) sensors (also called pedal position sensors) and multiple Throttle Position Sensors (TPS). All these sensors are supplied with a 5-volt reference (usually) and a ground signal.

The TPS/APP sensors are typically of the potentiometer type. The sensor’s resistance (circuit voltage) varies depending on the position of the throttle plate (TPS) or the accelerator pedal (APP). Each individual sensor completes a specific circuit. The sensors are actuated by a pivoting extension on the accelerator pedal pivot or the throttle plate shaft. As the sensor contacts move across a printed circuit board, the sensor’s resistance changes; causing variations in the circuit resistance and (thus) the signal input voltage in the PCM and other controllers.

Inside the vehicle’s cockpit, the APP sensors are mounted on the accelerator pedal assembly. From one APP sensor, the PCM and other controllers receive an input signal (to open or close the throttle plate) whenever the pedal is pressed/released. From a second APP sensor, the PCM and other controllers receive a signal determining how far the throttle plate should be opened/closed.

A separate signal from the TPS is input to the PCM (and other controllers), reflecting the actual throttle position. The onboard controllers constantly monitor the signals from the APP sensor and the TPS and compare the actual throttle position with the desired throttle position.

Whenever the ignition is turned on and the PCM is powered up, the APP sensor and TPS self-tests are initiated. In addition to performing internal controller self-tests, the Controller Area Network (CAN) also compares the signals from each individual module to ensure each controller is functioning correctly. These tests are performed simultaneously.

If the TPS/APP sensor inputs exceed the maximum degree of variance as indicated by the manufacturer, an APP sensor or TPS code will be stored and a Malfunction Indicator Lamp (MIL) may be illuminated. Normally, the PCM will enter limp mode. In this mode, engine acceleration will be limited. Furthermore, if the PCM detects a discrepancy between any of the onboard controllers, which would indicate an internal APP sensor or TPS error, a P060E code will be stored and a Malfunction Indicator Lamp (MIL) may be illuminated. Several failure cycles may be required for MIL illumination, depending on the perceived severity of the malfunction.

Photo of a PCM with the cover removed:


Powertrain Control Module PCM
How Severe Is This DTC?

Internal Control Module Processor codes should be classified as severe. A stored P060E code could lead to serious drivability and fuel economy issues, suddenly and without warning.
What Are Some of the Symptoms of the Code?

Symptoms of a P060E trouble code may include:

Various drivability issues
Harsh or erratic automatic transmission shifting
Reduced fuel efficiency
Irregular idle or stalling (especially at idle)
Hesitation during acceleration
Limited or no acceleration
Stuck throttle (at any engine speed)
Inoperative cruise control

What Are Some of the Common Causes of the Code?

Causes

of this code may include:

Faulty controller or controller programming error
Open or shorted circuit or connectors in the CAN harness
Insufficient control module ground
Faulty TPS or APP sensor
Corroded electrical connectors
Open or shorted circuits between the TPS/APP sensor and the PCM
Faulty DBW actuator motor

What Are the P060E Troubleshooting Steps?

Diagnosing a P060E code can prove to be quite a challenge, even for the most experienced and well-equipped professional technician. There is also the issue of reprogramming. Without the necessary reprogramming equipment, it will be impossible to replace a faulty controller and perform a successful repair.

If any ECM/PCM power codes are present, they will obviously need to be rectified before attempting to diagnose a P060E. Furthermore, if there are any TPS/APP sensor codes, these should be diagnosed and repaired first.

Several preliminary tests can be performed before declaring an individual controller faulty. A diagnostic scanner, a digital volt/ohmmeter (DVOM), and a reliable vehicle information source will be required. An oscilloscope may also be helpful.

Connect the scanner to the vehicle’s diagnostic port and retrieve all stored codes and freeze frame data. You will want to note this information, just in case the code proves to be intermittent. After recording all relevant information, clear the codes and test drive the vehicle until the code resets or the PCM enters readiness mode. If the PCM enters readiness mode, the code is intermittent and will be more difficult to diagnose. The condition which caused the P060E to be stored may even need to worsen before a diagnosis can be made. If the code resets, continue with this short list of preliminary tests.

When trying to diagnose a P060E, information can be your best tool. Search your vehicle information source for Technical Service Bulletins (TSBs) that parallel the stored code, the vehicle (year, make, model, and engine), and the symptoms presented. If you find the right TSB, it may provide diagnostic information that will help you significantly.

Use your vehicle information source to obtain connector face views, connector pinout diagrams, component locators, wiring schematics, and diagnostic flowcharts related to the code and the specific vehicle.

The scanner data stream (or oscilloscope) can provide useful information regarding faults and voltage spikes in the individual TPS/APP sensors.

You can use the DVOM to test the individual sensors if no inconsistencies are detected using the oscilloscope (or scanner display stream). Test the APP sensor and TPS resistance according to the manufacturer’s specifications and procedures. If all sensors and circuits appear to be functioning as expected, test the controller’s power and ground.

Use the DVOM to test the controller’s power fuses and relays. Test and replace blown fuses as needed. Fuses should be tested with the circuit loaded.

If all fuses and relays appear to be functioning as expected, a visual inspection of the wiring and harnesses related to the controller is necessary. You will also want to check the chassis and engine ground junctions. Use your vehicle information source to obtain ground locations for the related circuits. Use the DVOM to test ground integrity.

Visually inspect the system controllers for signs of water, heat, or collision damage. Any damaged controller, especially by water, should be considered faulty.

If the controller’s power and ground circuits are intact, suspect a faulty controller or a controller programming error. Replacing the controller will require reprogramming. In some cases, you can purchase pre-programmed controllers through aftermarket sources. Other vehicles/controllers will require onboard reprogramming that can only be performed by a dealership or another qualified source.

Unlike most other codes, P060E is likely caused by a faulty controller or a controller programming error
Test the system ground integrity by connecting the DVOM’s negative test lead to ground and the positive test lead to battery voltage