Everything on this page came out of real diagnostic work on this car — much of it is not documented in the official workshop manual. The full story is in the misfire diagnostic report.
The AML V12 is managed as two independent six-cylinder engines, each with its own Powertrain Control Module. Each ECU numbers its own cylinders 1–6 internally, front to rear. Global OBD-II DTC codes (P030x) use the full 1–12 scheme.
| ECU | Label | Bank | Global cyl numbers | Physical location |
|---|---|---|---|---|
| Primary PCM | EMS-P | Driver (RH) | 1 – 6 | Numbered front to rear |
| Secondary PCM | EMS-S | Passenger (LH) | 7 – 12 | Numbered front to rear |
Global cylinder map (viewed from above, front of car at top): PASSENGER SIDE (EMS-S) DRIVER SIDE (EMS-P) Cyl 7 · EMS-S Inj 1 ←— front ——→ Cyl 1 · EMS-P Inj 1 Cyl 8 · EMS-S Inj 2 Cyl 2 · EMS-P Inj 2 Cyl 9 · EMS-S Inj 3 Cyl 3 · EMS-P Inj 3 Cyl 10 · EMS-S Inj 4 Cyl 4 · EMS-P Inj 4 Cyl 11 · EMS-S Inj 5 Cyl 5 · EMS-P Inj 5 Cyl 12 · EMS-S Inj 6 ←— rear ——→ Cyl 6 · EMS-P Inj 6
ThinkDiag exposes two different numbering schemes that must not be confused, and it can only read one ECU at a time.
ECU-relative. Always 1–6, relative to whichever ECU is active in the current session. INJ_FAULT[0] = Injector 1 on the active ECU — not global Cylinder 1.
Global SAE J1979 numbering, 1–12 spanning both banks. These appear in whichever ECU session is open but reference the global scheme.
Codes present during the April 2026 misfire diagnosis. The practical rule: a single confirmed dead cylinder on one bank of this V12 can generate 1–2 ghost misfire codes on adjacent or cross-bank cylinders. Identify and fix the true dead cylinder first — the sympathy codes clear on their own.
| Code | Description | Verdict | Resolution |
|---|---|---|---|
| P0307 | Cylinder 7 misfire detected | Real | EMS-S Inj 1 blocked — injector cleaned and refitted |
| P0305 | Cylinder 5 misfire detected | Ghost | Sympathy/compensation code — cleared when Cyl 7 restored |
| P0300 | Random/multiple misfire | Derived | Consequence of P0307 — cleared automatically |
| P1656 | Misfire on startup (first 1,000 rev) | Derived | Cleared automatically |
| P1000 | System check not completed since memory clear | Expected | Self-clears after full drive cycle (~few days) |
The VH V12 uses a Ford-derived neural network misfire detection system (JPL/NASA-origin technology, first production use on the DB9 in 2004), inferring misfires from crankshaft deceleration pulses. A consistently dead cylinder creates a large rotational irregularity that can be misread as a misfire on an adjacent firing-order position. On top of that, unburnt fuel and excess oxygen pumped through the dead cylinder corrupts the O2 sensor readings for the bank — the ECU leans the whole bank in compensation, which can push borderline cylinders into misfiring at idle. Some ECUs also retard timing across the bank to protect the catalysts, which can itself tip a marginal cylinder over.
When a single cylinder presents as dead immediately after manifold/injector work, work through this order before committing to a ~3-hour manifold stripdown. The stripdown is only justified if steps 1–4 yield nothing.
Learned the hard way: ultrasonic cleaning dislodged a deposit inside an injector, and without active flushing the debris resettled onto the pintle seat, creating a complete blockage. The solenoid still operated perfectly — no fault code, no fuel.
Required after replacing plugs and/or coilpacks — the neural-net misfire system learned its baseline from the old ignition components. Also known as the flywheel learning or adaptive learning procedure. Same procedure for all DB9 model years (confirmed on 2005, 2007, 2008, 2010 and 2013 MY).
In live data, watch 36-1 Profile Correction Learned (item 209 on the Foxwell NT530). It changes from Not Learned to Programmed when complete. In practice this has been observed after as few as one coast-down on a healthy engine — connect the tool and watch live rather than doing all five blindly.