P066B
Internal Control Module Non-Volatile Random Access Memory (NVRAM) PerformanceP066B is a generic OBD-II powertrain diagnostic trouble code: Internal Control Module Non-Volatile Random Access Memory (NVRAM) 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 P066B means
P066B is stored when the control module detects a performance fault in its internal non-volatile random access memory (NVRAM). NVRAM retains learned values, adaptive calibrations, long-term fuel trim data, and configuration parameters that must persist across key-off cycles without applied power. A performance fault means the NVRAM is present and accessible but is not retaining or delivering data with the expected reliability.
Unlike a hard NVRAM error that prevents reading or writing entirely, a performance fault often shows up as data that fails checksum verification, reads back incorrectly after a write, or degrades over repeated access. In response the module may reset adaptive values to defaults, which affects fuel trim, idle control, and transmission shift adaptation.
The practical effect is that the vehicle can behave like a freshly reset controller, with rough idle, poor fuel economy, or jerky shifting until adaptive learning re-establishes. This code appears most often on Ford, Volvo, Mazda, and Lincoln vehicles and is associated with voltage spikes, low battery voltage, corrosion or water intrusion, and failed programming. Persistent faults after those causes are eliminated indicate internal module degradation and typically require replacement.
Common causes
Most-frequently reported root causes when P066B is logged.
-
1
NVRAM cell degradation due to age or excessive write cycles.
-
2
Internal module hardware fault affecting the NVRAM interface circuit.
-
3
Voltage spikes or low battery voltage corrupting stored data.
-
4
Water intrusion or corrosion in the module connector.
-
5
Improper module programming or a failed firmware update.
-
6
Corrupted module software causing incorrect NVRAM read/write operations.
-
7
Poor power supply or ground connections to the module.
Symptoms drivers notice
How to diagnose P066B
A typical diagnostic flow when this code is present.
-
1
Read and record all stored DTCs; multiple internal module codes alongside P066B suggest a module hardware fault.
-
2
Check for recent events such as battery replacement, jump-starting, or a failed reflash.
-
3
Verify battery and charging system health and confirm stable supply voltage with no spikes.
-
4
Inspect the module power, ground, and connector for corrosion or water intrusion.
-
5
Apply a module software update if a calibration addressing NVRAM management is available.
-
6
Clear the code and retest over drive cycles to see whether the fault returns.
-
7
If the fault returns consistently with no external cause, evaluate the module for replacement.
Vehicles where we've handled P066B
Platforms in our catalogue with confirmed P066B coverage.
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
Does P066B mean I lose my fuel trims every time I turn the car off?
In an active NVRAM fault, yes. Long-term learned values may not persist across key-off cycles, forcing re-learning each start.
Can a software update fix P066B?
If the cause is a software bug or a failed prior reflash, a proper update can help. If the physical NVRAM is degraded, software cannot repair the hardware.
Which vehicles most commonly set P066B?
It is reported most often on Ford, Volvo, Mazda, and Lincoln vehicles, frequently tied to voltage spikes, corrosion, or programming issues.
Will disconnecting the battery clear P066B permanently?
No. It may temporarily clear stored codes, but if the NVRAM hardware is faulty the code returns once the module runs its self-diagnostic routine.
Disabling P066B in software
RaceTune can permanently disable P066B — 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.
ECU families we can disable P066B on
We hold the DaVinci A2L disable definitions for these families, so the exact P066B path and mask addresses are mapped. verified marks a confirmed disable definition. We support many more — upload your file and our identifier will match it automatically.
- Bosch EDC17C50 verified
- Bosch EDC17C56 verified
- Bosch EDC17C60 verified
- Bosch EDC17CP44 verified
- Bosch MD1CP002 verified
- Bosch MD1CP004 verified
- Bosch MD1CS001 verified
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 P066B 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