AUTO-230 · Lesson 12 of 12 · 21 min
Capstone: diagnosing a check-engine light from code to repair
On the last Monday of the term, Gord Haney's pickup comes in again. The check-engine lamp has been on for a week, steady, not flashing. Gord says the truck runs fine, maybe a little rougher at idle, and that it has developed a ticking noise for the first minute after a cold start, which goes away as the engine warms up. He tows his trailer with it every day and wants to know whether it is safe to keep doing that. Marty hands Kiran the repair order and tells her this is her capstone. "Do the whole job," he says. "Interview, verify, scan, think, test, repair, verify again, write it up, and explain it to Gord. I'll sign it at the end, but I won't help unless you ask."
This capstone brings together the whole course: combustion and lambda, fuel delivery and injection, sensors, fuel trims, ignition, EVAP, aftertreatment, OBD-II and the inspection rules. It follows one diagnosis step by step, the way a technician should approach any check-engine light, and ends with the repair order and the conversation with the customer.
Step 1: interview and verify
Kiran starts with Gord at the counter, with Simone. When does the tick happen? Only on cold starts, for about a minute, loudest at the front left of the engine bay, and it seems faster when he revs the engine. Has anything else changed? Fuel economy is a little worse, maybe. Has anyone worked on the truck recently? Only Ridgeline: the plugs, a boot and a coil on cylinder 7 in Lesson 7. She writes his words on the repair order exactly as he says them, because the customer's description is evidence too.
The next morning, she verifies the complaint on a cold start before the truck has been moved. The tick is clear, a sharp, quick tapping that follows engine speed, and it fades over about ninety seconds as the engine warms. With a stethoscope, it is loudest near the rear of the left exhaust manifold, not at the valve cover. A tick that follows engine speed and fades with heat suggests an exhaust leak that seals as the cast-iron manifold expands, more than a valvetrain noise, which usually gets louder hot. She notes it and does not yet decide.
Step 2: scan, record and research
The scan tool shows one confirmed code, P0171, system too lean, bank 1, with the MIL on, and the same code as permanent. On this engine, bank 1 is the left bank, cylinders 1, 3, 5 and 7. The freeze frame shows it set at a coolant temperature of 88 °C, 18 km/h, light load, with short-term trim at +9 percent and long-term trim at +17 percent on bank 1, and +1 and +2 percent on bank 2. All monitors are complete, and Mode 6 shows the bank 1 catalyst and oxygen sensor results inside their limits. There are no misfire counts. Before testing, she checks the manufacturer's service information and technical bulletins for P0171 on this engine family; a bulletin describes broken exhaust manifold bolts on these engines, with a ticking noise on cold starts and possible lean codes from air drawn in at the leak. She records the freeze frame on the repair order before she does anything else.
Step 3: think before testing
Kiran works through what the data say, as the course has taught her. A lean code on one bank only means a cause that bank does not share: not the MAF sensor, the fuel pump or the pressure regulator, which serve both banks. That leaves an intake leak on bank 1, such as a cracked runner gasket or a leaking injector O-ring; restricted bank 1 injectors; or a false lean from outside air reaching the bank 1 upstream sensor through an exhaust leak. The freeze frame says the code set at low speed and light load, and the trims she reads at a warm idle are high on bank 1, +24 percent total, but only +7 percent at 2,500 rpm. Both an intake leak and an exhaust leak fit a fault that is worst at low airflow. The cold-start tick and the bulletin point to the exhaust, but a hunch is not a diagnosis. She plans three tests: confirm the shared systems are healthy, smoke the intake, and smoke the exhaust.
# Capstone data review: is the fault shared by both banks or specific to bank 1?
R = 287.0
baro, temp_c, displacement = 89.4, 18, 5.3
rho = baro * 1000 / (R * (temp_c + 273.15))
idle_rule = displacement * baro / 101.3
data = {"warm idle": {"maf": 4.8, "b1": (+7, +17), "b2": (+0, +2)},
"2500 rpm no load": {"maf": 19.8, "b1": (+1, +6), "b2": (-1, +2)}}
print(f"expected idle airflow at this altitude: about {idle_rule:3.1f} g/s")
for point, d in data.items():
t1, t2 = sum(d["b1"]), sum(d["b2"])
print(f"{point:<18} MAF {d['maf']:5.1f} g/s bank 1 total {t1:+3d} % bank 2 total {t2:+3d} %")
diff_idle = sum(data["warm idle"]["b1"]) - sum(data["warm idle"]["b2"])
diff_2500 = sum(data["2500 rpm no load"]["b1"]) - sum(data["2500 rpm no load"]["b2"])
print(f"bank difference: {diff_idle:+d} % at idle, {diff_2500:+d} % at 2500 rpm")
print("bank 1 only, worst at low airflow -> unmetered air into bank 1, or air into the bank 1 exhaust ahead of the sensor")expected idle airflow at this altitude: about 4.7 g/s warm idle MAF 4.8 g/s bank 1 total +24 % bank 2 total +2 % 2500 rpm no load MAF 19.8 g/s bank 1 total +7 % bank 2 total +1 % bank difference: +22 % at idle, +6 % at 2500 rpm bank 1 only, worst at low airflow -> unmetered air into bank 1, or air into the bank 1 exhaust ahead of the sensor
Step 4: test
First, the shared systems. Fuel pressure on the gauge is 400 kPa (58 psi) at idle and holds under a snap of the throttle, and it holds above specification after shutdown. The MAF reads about 4.8 g/s at a warm idle, which is normal for a 5.3-litre V8 at this altitude by the rule of thumb in Lesson 4, and it agrees with the airflow calculated from manifold pressure. Both bank 2 values, trims and sensor activity, are normal. The upstream sensors respond quickly to propane enrichment and to a small vacuum leak. None of that points to a shared fault.
Second, the intake. With the air duct sealed at the filter and the smoke machine on the intake at very low pressure, no smoke appears at the runner gaskets, the throttle body, the injector O-rings, the brake booster hose or the crankcase ventilation hoses. The intake is sealed. Third, the exhaust. With the engine cold and off, she blocks the tailpipe with the proper plug and introduces smoke at very low pressure through the bank 1 upstream oxygen sensor port, with the sensor removed. Smoke pours from the rear of the left manifold, between the manifold flange and the cylinder head next to cylinder 7. With a mirror, she finds the rear bolt's head missing: the bolt has snapped, and the manifold flange has warped slightly away from the head at that corner.
The mechanism fits everything. When the engine is cold, the gap at the broken bolt is open. Each exhaust pulse pushes gas out of the gap, which makes the tick, and between pulses the momentary low pressure in the manifold draws a little outside air in, ahead of the bank 1 sensor. The sensor sees that extra oxygen and reports lean, and the computer adds fuel to bank 1, which is now actually running rich. At idle, where the exhaust pulses are widely spaced and the flow is small, the drawn-in air is a large share of the gas, so the false lean is largest. As the manifold heats and expands, the gap partly closes, which is why the tick fades. Marty, watching from bay 5, says nothing, which Kiran takes as a good sign.
Step 5: repair
Broken exhaust manifold bolts are a common failure on many engines, caused by the manifold expanding and contracting with every heat cycle until the bolts fatigue. Kiran follows the bulletin's repair. The manifold comes off; the broken bolt's stub stands proud of the head, so instead of drilling, she uses penetrating oil, heat and a stud extractor, and it turns out cleanly. A broken stub flush with the head would have needed a drill guide and extractor, or a repair kit, and care not to damage the threads. She checks the remaining bolts and finds a second one on the same manifold cracked under the head, which she also replaces. The manifold flange is checked with a straightedge and feeler gauge; it is within the bulletin's flatness limit. She fits the revised bolts and a new gasket from the bulletin's kit, cleans the threads, and torques the bolts in the specified order and to the specified torque, 20 N·m on this engine, plus the bulletin's final pass. The oxygen sensor goes back in with anti-seize on its threads only, as its maker specifies, keeping the compound off the sensing tip.
Step 6: verify
Repairing the leak is not the end of the job. Kiran clears the code, knowing she has recorded the freeze frame, and starts the engine cold the next morning: no tick. After the engine warms, bank 1 total trim at idle is +3 percent and bank 2 is +2 percent; at 2,500 rpm, +1 and +2 percent. The bank 1 upstream sensor switches normally. She drives the truck through the manufacturer's drive cycle, and the next day the fuel system monitor has passed, the permanent P0171 has cleared, and every monitor is complete. She explains to Gord that Alberta does not test light vehicles, but that the repair has brought the fuel use and emissions back to normal and removed the risk of the leak growing. A road test with the trailer is uneventful.
Step 7: document and explain
Ridgeline's repair orders follow the three Cs: the complaint, in the customer's words; the cause, in technical terms; and the correction, with what was done and how it was verified. Kiran writes: complaint, check-engine lamp on, ticking noise on cold start; cause, P0171 bank 1 lean from outside air drawn into the exhaust ahead of the bank 1 upstream sensor at a broken rear exhaust manifold bolt, with a second bolt cracked, confirmed by smoke test; correction, extracted and replaced broken and cracked bolts with the revised bolts from the bulletin, new gasket, flange checked flat, trims verified at +3 and +2 percent, drive cycle completed, all monitors ready, permanent code cleared. She records the readings before and after, attaches the smoke test photo, and builds the invoice.
# Repair order totals for the capstone (illustrative prices)
labour_rate = 165.00 # CAD per hour
labour_hours = 2.9 # manifold removal, bolt extraction, verification
parts = {"manifold bolt kit (bulletin)": 64.50, "manifold gasket": 38.20, "penetrant and anti-seize": 9.80}
shop_supplies = 8.00
labour = labour_rate * labour_hours
parts_total = sum(parts.values())
tax = 0.05 * (labour + parts_total + shop_supplies); tax_note = "GST 5 % on all"
print(f"labour {labour_hours} h x {labour_rate:.2f} = {labour:8.2f} CAD")
for name, price in parts.items():
print(f" {name:<30} {price:8.2f} CAD")
print(f"parts {parts_total:8.2f}, shop supplies {shop_supplies:6.2f} CAD")
print(f"tax ({tax_note}) {tax:8.2f} CAD")
print(f"total {labour + parts_total + shop_supplies + tax:9.2f} CAD")labour 2.9 h x 165.00 = 478.50 CAD manifold bolt kit (bulletin) 64.50 CAD manifold gasket 38.20 CAD penetrant and anti-seize 9.80 CAD parts 112.50, shop supplies 8.00 CAD tax (GST 5 % on all) 29.95 CAD total 628.95 CAD
Then she explains it to Gord, without jargon. A bolt holding the exhaust manifold to the left side of the engine had broken, which is common on engines of this type as they heat and cool thousands of times. The gap let exhaust out, which was the tick, and let a little air in, which fooled the engine's oxygen sensor into thinking that side of the engine was running lean. The computer added fuel to correct it, so that side of the engine was actually running rich, which cost fuel and could, over time, have damaged the catalytic converter. Both bad bolts are replaced, the leak is sealed, the engine's own tests have all passed, and the truck is safe to tow with. Gord asks whether the converter is all right; Kiran shows him the Mode 6 catalyst result, comfortably inside its limit. He pays, and on the way out tells Simone that Kiran explains things better than his doctor.
What the capstone shows
Marty signs the repair order. Kiran's diagnosis cost one smoke test of the intake and one of the exhaust, a few minutes of data review and some careful listening, and it found the cause before any part was ordered. The parts-cannon approach, replacing the bank 1 oxygen sensor because the code said lean, would have cost Gord the price of a sensor and left the truck exactly as it was, with a new sensor faithfully reporting the same false lean. Every lesson of the term was in the job: lambda and the exhaust gases, the fuel supply and injectors that she ruled out, the MAF calculation adjusted for altitude, the fuel trim pattern that pointed to one bank, the OBD-II codes, freeze frame, Mode 6 and readiness that recorded the fault and proved the fix, and the inspection rules that made the verification matter.
Worked problem
A different ending
Suppose the exhaust smoke test had found no leak, the intake was sealed, and bank 1 total trim was +6 percent at idle and +19 percent at 2,500 rpm, with bank 2 normal. What would the next test be?
Show solution
- The fault is on bank 1 only, so shared parts are unlikely.
- A lean condition that grows with airflow on one bank suggests the bank 1 injectors are not delivering enough fuel.
- Next: an injector balance test or scan-tool injector test on cylinders 1, 3, 5 and 7, and an inspection of their connectors.
- A restricted injector on bank 1 would explain the pattern; the misfire counters and plug condition would also be checked.
Answer: Test the bank 1 injectors: a balance test on cylinders 1, 3, 5 and 7.
Common mistakes
MistakeReplacing the oxygen sensor named by a lean code.
InsteadThe sensor usually reports correctly; find where the extra oxygen comes from.
MistakeClearing the code before recording freeze frame.
InsteadRecord the freeze frame first; it is the best evidence of when the fault happens.
MistakeIgnoring the customer's description of a noise.
InsteadGord's cold-start tick was the clue that pointed to the exhaust.
MistakeReplacing only the broken bolt.
InsteadCheck the others; a cracked second bolt was found and replaced.
MistakeCalling the job finished when the lamp goes out.
InsteadVerify trims, complete the drive cycle and confirm the monitors and permanent code.
Summary and key terms
- A good diagnosis follows a process: interview, verify, scan and record, research, analyse, test, repair, verify and document.
- Freeze frame, trims by bank and Mode 6 data narrow the cause before any part is replaced.
- A lean code on one bank points to something that bank does not share.
- An exhaust leak ahead of the upstream sensor causes a false lean and makes the engine run rich.
- Smoke testing finds intake and exhaust leaks quickly and safely.
- Verification includes trims, sensor activity, the drive cycle, monitors and permanent codes.
- The repair order records complaint, cause and correction, and the customer is told in plain words.
- Three Cs
- Complaint, cause and correction, the structure of a repair order.
- Technical service bulletin (TSB)
- A manufacturer's published fix or procedure for a known problem.
- Parts-cannon diagnosis
- Replacing parts in the hope of fixing a fault, without testing to find the cause.
- Stud extractor
- A tool that grips and removes a broken bolt or stud.
- Drive cycle
- A sequence of driving conditions designed to run the OBD-II monitors.
- Verification
- Testing after a repair to prove the fault is fixed and the systems are working.
Practice problems
Work each problem on paper first, then reveal the answer to check.
Why did the false lean affect only bank 1?
Show answer
The exhaust leak was in the bank 1 manifold, ahead of only the bank 1 upstream sensor.
Was bank 1 actually lean or rich before the repair?
Show answer
Rich: the computer was adding fuel to correct a false lean reading.
Why did the tick fade as the engine warmed?
Show answer
The manifold expanded and partly closed the gap at the broken bolt.
What three things does a repair order record?
Show answer
The complaint, the cause and the correction.
Lesson quiz · 5 questions
Score 60% or more to complete this lesson.
Create a free account to save your progress, take quizzes and earn a certificate.