P06B5
Internal Control Module Non-Volatile Memory PerformanceP06B5 is a generic OBD-II powertrain diagnostic trouble code: Internal Control Module Non-Volatile Memory Performance. It is logged by the engine control unit when the powertrain monitor detects that a specific fault threshold has been exceeded — typically resulting in the malfunction-indicator lamp (MIL / check-engine light) being illuminated.
What P06B5 means
P06B5 is set when the PCM/ECM detects a fault with its internal non-volatile memory (NVM), which is used to store learned values, adaptations, trim data, and other parameters that must persist after ignition off. Examples include fuel trim long-term corrections, idle speed adaptations, transmission shift adaptations, and immobiliser data.
When the NVM read-back verification fails a checksum or the memory region returns unexpected values, the module sets P06B5. This may happen after a module programming error, following a significant voltage event such as a battery jump-start with reversed polarity, or as the module ages and its internal flash memory develops bit errors.
In many cases the vehicle will continue to run but with default calibration values substituted for the lost adaptations, resulting in rough idle, poor fuel economy, or shift quality issues until the module re-learns. If the NVM fault is persistent rather than a one-time read error, the PCM may require reflashing or replacement.
Common causes
Most-frequently reported root causes when P06B5 is logged.
-
1
PCM NVM sector corruption from an interrupted programming or software update.
-
2
Voltage spike or reverse polarity event damaging NVM cells.
-
3
PCM internal flash memory wear causing read/write errors.
-
4
Loss of battery voltage during a period when NVM write was in progress.
-
5
Software bug causing a checksum mismatch in stored calibration data.
-
6
PCM hardware failure affecting the memory interface.
Symptoms drivers notice
How to diagnose P06B5
A typical diagnostic flow when this code is present.
-
1
Retrieve all DTCs and document all stored codes; NVM faults often accompany multiple system adaptation codes.
-
2
Verify battery voltage and charging system output; correct any charging faults before proceeding.
-
3
Attempt a PCM reflash with the current or updated calibration to restore NVM integrity.
-
4
After reflash, perform a complete relearn procedure including idle, fuel trim, and transmission adaptation drives.
-
5
If the code returns after reflash, suspect PCM hardware memory failure.
-
6
Replace the PCM and program the replacement unit if hardware failure is confirmed.
Related powertrain codes
- P0600 — Serial Communication Link Malfunction
- P0601 — Internal Control Module Memory Check Sum Error
- P0602 — Control Module Programming Error
- P0603 — Internal Control Module Keep Alive Memory (KAM) Error
- P0604 — Internal Control Module Random Access Memory (RAM) Error
- P0605 — Internal Control Module Read Only Memory (ROM) Error
Frequently asked questions
Will the engine run normally after P06B5?
Often yes, but with default adaptations substituted for learned values, which may cause temporary rough running or poor economy until relearning occurs.
Can disconnecting the battery cause P06B5?
A simple battery disconnect should not cause NVM corruption; however, a voltage event such as reversed jump leads can damage NVM cells and trigger this code.
Does P06B5 always mean PCM replacement?
No. Many cases are resolved by a reflash that rewrites the NVM with valid calibration data; hardware replacement is only needed when the memory fault persists after reflashing.
Will adaptations relearn automatically?
Yes, most adaptations relearn during normal driving within a few drive cycles, though a dealer-prescribed relearn procedure may accelerate the process.
Disabling P06B5 in software
RaceTune can permanently disable P06B5 — and any other OBD-II diagnostic trouble code — on every ECU family we support. The monitor is disabled inside the ECU itself, so the fault stops being logged: the warning light stays off and the engine never enters limp mode for this code. The change is tied to your exact software version.
Software modifications affect emissions compliance and are not road-legal in many jurisdictions. RaceTune service files are intended for motorsport, off-road, and export use.
Got P06B5 in your scan?
Upload your ECU file — we'll identify the exact software version and confirm whether a disable is available for your car.
Upload your file