← Owner's Log
Diagnostic Summary
Aston Martin DB9 Coupé · 2009 · 5.9L V12
Date: 08 April 2026
VIN: SCFAC01E19*******
Tool: ThinkCar / ThinkDiag

01 / Background & Initial Condition

The vehicle had a pre-existing intermittent misfire on one cylinder. Remedial work was carried out replacing all 12 spark plugs and all 12 coilpacks across both banks. This required full removal of both inlet manifolds and all 24 fuel injectors. All injector O-rings (upper and lower) were replaced. Injectors were ultrasonically cleaned prior to refitting.

On return to running, multiple misfires were reported on the passenger side bank only. The engine would idle but was noticeably rough, and ThinkDiag stored fault codes indicating misfires on cylinders 5 and 7 under the standard OBD-II global numbering scheme.

02 / Engine Architecture & ECU Mapping

The DB9 V12 is managed as two independent six-cylinder engines, each with its own Powertrain Control Module. The two ECUs are completely separate — ThinkDiag can only interrogate one at a time. Fault codes, live data, and injector fault PIDs are all relative to the ECU being queried. Stored DTC misfire codes however use the global OBD-II numbering (1–12), which spans both banks.

◀ FRONT OF CAR ▶ EMS-S · Secondary PCM Passenger side · Cyls 7–12 (global) ECU-relative: Inj 1–6 / Cyl 1–6 EMS-P · Primary PCM Driver side · Cyls 1–6 (global) ECU-relative: Inj 1–6 / Cyl 1–6 PASSENGER SIDE DRIVER SIDE ENGINE BLOCK Cyl 7 (global) EMS-S · Inj 1 / Cyl 1 ★ FIX Cyl 8 (global) EMS-S · Inj 2 / Cyl 2 Cyl 9 (global) EMS-S · Inj 3 / Cyl 3 Cyl 10 (global) EMS-S · Inj 4 / Cyl 4 Cyl 11 (global) EMS-S · Inj 5 / Cyl 5 Cyl 12 (global) EMS-S · Inj 6 / Cyl 6 Cyl 1 (global) EMS-P · Inj 1 / Cyl 1 Cyl 2 (global) EMS-P · Inj 2 / Cyl 2 Cyl 3 (global) EMS-P · Inj 3 / Cyl 3 Cyl 4 (global) EMS-P · Inj 4 / Cyl 4 Cyl 5 (global) EMS-P · Inj 5 / Cyl 5 P0305 Cyl 6 (global) EMS-P · Inj 6 / Cyl 6 ▼ FRONT ▼

Key mapping rules

Each ECU numbers its own bank from 1–6 starting at the front. Global OBD-II cylinder numbers 1–6 belong to EMS-P (driver side), and 7–12 belong to EMS-S (passenger side). ThinkDiag's live INJ_FAULT PIDs are ECU-relative (always 1–6), while stored misfire DTCs use the global scheme. The two systems are only readable one at a time.

03 / ThinkDiag Cylinder Numbering Decoded

ThinkDiag reported two misfire codes in the EMS-S diagnostic report. Since all data in that session came from EMS-S only, and EMS-S is the passenger bank, the codes can be fully resolved:

ThinkDiag DTC Global Cyl # ECU ECU-relative Physical location Status
P0307 7 EMS-S Inj 1 / Cyl 1 Front of passenger bank Root cause
P0305 5 EMS-P Inj 5 / Cyl 5 5th from front, driver bank Sympathy misfire
⚠ P0305 appears to be on the driver-side bank (EMS-P), but was present in the EMS-S report session. This is because the stored global DTC crossed the ECU boundary — Cyl 5 (global) belongs to EMS-P. The code was generated by the crankshaft position sensor misfire detection algorithm misattributing deceleration events caused by the completely dead Cyl 7 to an adjacent firing-order position. It is a ghost code and not a real fault on the driver bank.

ThinkDiag live data vs stored DTCs

ThinkDiag's live INJ_FAULT parameters (INJ_FAULT[0] through INJ_FAULT[5]) map directly to the ECU's own injector numbering — Cyl 1–6 relative to whichever ECU is active. These were used during the injector unplug test to physically map injector positions. The stored DTC misfire codes (P0305, P0307) use the standard SAE J1979 global cylinder numbering that runs 1–12 across both banks, with odd numbers on one bank and even on the other being a common convention — in the DB9's case, 1–6 driver, 7–12 passenger, numbered front to rear on each bank.

04 / Diagnostic Stages & Findings

