• Welcome, Guest! We hope you enjoy the excellent technical knowledge, event information and discussions that the BMW MOA forum provides. Some forum content will be hidden from you if you remain logged out. If you want to view all content, please click the 'Log in' button above and enter your BMW MOA username and password.

    If you are not an MOA member, why not take the time to join the club, so you can enjoy posting on the forum, the BMW Owners News magazine, and all of the discounts and benefits the BMW MOA offers?

Long Term Fuel Trim

roger 04 rt

New member
Some Results

Got out and made a few test runs last Saturday and did some more reading. Here is my 2 cents worth of thinking at the moment, and with apologies if any of it seems controversial ...

Since Bosch is relatively secretive about its Motronic product, it has been like pulling teeth to get an answer to the simple question: When do the Motronics MA 2.2 and 2.4 apply Closed Loop fueling adaptations to Open Loop fueling?

Although I'm still looking into this, what I've read (Bosch articles, handbooks and patents) and what I've measured (test runs) have led me to believe that it is much more likely than not that Motronics that use O2 sensors apply what they learn in Closed Loop operation to adjust Open Loop fueling.

As the Motronic learns how much more or how much less fuel it takes at each RPM/TPS position to reach Lambda=1 (during Closed Loop operation), it is making small corrections for fuel type (e.g. E10), airflow, fuel-flow, cylinder volume, battery voltage, etc. With my programmable-for-NarrowBand LC-1, I can reset the target air:fuel ratio and watch the Motronic adjust--I can see that happen for sure.

When I let the motorcyle adapt to a new AFR, and then force the motorcyle to Open Loop (through programming) the motorcyle runs much differently and the AFR displayed by the LC-1 wideband gauge confirms this by reading either richer or leaner than before. Then if I reset the Motronic by pulling its fuse and waiting a while, the AFRs are different still. (There are more things I want to try.)

Although this adaptive Fuel trimming has benefits that I listed above, here are some possible negatives that are hard to measure:

1. If your O2 sensor has aged and it is not efficient at registering lean mixtures, the Motronic will have to over-lean the mixture, learn that factor, and then lean out the Open Loop by applying the learned factor. This would have a negative effect on lean-surge.

It is hard to test an O2 sensor for accuracy. I'm not sure how any of us would easily do that. You can't tell how quickly it reacts to lean or rich and you can't tell if it is 14.7, 14.5 or 15.1:1.

2. Another likely outcome is that if you add an aftermarket product to adjust fueling, it seems likely that at first you would see an improvement and over time the improvement might be "adapted" out. However, when you disconnected that product, things would get worse for a while (until the Motronic readapted) so one might be convinced that the aftermarket product was indeed helping.

3. If you disconnect the O2 altogether, you might get a good result or a less than good result depending on how the stock fuel tables matched the specific tolerances of your motorcycle and the stoichiometric ratio of the actual fuel you are running (how much Ethanol).

The results of disconnecting the O2 might get better or worse if the Motronic was reset--meaning the Adaptation factors that had been previously stored while in Closed Loop were erased. I don't know.

One thing I know for sure is that my particular R1150RT runs much stronger (not that it ran bad before) at an accurate Lambda=0.97 (AFR 14.2:1) than it did with the stock O2 sensor. What I don't know yet is just what that stock O2 sensor of mine was doing. I will eventually go back and look at that.
 
Roger,

In your second post you state that, when you force the Motronic into open loop operation, it runs differently than when in closed loop. This seems counter to the idea that LTFT adaptations developed during closed loop operation are applied when open loop in an effort to keep things consistent.

I wonder if there is a difference between "normal" open loop operation, such as during cold starts or when accelerating hard, and "forced" open loop operation, such as when an O2 sensor failure occurs or is simulated. Does the Motronic react differently to failures and not apply the adaptations?
 
Roger,

In your second post you state that, when you force the Motronic into open loop operation, it runs differently than when in closed loop. This seems counter to the idea that LTFT adaptations developed during closed loop operation are applied when open loop in an effort to keep things consistent.

I wonder if there is a difference between "normal" open loop operation, such as during cold starts or when accelerating hard, and "forced" open loop operation, such as when an O2 sensor failure occurs or is simulated. Does the Motronic react differently to failures and not apply the adaptations?

Karl,
You've read pretty carefully and picked up a mistake I made in shortening that section.

1) After riding for a day or more at Lambda=0.97, I forced Open Loop by programming the LC-1 to to about 450 mV (I'll come back to this). When I did, cruising seemed to be at Lambda=0.97 (gauge showed 14.2:1) but didn't hold it well. When I went back and looked at the full log, the GS-911 indicated that the Motronic was still indicating an attempt to Close the Loop.

2) Then I pulled the fuse. After the reset, the AFRs changed a lot and got leaner into the 15s. The bike did not idle well.

3) Then I pulled my BoosterPlug and got an even different mix of results, but leaner rather than richer. The bike idled worse.

4) Finally, I put everything back in place, reprogrammed the LC-1 to 14.2 with voltage swings and after about 30 seconds everything was working correctly.

5) Then after 15 or 20 minutes, I programmed the LC-1 to 13.8:1 (lambda=0.94). I watched the realtime O2 display which was very interesting. For several seconds it held in the rich state, then momentarily dipped lean, the dipped lean a couple more times and then started the usual back and forth between rich and lean. I then rode the bike for a while--normal operation but at 13.8:1. It was interesting to watch the Motronic hunt and find the new settings.

Coming back to pinning the voltage to 450mV to force Open Loop: I think I should run the same tests with the O2 input disconnected. I have a feeling that forcing a mid voltage didn't give me the clearest results. To do that I have to pulling the fairings and the tank. I may try that this weekend.

Nonetheless, it seems to me that there is ample written and measured evidence that it is far more likely than not that the Motronic w/O2 is an adapting system for Closed and Open Loop. And the Bosch Automotive Handbooks all describe them working that way.




For anyone interested, here is a simplified version of one of three sets of formulas that I found that are used by ECUs. I would love to know Bosch's formula.

BPW = BPC*MAPP*T*F33C*BLM*DFCO*DE*CLT

BPW = How long to turn on the injector

BPC = Basic Pulse Width (value from TPS/RPM table)
MAPP= Measured Air Pressure (value from lookup table)
T = Measured Air Temperature(value from lookup table)
F33C= Measured Battery voltage compensation

BLM= Block Learn Term (what the ECU has learned from the O2 sensor)
DFCO= Decel Fuel Cutoff Term (when to turn fuel off on decel)
DE= Decel enleanment term (when to lean instead of cutoff)
CLT= Closed loop correction term (from O2 sensor learning)

So the BLM and CLT values are "learned" from the O2 sensor and can be applied proportionally.
 
Roger,

In your second post you state that, when you force the Motronic into open loop operation, it runs differently than when in closed loop. This seems counter to the idea that LTFT adaptations developed during closed loop operation are applied when open loop in an effort to keep things consistent.

I wonder if there is a difference between "normal" open loop operation, such as during cold starts or when accelerating hard, and "forced" open loop operation, such as when an O2 sensor failure occurs or is simulated. Does the Motronic react differently to failures and not apply the adaptations?


Karl,

You raised another good test. Watch the cruise fueling cold. Then reset the Motronic and watch the cruise fueling closed. That is in Open Loop for sure. No need to pull the tank, fairings, etc. I think I'll give that a try. This might be a more accurate way to get at the factors.

Roger
 
Back
Top