Engine computer (ECM/PCM) codes

The engine computer (ECM or PCM) runs fuel, spark and emissions control and also checks itself: its memory, its processor, its programming and the regulated voltage it supplies to sensors. US and California OBD rules require it to turn on the check engine light when it detects a fault in itself or falls back into a limp-home mode. Many of these codes are caused by something outside the computer, so it should be the last part replaced, not the first.

How these codes differ

  • Internal-fault codes (for example P0601 memory check, P0604 and P0605 RAM and ROM, P0606 processor) mean the computer failed its own self-test. Before condemning it, check its power feeds, grounds and battery voltage, because a poor supply can make a healthy computer fail a self-check.
  • Sensor reference voltage codes (P0641, P0651 and P0697 for reference circuits A, B and C, and the low or high versions after them) mean the steady 5-volt supply the computer feeds to several sensors is out of range. One supply often feeds several sensors, so a single shorted sensor or chafed wire can pull it down and make every sensor on that circuit look faulty.
  • Programming and identity codes (for example P0602 programming error, P0630 VIN not programmed) are about the software rather than hardware. The rules require each computer to report a calibration ID and a calibration verification number, which a technician can compare with the carmaker's latest software.
  • Output-driver and module-to-module codes in the P06xx range report that the computer could not control a circuit or confirm a value it was meant to. They point to that circuit's wiring and load first, then to the driver inside the computer.

Codes that show up together

  • A sensor reference voltage code (P0641, P0651 or P0697) together with codes for several different sensors at once: suspect the shared 5-volt supply. Unplugging the sensors on that circuit one at a time until the reference voltage recovers finds the one dragging it down.

Engine computer (ECM/PCM) codes

  • P0606

    A control module found a fault in its own processor or programming

    Severity: Inspect soon
  • P0607

    A control module failed one of its internal performance checks

    Severity: Inspect soon
  • P061B

    Engine computer’s internal torque calculation check failed

    Severity: Inspect soon
  • P06DD

    Oil pump pressure control not responding, as if stuck off

    Severity: Inspect soon
  • P0601

    Control module internal memory checksum error

    Severity: Inspect soon
  • P061A

    Engine computer internal fault: torque monitoring performance

    Severity: Inspect soon
  • P0685

    ECM/PCM power relay control circuit open

    Severity: Inspect soon
  • P06DA

    Oil pressure control solenoid circuit open or high resistance

    Severity: Inspect soon
  • P1603

    Engine stall history (Toyota)

    Severity: Inspect soon
  • P1605

    Rough idling (Toyota)

    Severity: Inspect soon
  • P2615

    Camshaft position signal output circuit voltage low

    Severity: Inspect soon
  • P0600

    Engine computer lost communication with another module

    Severity: Inspect soon
  • P0605

    The engine computer failed its own read-only memory check

    Severity: Inspect soon
  • P060A

    The engine computer's monitoring processor reports a performance fault

    Severity: Inspect soon
  • P068A

    Engine computer power relay switched off too early

    Severity: Inspect soon
  • P06DE

    Engine oil pressure control circuit stuck on

    Severity: Inspect soon
  • P2638

    Engine and transmission computers disagree on the torque signal

    Severity: Severity not verified
  • P0651

    The 5-volt reference supply (circuit B) that powers a group of sensors is out of range

    Severity: Inspect soon
  • P2610

    The engine computer internal engine-off timer is not performing as expected

    Severity: Monitor
  • P061C

    Engine computer reports a fault in its own engine speed check

    Severity: Monitor
  • P0688

    Engine computer power relay sense circuit fault

    Severity: Inspect soon
  • P06B8

    Engine computer reports a fault in its non-volatile memory

    Severity: Monitor
  • P0604

    Internal memory (RAM) fault inside the engine or powertrain control module

    Severity: Inspect soon
  • P0641

    The 5-volt reference supply (circuit A) that powers several engine sensors is out of range

    Severity: Inspect soon
  • P0657

    Actuator supply voltage circuit open or out of range: the module that powers the engine and throttle actuators sees a problem with their supply

    Severity: Inspect soon
  • P00FF

    Body control module asked for the check engine light to be turned on

    Severity: Severity not verified
  • P032F

    The engine is producing less torque than the computer expects

    Severity: Severity not verified
  • P0602

    Control module programming error

    Severity: Inspect soon
  • P0603

    Control module keep alive memory error

    Severity: Inspect soon
  • P0608

    The engine computer found a fault in the speed signal it sends out to other systems

    Severity: Severity not verified
  • P0609

    The engine computer cannot pass its vehicle speed signal (output B) to other modules

    Severity: Severity not verified
  • P060C

    The engine or vehicle computer found a problem with its own main processor

    Severity: Inspect soon
  • P062F

    A control module found an error in its own stored memory (EEPROM)

    Severity: Inspect soon
  • P0643

    The sensor reference voltage A circuit reads too high

    Severity: Inspect soon
  • P0650

    Check engine light circuit fault: the engine computer sees a problem in the circuit that switches the malfunction indicator lamp

    Severity: Severity not verified
  • P0653

    The engine computer sees too much voltage on its sensor reference supply B

    Severity: Inspect soon
  • P0655

    The engine computer found a fault in the circuit that drives the engine-hot warning lamp

    Severity: Severity not verified
  • P0656

    The engine computer found a fault in the fuel level output circuit that feeds the fuel gauge signal

    Severity: Severity not verified
  • P2509

    The engine computer's power supply is dropping out on and off

    Severity: Inspect soon

Sources and review

  1. Final Regulation Order: 13 CCR §1968.2, Malfunction and Diagnostic System Requirements (OBD II), 2004 and subsequent model-year passenger cars, light-duty trucks and medium-duty vehicles (2015 amendments) — California Air Resources Board
  2. Automotive Polygamy (shared 5-volt sensor reference circuits) — Automotive Tech Info / Import Service magazine (John Anello) ,
  3. Diagnostic Trouble Codes Explained: How to Manage DTCs — MOTOR Information Systems
Last reviewed
Written by
Saurabh K.
Editorial review
Pending
Technician review
Technician review pending

This page explains what a code usually means; it is not a substitute for a professional inspection. How we source and review · Report an error

My Car

Pick your car and code pages will point out notes and bulletins for it. Saved only in this browser.

Fill this in from your VIN

Used once to identify your engine; not stored.