STAGE 01 Initial fault reading — post reassembly ThinkDiag
EMS-S reported P0307 (Cyl 7 misfire) and P0305 (Cyl 5 misfire). Random misfire and startup misfire codes also present. No EMS-P faults. All fault codes were from the passenger side ECU session only.
Fault localised to passenger side bank. Twin-ECU architecture confirmed — only one bank affected.
STAGE 02 Injector unplug test — idle response Physical test
Injector connectors on EMS-S were unplugged one at a time with engine running. Unplugging EMS-S Inj 1 (global Cyl 7, front passenger) caused zero change to idle quality. All other injector unplug events caused a noticeable idle change.
Cyl 7 (EMS-S Inj 1) confirmed not contributing to combustion. Cylinder effectively dead.
All other five passenger-side cylinders confirmed firing normally.
STAGE 03 Vacuum leak test — manifold gasket Ruled out
Brake cleaner sprayed around the manifold-to-head joint on the passenger side, specifically targeting the Cyl 7 port. No change in idle quality at any point during the test.
Manifold gasket vacuum leak ruled out as cause.
STAGE 04 O-ring vacuum leak — already eliminated Ruled out
All 24 injector O-rings (upper and lower) had been replaced as part of the original service work. A localised O-ring vacuum leak was considered and eliminated on this basis, along with the absence of any idle response to unplugging.
O-ring vacuum leak ruled out.
STAGE 05 Injector removal & pulse test (first attempt) Fault found
EMS-S Inj 1 removed and connected to a 12V pulse tester with brake cleaner pressurised at the inlet. The injector did not pulse or flow. Consistent with a blockage caused by debris dislodged during ultrasonic cleaning settling back onto the pintle seat or inlet filter basket.
Injector confirmed not flowing. Root cause identified — blocked injector post ultrasonic clean.
STAGE 06 Second ultrasonic clean with pulse tester connected Root cause resolved
Injector ultrasonically cleaned a second time with the pulse tester connected throughout. Injector began ticking (solenoid firing) immediately. Brake cleaner flushed through produced a correct, even spray cone pattern.
Key insight: keeping the pulse tester active during the second clean prevented debris from resettling. The first clean had dislodged the blockage but allowed it to re-seat on the pintle.
STAGE 07 Reinstallation & verification Resolved ✓
Injector reinstalled into EMS-S Inj 1 position (Cyl 7). Engine started and ran smoothly with no misfires. All bank activity normal.
P0307 cleared. P0305 sympathy misfire also absent. Engine running correctly on all 12 cylinders.

05 / Root Cause Summary

The ultrasonic cleaning process successfully dislodged a deposit from inside the Cyl 7 injector. However, without active flushing after cleaning, the debris resettled onto the pintle seat or inlet filter basket, creating a complete blockage. The injector solenoid continued to operate normally — explaining the absence of an injector circuit fault code — but delivered no fuel.

The P0305 sympathy misfire on Cyl 5 was a secondary effect: with Cyl 7 producing no power stroke, the crankshaft deceleration signature was misread by the neural-net misfire detection algorithm as a misfire on an adjacent firing-order position. Additionally, unburnt fuel and oxygen pumped through the dead cylinder confused the bank 2 O2 sensors, causing ECU fuelling compensation across the bank which stressed the neighbouring cylinders.

Lesson learned — ultrasonic cleaning protocol

When ultrasonically cleaning injectors, always reconnect to a pulse tester immediately after cleaning and flush with clean solvent under pressure before the injector cools and any dislodged debris can resettle. The second clean succeeded specifically because pulsing was maintained throughout, preventing re-deposition.

06 / Misfire Correction Factor Relearn

Following replacement of all 24 spark plugs and all 12 coilpacks, and any battery disconnection during the work, the flywheel learning procedure must be performed to restore optimal misfire detection and engine calibration. The DB9 uses a Ford-derived neural network misfire detection system that learns crankshaft deceleration profiles specific to the car's ignition components.

Pre-conditions — all must be met

Procedure

  1. Warm the engine fully. Drive normally for several miles before beginning.
  2. Accelerate smoothly to 70 mph in Drive (D). Cruise briefly to stabilise.
  3. Lift off the throttle completely. Coast in gear with no throttle and no brakes from 70 mph all the way down to 20 mph. Any brake or throttle input aborts this run — start again from step 2.
  4. When speed reaches 20 mph, accelerate smoothly back to 70 mph and repeat the coast-down. Perform 5 complete runs in total (or until ThinkDiag live data confirms the profile is learned).
  5. In ThinkDiag live data, look for parameter 36-1 Profile Correction Learned (item 209). When this changes from Not Learned to Programmed, the procedure is complete. Some cars have been observed to learn after just one coast-down.
⚠ After clearing codes, a P1000 code (system check not completed since last memory clear) will appear across all ECUs. This is normal and will self-clear after a few days of normal driving as the full OBD-II drive cycle completes. It does not indicate a fault.
Aston Martin DB9 · VIN SCFAC01E19******* · Diagnostic report 08-04-2026 ThinkCar ref TC0065150441