Fuel trim in open-loop operation?

Joined
3 July 2013
Messages
1,798
Location
Northern Virginia
When the stock ECM is in open-loop mode, does that mean it applies the base map without long-term trims, or that it applies the base map with long-term but without short-term trims?

What about other trims such as altitude? I would think that the ECM would want to consider a number of factors even during open-loop operation.

While I'm specifically interested in the OBD2 ECM, I imagine the strategy would be the same for both.

Thanks for any thoughts or evidence to show one behavior or another.

-jason
 
When the stock ECM is in open-loop mode, does that mean it applies the base map without long-term trims, or that it applies the base map with long-term but without short-term trims?

What about other trims such as altitude? I would think that the ECM would want to consider a number of factors even during open-loop operation.

While I'm specifically interested in the OBD2 ECM, I imagine the strategy would be the same for both.

Thanks for any thoughts or evidence to show one behavior or another.

-jason

SR5GUY has mapped all the trims and knows how they act in open and close loop, he may be able to answer this definitively but I think what the OEM ECU does is only applies short and long term trims in closed loop, and when the car goes into power enrichment or open loop it ignores the long and short term trims, it will apply all the other sensor trims like IAT, ECT, Knock, and Baro but I think that is it. The reason I say this is that on the dyno WOT pulls are very consistent from pull to pull, day to day but the trims are ever changing in reaction to the O2 sensor data. It is not uncommon for the long term trims to very by 5 or 10% in either direction and if that was carried into open loop we would see a big swing in the AFR from pull to pull. If you want to know for sure, next time on the dyno lean the car out on idle the ECU will add fuel via the short term trims, then add fuel to the long term trims, then once the long terms are at about 10% do a pull and see if your WOT AFR has moved, it is not likely that it will. For the OEM it is safer to go into open loop with a known set of commands based on engine dyno tuning, and not apply the long term trims. It does not make much since to rely on sensor data from a narrow band O2 to make changes to the most critical part of fueling a car. If you had an O2 failure causing the car to run rich during closed loop the long term trims would work their way to -25% or more before a code would be thrown, if you applied those trims to the open loop you could remove 25% or more of the needed fuel under heavy load and in most cases the engine would not survive.

Other car makers do apply their trims in both open and closed loop but I do not believe Honda does. More modern Engine Management Systems do rely on O2 sensor data but they are most likely using a wideband O2 not a narrow band O2 like the NSX has.

Dave
 
You should start looking for an ECU in the marketplace now. It can be modified and installed in your car without any work being done to your current ECU.

Dave
 
You should start looking for an ECU in the marketplace now. It can be modified and installed in your car without any work being done to your current ECU.

Dave
I must have missed some recent updates. I'll check Matt's thread. As far as I know he hasn't yet provided a solution for someone like me to read the trims from the ECU but he did map most, if not all, of the code.
 
Thanks Dave. That makes some sense about not applying any trims during open loop although it would seem that could be the approach only if an O2 sensor fails. I suppose that the ECM can't be sure that it knows when a sensor fails. I was thinking that if there is an issue with the fuel system that the ECM compensates for with positive trim, then it would be unfortunate not to benefit from that trim during open loop. Engineering is an exercise in balancing tradeoffs.

But your real-world experience is what I was looking for. If dyno runs at WOT show no variance then it appears the LT trims are ignored during open-loop operation. Thank you.
 
o2 compute.jpg

Here is the system, no guessing. The fuel trim is cleared when power enrichment mode is active - FlagPEActive (open loop - over approximately 50% throttle position). Barometric pressure compensations are always applied regardless of fuel mode status. Note that there is a 400ms delay timer before transition from the last computed fuel trim to the clear fuel trim "Move $8000 -> R0" takes place.

Note that a new fuel trim is not computed unless all of the criteria in the boxes are met - over 400 RPM, under 6200RPM, FlagFuelMultCut NOT Set, FlagPEActive NOT Set, and WarmUpEnrich is not too high. The new fuel trim is computed from the oxygen sensor signal in another program called from the bottom right box. "ComputeCurFuelTrim".

Barometric pressure compensations are always applied regardless of fuel mode status.
 
Last edited:
Thank you. That is extraordinarily helpful. I'm also watching your work from the sidelines, hoping for OBD2 tuning ability.
 
Any chance you could point me in the direction to a larger version of this diagram?
Or it's source?

View attachment 114485

Here is the system, no guessing. The fuel trim is cleared when power enrichment mode is active - FlagPEActive (open loop - over approximately 50% throttle position). Barometric pressure compensations are always applied regardless of fuel mode status. Note that there is a 400ms delay timer before transition from the last computed fuel trim to the clear fuel trim "Move $8000 -> R0" takes place.

Note that a new fuel trim is not computed unless all of the criteria in the boxes are met - over 400 RPM, under 6200RPM, FlagFuelMultCut NOT Set, FlagPEActive NOT Set, and WarmUpEnrich is not too high. The new fuel trim is computed from the oxygen sensor signal in another program called from the bottom right box. "ComputeCurFuelTrim".

Barometric pressure compensations are always applied regardless of fuel mode status.
 
My laptop is down right now any thing you need to know in specific?

I am curious about closed loop operation, and what the o2 sensors do during CL. When they are used ect..

The car is new to me and before I did all my work to it, I had a CEL code 2 & 44. I found the aft O2 sensor wires melted by the exhaust and installed a new sensor (Denso). But because of the headers the lead was too short and I fabricated an extension. Fast forward, the first drive after all the work, I got a CEL about 25 minutes into the drive. Turn the car off and back on, CEL gone, but it came back in about 5 minutes. Code was 2 & 44 again. I strange thing was at the same moment as CEL illuminated, the car picked up power, as if it was too rich/lean and then corrected itself in open loop. After going over the aft O2 wiring again, and resetting the ecu it drove fine with no CEL illumination. But I know it will return, these things don't clear themselves. The car has a chip that was represented as an RM, and my FP resistor is bypassed. So I don't know what else has been monkied with.

I built my own Megasqurt for my Miata race car and now understand how this stuff is supposed to work, but it would be nice to understand what the ECU is looking for when it makes it's changes.

If it makes sense, we can take this further with PMs.
 
Last edited:
I am curious about closed loop operation, and what the o2 sensors do during CL. When they are used ect..

The car is new to me and before I did all my work to it, I had a CEL code 2 & 44. I found the aft O2 sensor wires melted by the exhaust and installed a new sensor (Denso). But because of the headers the lead was too short and I fabricated an extension. Fast forward, the first drive after all the work, I got a CEL about 25 minutes into the drive. Turn the car off and back on, CEL gone, but it came back in about 5 minutes. Code was 2 & 44 again. I strange thing was at the same moment as CEL illuminated, the car picked up power, as if it was too rich/lean and then corrected itself in open loop. After going over the aft O2 wiring again, and resetting the ecu it drove fine with no CEL illumination. But I know it will return, these things don't clear themselves. The car has a chip that was represented as an RM, and my FP resistor is bypassed. So I don't know what else has been monkied with.

I built my own Megasqurt for my Miata race car and now understand how this stuff is supposed to work, but it would be nice to understand what the ECU is looking for when it makes it's changes.

If it makes sense, we can take this further with PMs.
Might be a dumb question.. but did you cross the O2 wires? I got the same code 44 (and 43) when it was crossed up in my car.
 
When say crossed up, do you mean the sense wire and the signal gound for the same o2 sensor or crossed between front and rear bank? They are not crossed between banks, and I double checked the sense and ground wires.
I drove the car Saturday without the CEL light illuminating. I have another thread about this going on in naturally aspirated section.
 
Back
Top