2005 BMW 325 P0171 P0174 227 228 Fault Codes Dinan Stage 2

The BMW had fault codes 227 and 228 stored (P0171, P0174) indicating a lean fuel system. This means the vehicle is running lean and the DME has tried to correct the condition but has reached it upper limit. Fault codes 227 and 228 are specific to a fault when the engine is at part throttle (not idle). This tells us that it’s unlikely the lean condition caused by and engine vaccum leak.

codesa

First I ran engine until it reached operating temperature. Then monitored fuel trim at idle using my scan tool. As you can see the Idle Load fuel trim is normal.
scan3

Next I went for a drive in the vehicle. I ran the engine through each RPM range from idle, steady cruise to WOT (wide open throttle). You can see the Part Load fuel trim is indicating a lean condition, (by adding fuel) during my entire test drive. Part Load does take some time to update, so I suggest a 15 minute test drive at the minimum.
scan1
During my test drive I am able to eliminate many possible causes of the lean condition. For example; I monitor Idle Load fuel trim at idle to see if it could be a vaccum leak. That coupled with freeze frame data ruleda vacuum leak out.
I also perform a WOT test on the fuel system. If the oxygen sensor holds above 800 mv for the entire time I am at WOT, the fuel pump and fuel delivery system can deliver enough fuel. Next I check the engine and exhaust system by looking at G/PS or Kg/H. This reading tells me about engine efficiency. I can estimate the amount of air at a given RPM, therefore testing the MAF sensor without touching it.

The 325 had Dinan performance software and an airbox, or what they refer to as Stage 2. I was convinced the problem was with the Dinan components but I have only an hour to prove this to be correct.
engine

The airbox in modified by introducing a cold air intake, removing a baffle and changing the filter from a panel to a version of a cone style.
airbox

Here’s what I did.

I found the area where the baffle was removed (Dotted White Line) and temporarily mounted a piece of plastic in place.
airboxinterior

I plugged the cold air intake port with a plastic cap.
airboxplug

Next I reprogrammed the car back to the factory DME software.
progman

I went for a test drive, repeated the same RPM ranges as my previous one. The Part Load fule trim began to drop into an acceptable range.
scan3

Next I contacted Dinan with the information. They agreed to write a custom DME map for this car. Once I received the map I programmed the car again with Dinan’s MIP tool. It took a week or so to receive the new DME map, so the vehicle owner had to drive with the MIL light ON.
dinansoft

Once programmed I test drove the vehicle aagin, within the same RPM ranges. You can see part load came back down to a normal range and the vehicle is no longer exhibiting a lean condition.
scan4

This is a tricky fix. Without my standard fuel trim drive cycle test (to test components during the test drive), I may have replaced parts that were not faulty. It is important to approach each and every fuel trim fault the same way. A structured test plan will build confidence and make quick work of these common faults.