2.2 Scan Tool Data, Freeze Frame, DTCs, and Repair Verification
Key Takeaways
- Record diagnostic trouble codes, freeze frame, and key live data before clearing anything.
- Freeze frame is the snapshot when the fault matured; live data is the engine right now—compare them instead of treating them as the same thing.
- Pending codes failed once, confirmed codes typically turned on the malfunction indicator, and permanent codes cannot be erased with a scan tool until the monitor passes.
- Clearing codes is not repair verification; complete the OEM enabling criteria so monitors run and the original complaint is gone under the same conditions.
- Diesel PIDs that earn their keep are desired-versus-actual rail pressure, boost, EGR, VGT position, DPF soot, DEF, and NOx.
Record first, wrench second
Once the complaint is duplicated and the VIN, engine family, and calibration are on the ticket, the next disciplined step is electronic: record diagnostic trouble codes (DTCs), freeze-frame (and any OEM snapshot or operational data), and a short list of live parameters. Then you may clear codes as the service information directs. Clearing first is how freeze frame disappears and how a two-trip emissions fault looks “fixed” at 4:55 p.m.
Use a scan tool that speaks manufacturer-enhanced diesel data. Generic OBD Mode $03 / $07 lists are not enough on a 6.7 Power Stroke, L5P Duramax, 6.7 Cummins, EcoDiesel, or TDI. You need rail-pressure actual versus desired, injector contribution or fuel rate, boost, EGR position, VGT position, DPF soot and pressure, exhaust temperatures, DEF level and quality, and NOx sensor readings when those systems are installed.
Print or screenshot:
- All modules that set codes, not only the ECM
- Code status: pending, confirmed/MIL, history, permanent
- Freeze frame (or OEM equivalent) attached to each emissions-related code
- A live-data list at idle, then under the duplicated load
- Calibration ID so later software comparison is possible
If the tool offers a flight recorder or movie, capture the surge, misfire, or derate event instead of trying to remember a one-frame glitch.
Freeze frame versus live data
Freeze frame is a snapshot stored when a monitor failed and the DTC matured. On light-duty OBD diesels it commonly includes engine speed, load or calculated load, coolant temperature, vehicle speed, fuel pressure or fuel level, and additional manufacturer PIDs such as boost, EGR, soot load, or rail pressure. It answers: What was the engine doing when the computer decided this was a fault?
Live data is the engine now. It answers: What is commanded and what is actual at this moment?
The trap is treating them as interchangeable. A 2016 LML Duramax may store freeze frame at 2,400 rpm, 78 percent load, 18,000 psi rail, 22 psi boost, and 190°F coolant when a P0087 low-rail code set on a grade. In the bay, live data at hot idle may show 5,000–7,000 psi rail and 0 psi boost. Idle live data does not disprove the freeze-frame event. You must recreate comparable load—road or dyno—and watch desired versus actual rail pressure, boost, and EGR while the event happens.
Use freeze frame to pick the test condition:
- Low coolant temperature in freeze frame → cold-start path (glow plugs, inlet heater, fuel gelling, weak cranking rpm)
- High soot or regen-active flags → aftertreatment or fuel-dosing path
- High load, high rpm → supply pump starvation, high-pressure pump volume, VGT, or CAC leak
- Idle-only frame → idle stability, EGR at idle, dual-mass flywheel or mount vibration that the driver called a “miss”
If freeze frame is empty, the code may be pending, non-emissions, or manufacturer-enhanced without a stored frame. You still record operational data while duplicating the complaint.
Monitor scan data that actually moves on a diesel
Gasoline fuel-trim habits do not transfer cleanly. Compression-ignition engines meter fuel by injection quantity and rail pressure, not by a throttle-following mass-air model in the same way. Watch pairs:
| Pair to watch | What a split usually means on Power Stroke, Duramax, Cummins, EcoDiesel, TDI |
|---|---|
| Desired versus actual rail pressure | Supply restriction, air in fuel, failed pressure-control valve, worn high-pressure pump, or excessive injector return |
| Desired versus actual boost | CAC leak, VGT stuck, wastegate fault, exhaust leak at up-pipes, or a plugged DPF raising backpressure |
| Commanded versus actual EGR | Carboned valve, failed cooler bypass, wiring, or a delete |
| Commanded versus actual VGT position | Stuck vanes, failed actuator, oil-soaked mechanism, or a melted connector |
| NOx upstream versus downstream (SCR trucks) | DEF quality/dosing, mixer, catalyst efficiency, or a lying NOx sensor |
| DPF soot / delta pressure | Incomplete regen, failed temperature sensor, fuel dilution, or a removed filter |
| Injector contribution / balance / fuel rate | One cylinder down versus a global fueling or mechanical issue |
Cranking rail pressure matters on no-starts. Many common-rail light diesels need several thousand psi (often on the order of 5,000 psi / about 350 bar, follow the OEM minimum) before the ECM will enable injection. A 6.7 Cummins that cranks forever with 400 psi actual rail is a supply or high-pressure-pump problem, not “bad glow plugs” as the first conclusion.
Bidirectional tests—VGT sweep, EGR forced, compression test via fuel cut, injector kill, DEF doser, regen—are confirmatory tools after you have a hypothesis. They are not a substitute for recorded freeze frame.
Pending versus confirmed versus permanent DTCs
Learn the status words the tool shows. Names vary slightly by OEM, but the ideas do not.
Pending (sometimes “maturing” or “not confirmed”) means a monitor failed once, or failed incomplete criteria. The malfunction indicator lamp (MIL) is often still off. Pending codes are clues. They can disappear after later passing trips, which is why you record them immediately.
Confirmed / MIL-on typically means the monitor failed the required number of trips (many two-trip codes; some misfire or fuel-system faults can light the lamp sooner). This is the code the customer saw on the dash.
History means the fault occurred, the lamp may have gone out after passing trips, but the code is still in memory. History without freeze frame still tells you the path that was taken last week.
Permanent DTCs are stored in non-volatile memory for OBD compliance. A scan tool cannot erase a permanent code. The code clears only after the ECM sees the associated monitor pass under the enabling criteria (often a specified number of consecutive passing drive cycles). Permanent codes exist so a shop cannot clear the lamp, idle the truck in the lot, and return it as “repaired” when the DPF, NOx, or EGR monitor has not run.
Manufacturer enhanced codes (Ford, GM, Ram-specific P, U, and aftertreatment codes) sit beside generic P20xx SCR and P24xx DPF codes. A U-code (lost communication) can make a healthy NOx sensor look failed. Diagnose the network and power/ground before you replace the sensor the code names.
Clear DTCs only after the record exists—then verify the repair properly
Service information often says to clear codes after the repair so monitors can run cleanly. That instruction assumes you already captured freeze frame and confirmed the root cause. Clearing is a step, not proof.
Repair verification on a modern diesel is three things, all required:
- The original complaint is gone under the same conditions used in verification (same load, temperature, regen state, trailer or dyno load).
- The repair enabling criteria in OEM service information have been completed so the relevant monitors run. That may mean a specified drive cycle, a completed DPF regeneration, a two-trip EGR monitor, a rail-pressure monitor after a high-pressure pump replacement, or an injector contribution relearn after coding injectors.
- Pending and confirmed codes stay gone, and any permanent code expires after the monitor passes—not after you pressed “clear.”
Idling in the shop until the MIL goes out does not complete a DPF efficiency monitor or an SCR NOx monitor. A 2019 L5P that set a NOx-sensor code after a melted harness needs the harness repaired, the code cleared (except the permanent copy), then a drive that actually lights off the aftertreatment and satisfies the OEM enable conditions. If you only clear and park it, the permanent code remains and the MIL will return on the customer’s first highway loop.
After injector or pump work, verification also includes checking that desired and actual rail pressure overlay under load, that there is no fuel smell or high-pressure mist, and that cranking rail still meets specification. After an EGR-cooler replacement, verification includes a cooling-system pressure hold and a confirmation that commanded EGR matches actual without coolant loss.
Worked scan examples
Freeze frame solves the bay-versus-road mismatch. A 2018 6.7 Power Stroke stores P0299 (underboost) at 55 mph, 18 psi desired boost, 7 psi actual, VGT 95 percent. Live idle boost is normal. The failure is a CAC boot or VGT at load, not a MAP sensor that “looks fine” in the stall.
Pending warns you. A 2017 EcoDiesel shows a pending EGR-flow code and no MIL. Live data shows commanded EGR 40 percent, actual 5 percent. If you clear and release, the confirmed code and derate appear on the owner’s commute.
Permanent keeps you honest. A TDI with a P2002 DPF efficiency code is cleared after a forced regen. The generic code vanishes; the permanent code remains until the efficiency monitor passes on a proper drive cycle. Sending the car home at that moment is incomplete verification.
Scan-data traps
- Reading only generic codes and missing a glow-plug module or aftertreatment-module fault
- Comparing idle live data to a high-load freeze frame and calling the engine healthy
- Using gasoline short-term fuel trim as the main diesel PID
- Clearing codes to “see what comes back” before recording freeze frame
- Declaring a repair complete because bidirectional tests work in the bay
- Replacing a NOx sensor for a U-code or a melted harness
- Ignoring a calibration ID mismatch after a used ECM install
Leave this section with a packet: code list with status, freeze frame, a load-point live-data capture, and a written verification plan that names the enabling criteria—not a screenshot that only says “no codes present.”
A 2016 LML Duramax sets a low rail-pressure code. Freeze frame shows 2,400 rpm, heavy load, and a large desired-versus-actual rail split. In the bay, hot-idle rail pressure looks normal. What is the correct use of that information?
Which statement correctly describes a permanent diagnostic trouble code on a light-duty diesel with OBD aftertreatment monitors?
A technician replaces a melted NOx-sensor harness on a 2019 Ram 2500 6.7 Cummins, clears codes, and idles the truck until the generic code disappears. A permanent aftertreatment code remains. What completes repair verification?
Before any diesel repair that will interrupt power or clear memory, what must be recorded?