P0631
VIN Not Programmed or Incompatible - TCM
TCM / module programming
Generic OBD-II
High
What it means
P0631 means the Transmission Control Module (TCM) either has no VIN programmed or holds a VIN that doesn't match the rest of the vehicle. It almost always appears after a TCM or PCM has been replaced or reflashed and not properly configured. Until the correct VIN is programmed in with a scan tool, the transmission may shift in a default/limp mode, and some vehicles with a security tie-in may not start.
High
Can I keep driving? Have it addressed before relying on the vehicle — a VIN mismatch in the transmission module can force default/limp shifting and, on some vehicles, prevent starting.
Common symptoms
What you'll notice
- Check-engine light on
- Harsh, default, or limp-mode shifting
- Cranks but may not start on vehicles with security/immobiliser tie-in
- Other modules may flag communication or configuration faults
Common causes
Most likely first
- TCM or PCM replaced without the VIN being programmed inLikely
- TCM software out of date or needs configurationCommon
- Failed or incorrectly matched TCM/PCMCommon
- Communication (bus) or wiring fault between modulesLess often
How to diagnose & fix
Work through it in order
- Confirm whether a module was recently replaced — this code most often appears after TCM/PCM service.
- Use a capable scan tool (often dealer-level) to program the correct VIN into the TCM and configure it.
- Check for and apply any required TCM software update.
- Verify module communication and wiring; replace or correctly match the module only if programming fails. Clear and re-test.
FAQ
Quick answers
Is it safe to drive with P0631?+
Treat it cautiously. The transmission may run in a default/limp mode, and some vehicles won't start until the VIN is programmed. Get it sorted before depending on the car.
Can I just clear P0631?+
No — this is a configuration fault, not a transient one. It stays until the correct VIN is programmed into the module with a scan tool.
Related codes
Read & clear P0631 yourself
Scan your car, confirm the code, and clear it once it's fixed — with OBD DashX on your phone.
✓ Verified name — SAE J2012 / ISO 15031-6Guidance reviewed by OBD DashX