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 PCM detects a performance fault in its internal non-volatile random access memory (NVRAM). NVRAM is used to retain learned values, adaptive calibrations, fuel trim long-term data, and other parameters that must persist across key-off cycles. A performance fault indicates that NVRAM is present and accessible but is not retaining or delivering data with expected reliability.
Unlike an NVRAM error that prevents reading or writing entirely, a performance fault often manifests as data that fails checksum verification, is read back incorrectly after a write cycle, or degrades over repeated access cycles. The PCM may reset adaptive values to default, impacting fuel trim, idle control, and transmission shift adaptation.
The practical effect is that the vehicle may exhibit symptoms of a freshly reset ECU, such as rough idle, poor fuel economy, or jerky transmission behavior until adaptive learning re-establishes. Persistent NVRAM faults indicate internal PCM hardware degradation and typically require module 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 PCM hardware fault affecting the NVRAM interface circuit.
-
3
PCM subjected to voltage spikes or electrostatic discharge that damaged NVRAM cells.
-
4
Thermal overstress causing permanent NVRAM cell damage.
-
5
Corrupted PCM software causing incorrect NVRAM read/write operations.
-
6
Moisture or contamination inside the PCM affecting internal memory circuits.
-
7
Repeated battery disconnections causing excessive NVRAM write cycles over time.
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 strongly suggest a PCM hardware fault.
-
2
Check for any recent events such as battery replacement, jump-starting, or electrical fault that may have caused voltage spikes.
-
3
Verify PCM supply voltage stability and check for any signs of charging system faults that could cause voltage spikes.
-
4
Attempt a PCM software update if a calibration addressing NVRAM management is available.
-
5
Disconnect the battery for several minutes and reconnect to allow a full PCM reset, then recheck.
-
6
If the fault returns consistently without external cause, NVRAM hardware degradation is indicated and PCM replacement is warranted.
-
7
After any PCM replacement, allow adequate drive time for adaptive values to re-learn.
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 will lose my fuel trims every time I turn the car off?
In active NVRAM fault conditions, yes. Long-term learned values may not persist across key-off cycles, requiring re-learning each time.
Can a software update fix P066B?
If the issue is a software bug in NVRAM management, a reflash may help. If the physical NVRAM cells are degraded, software cannot repair hardware.
Is P066B related to P066A or P066C?
These codes address different memory types within the PCM. P066A typically covers EEPROM errors, while P066B covers NVRAM performance. Each requires separate diagnosis.
Will disconnecting the battery clear P066B permanently?
No. Disconnecting the battery may temporarily clear stored codes, but if the NVRAM hardware is faulty the code will return once the PCM 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.
ECUs with a P066B disable in our catalogue
Confirmed coverage from our recipe database — we support many more families. Upload your file and our identifier will match it automatically.
- Bosch EDC17C50 verified 1 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 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