A 2015 BMW X5 (F15, F85) rolled into a French workshop with a rough cold idle, occasional power loss, and three codes pulling in different directions: P0300, P0171, and P0128. The technician noted that the check engine light was illuminated and the power loss occurred primarily under acceleration.
Dealing with a random misfire (P0300) alongside a system too lean fault (P0171) and a thermostat code (P0128) requires untangling air, fuel, and temperature parameters simultaneously. Our diagnostic platform processed these inputs to map out the most probable root causes on this specific B47D20B diesel engine.
Defective Piezo Injectors
At the top of the probability list, ranked at 90 percent, were defective piezo fuel injectors. In the B47D20B engine, compromised piezo injectors frequently lead to poor fuel atomisation or incorrect injection quantities. Whether the delivery volume is too low or the spray pattern is simply ineffective, the result is incomplete combustion.
This incomplete combustion triggers the misfire code (P0300) and disrupts the air-to-fuel ratio enough to log a lean condition (P0171). The diagnostic engine flagged this as a medium severity issue.
To confirm this, the technician needs to test the injector operating values using a diagnostic scan tool. A leak-off test is also required to physically verify if excessive fuel is returning to the tank, which would confirm internal injector wear.
Unmetered Air in the Intake System
Ranked closely behind at 85 percent was an intake air leak located after the mass air flow sensor. The B47D20B is highly sensitive to the integrity of its intake tract. Unmetered air entering the intake manifold, the charge air ducts, or around the throttle body dilutes the actual fuel mixture.
This excess air creates the lean condition and compromises combustion stability enough to induce random misfires.
The required testing path here starts with a thorough visual inspection of the intake system. If nothing is visibly split or disconnected, a smoke test of the intake system is the next logical step. Monitoring the live values of the MAF sensor and the boost pressure under load will also reveal discrepancies between requested and actual air volume.
The Thermostat Influence
The presence of P0128 points directly to the engine failing to reach its optimal operating temperature within the prescribed timeframe. Our system ranked a thermostat stuck in the open position at an 80 percent probability.
On this engine, the electronically controlled thermostat can fail open, allowing coolant to circulate continuously through the radiator. A cold engine operates with reduced combustion efficiency. This exacerbates the rough idle during a cold start and forces the engine control unit to rely on cold-start enrichment maps far longer than intended.
Verifying this is straightforward. The technician must monitor the live coolant temperature via the scan tool from a cold start to observe the warm-up curve. A visual inspection of the thermostat housing is also recommended to check for external leaks.
Low Fuel Rail Pressure
Also ranked at 80 percent probability, but flagged as high severity, was low fuel rail pressure. If the common rail cannot maintain adequate pressure, the injectors cannot deliver the required fuel volume. This starvation directly causes the P0171 lean code and the P0300 misfire, particularly noticeable as power loss under acceleration.
The root component could be a failing low-pressure fuel pump, a defective high-pressure fuel pump, a faulty pressure regulator, or a failing rail pressure sensor providing incorrect data to the engine control unit.
Diagnosing this requires monitoring the live fuel rail pressure, specifically comparing the target pressure against the actual measured pressure. Following that, a volume and pressure test of the low-pressure pump is necessary to ensure the high-pressure pump is receiving adequate fuel supply.
Pattern Recognition in the Bay
Seeing a temperature code sit alongside lean and misfire codes can misdirect a diagnosis if the codes are treated as isolated problems. Identifying the interplay between poor atomisation, unmetered air, and engine temperature allows a technician to work through a logical sequence of tests. I would be curious to hear if you are seeing this specific combination of codes on the B47 engine in your own bays.
