Closed Loop Operation Calculation Issues with Fuel Trims

FlashPro questions & answers specific to the 2006-2009 (US, UK, Asia) S2000
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Hello, I have been trying to get the long term fuel trim set on my 2006 S2000, and I am noticing a couple of issues that don't make sense to me.

#1 At idle, the LTFT always goes deep into negative numbers trying to pull fuel. However the STFT is trying to correct it with positive numbers. It's as if the LTFT has a mind of its own at idle and will not follow STFT numbers. STFT could be 5% and then the LTFT will start to go negative. Eventually LTFT settles around -10% and STFT is trying to compensate with around +15%. No matter how much fuel I reduce in the base map at idle, the LTFT still remains a negative number, and eventually the motor can no longer handle the low fuel numbers in the base map and will start to stumble and record high AFR's.

#2 While driving around at partial throttle, the closed loop system seems better. It will slowly creep its way back towards 0 LTFT, but even during partial throttle operation, the combined total of STFT+LTFT is still on average +5% higher than it should be. It should be settling on 0% total if running the RPM and MAP consistently at the same position for a long time. For example, the STFT could be +3% and LTFT would be around -2%, and it would not bring the LTFT any closer to 0% while holding this for 20 minutes.

Overall I believe the issues are very related, and it seems that the closed loop operation is confused by not following the STFT numbers. I would expect 20 minutes of STFT +3% to bring the LTFT from -2% to +0-1%. Same with idle. I would expect the +15% STFT to bring the LTFT from -10% to +5% after sitting for a long time.

I have even tried perfectly setting the idle AFR by adjusting the low fuel table with all Fuel Trim values at 0% in the Closed loop part of the calibration. It idled perfectly at the desired AFR, and then when re-enabling the original Fuel Trim values, the system did the same exact thing and started to swing towards negative LTFT while the STFT attempted to overcompensate.

Please let me know if there is some sort of Closed Loop hard relearn, or anything else that may be of value to get the Closed Loop system back to following the actual STFT values.

Notes:
- All tests were done fully warmed up with IAT's and Coolant temperatures at 0% fuel compensation.
- All fuel trim values in the closed loop lambda part of the calibration are set for 14.5AFR.
- Everything else in the calibration that could change fueling is zeroed out with normal values.
- The injectors are only a few months old, but they are OEM aftermarket replacements from RockAuto, matching the same part number. Every injector setting in Flashpro is set to stock values.
- The primary O2 sensor is less than 6 months old and it posts very consistent values and very closely matches my new wideband sensor as well.
User avatar
Spunkster
Site Admin
Posts: 22737
Joined: Fri Sep 20, 2002 5:06 pm
Location: Hondata

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Spunkster »

It sounds like you could have an exhaust leak that is causing in this to happen.
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Meaning that the possible exhaust leak is causing the sensor to read a lower AFR at idle?

Is there anything else I can look out for? I had the exhaust off/on yesterday and it nothing has changed since then. All gaskets are fairly new and no exhaust leaks were detected. I can do a more thorough check, but just wanted to see if you had anything else in mind.
User avatar
Spunkster
Site Admin
Posts: 22737
Joined: Fri Sep 20, 2002 5:06 pm
Location: Hondata

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Spunkster »

other possibilities are a faulty O2 sensor or leaking injectors.
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

So I just retuned the entire low fuel table in all closed loop cells from scratch with all fuel trim values in the calibration set to 0. Everything is near perfect, especially idle hovering dead on at 14.63. After doing this live, I uploaded the tune to verify that it is still hitting the same AFR's at idle and partial throttle, and it is. So it's clear that without the closed loop values enabled the car runs perfectly. AFR's don't drift in any direction.

After doing the above I went in and re-enabled only the STFT values. The car ran great again at idle and partial throttle, and was hitting the target AFR's in every cell.

As a final test, I simply went in and re-enabled the LTFT values and loaded the tune. I let it idle for 30 minutes, and within the first minute the LTFT was already starting to post negative values and kept going negative until it hit the lower limit that I set to -15%. It never came back up.

I'm not sure what to do at this point, but there clearly seems to be an issue with the idle logic of the Long Term Fuel Trim part of Closed Loop.
User avatar
Spunkster
Site Admin
Posts: 22737
Joined: Fri Sep 20, 2002 5:06 pm
Location: Hondata

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Spunkster »

Post the calibration as well as datalogs showing what you are describing.
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Spunkster wrote: Fri Feb 12, 2021 5:18 pm Post the calibration as well as datalogs showing what you are describing.
Exact steps taken.

Loaded "FEB17-RandomRichness-ClosedLoopON.fpcal" and datalogged "Datalog-210217-ClosedLoopON1.fpdl":
1. Drove car around for a while to get fully warmed up.
2. Noticed that WOT pulls in 1st and 2nd gear had super rich AFR hesitation at ~5750-6250RPM. Might not be related to my issue, but figured I'd mention it.
3. Did a few more 1-2 gear pulls to verify consistency in this issue, and then parked the car to let it idle for a bit.
4. Almost immediately, the AFR's were cycling between ~15 AFR and ~12AFR as you can see in the logs.
5. Wiggled around all 4 spark plug coil connectors, and even popped the connector off one to see if anything was loose etc. The car obviously stumbled when I popped the connector off, but quickly returned to "normal" and back to the 12-15AFR swinging.
6. Logged this for awhile for you to see.

Loaded "FEB17-RandomRichness-ClosedLoopOFF.fpcal" and datalogged "Datalog-210217-ClosedLoopOFF.fpdl":
1. Within only a few minutes this tune with Closed Loop values all set to 0 was loaded. Other than that, the tune is identical in FlashPro.
2. The AFR's never cycled once and essentially stayed completely stable for the whole duration of this datalog.

RE-Loaded "FEB17-RandomRichness-ClosedLoopON.fpcal" and datalogged "Datalog-210217-ClosedLoopON2.fpdl":
1. Same exact tune file as what was datalogged in "Datalog-210217-ClosedLoopON1.fpdl", but reloaded within a few minutes after I finished logging the "FEB17-RandomRichness-ClosedLoopOFF.fpcal" file.
2. As you can see, within only a couple of minutes the AFR's went back to cycling between ~15 AFR and ~12AFR as you can see in the logs.
3. It wasn't super rich at first only posting lower 14-15AFR swings, but it eventually went back to the 12-15AFR swings.

I'd love as much help as you can provide. At this point it seems safer to drive the car around with all Closed Loop values set to 0 until we can figure it out.
Attachments
FEB17-RandomRichness-ClosedLoopON.fpcal
(10.58 KiB) Downloaded 139 times
FEB17-RandomRichness-ClosedLoopOFF.fpcal
(10.56 KiB) Downloaded 137 times
Datalog-210217-ClosedLoopON2.fpdl
(27.29 KiB) Downloaded 134 times
Datalog-210217-ClosedLoopON1.fpdl
(24.25 KiB) Downloaded 144 times
Datalog-210217-ClosedLoopOFF.fpdl
(30.55 KiB) Downloaded 143 times
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Please note that I have a 2 month old AEM wideband sensor that is hooked up to the ELD pin on the ECU, as you can see in the calibration, if you wanted to view this data alongside the factory primary O2 in your own logging template.
User avatar
Spunkster
Site Admin
Posts: 22737
Joined: Fri Sep 20, 2002 5:06 pm
Location: Hondata

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Spunkster »

Try putting the stock fuel trim settings back and see if that works better.
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Spunkster wrote: Wed Feb 17, 2021 1:36 pm Try putting the stock fuel trim settings back and see if that works better.
I have tried with every possibility including the stock values. No matter what numbers I put in the fuel trim fields (except all 0's), it always does what you saw in the logs at idle.

If you want me to do this and post the log for that too, just let me know.

Up until recently when this was happening, the fuel trim values stayed at stock values:
-31
47.08
-20.78
25.39
-25
20
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Went ahead and did it any way. Please let me know what you think.
Attachments
FEB17-ClosedLoopONStock.fpcal
(10.56 KiB) Downloaded 126 times
Datalog-210217-ClosedLoopONStock.fpdl
(44.54 KiB) Downloaded 143 times
User avatar
Spunkster
Site Admin
Posts: 22737
Joined: Fri Sep 20, 2002 5:06 pm
Location: Hondata

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Spunkster »

The trims are now changing which indicates that closed loop is working.
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Spunkster wrote: Wed Feb 17, 2021 5:45 pm The trims are now changing which indicates that closed loop is working.
Please read my original post. It wasn't a matter of closed loop working or not working, it clearly does something when it is active but the issue is that it pulls WAY too much fuel at idle. My point is that the closed loop function is working severely incorrectly at idle.

If I am perfectly tuned with all closed loop values set to 0 for a 14.7 AFR matching the target 14.7 in the calibration, then surely when I re-apply the original closed loop values that both my STFT and LTFT would be near 0... right? Why would they be extremely negative?

In my post earlier today where I shared my calibration with all 0 closed loop values, it idled perfectly around 14.7. Then I reapply the exact same tune with negative fuel trim values set to 0 and the car wants to swing back and forth between 12-15AFR? I don't get it.

Then I applied the bone stock fuel trims as you asked, and the ECU decides it wants to pull 12-15% fuel at idle until the both the STFT and LTFT is super duper rich. I don't see any problem being resolved here. There's no reason the ECU should be pulling any fuel at idle if the base map is set perfectly so that it idles at 14.7. Even if I humor the closed loop system by starting to pull out fuel as it suggests, the engine will eventually start to stumble due to a major lack of fuel in the base map. There is no winning here.

I would REALLY appreciate your help into a more thorough review of this matter. I have literally spent dozens and dozens and dozens of hours on this issue that continues to baffle me. I really don't want to permanently force my car into all 0 fuel trims just because of this idle issue while the rest of the entire tune works perfectly.
User avatar
Hondata
Site Admin
Posts: 10434
Joined: Thu Aug 15, 2002 12:13 pm
Location: Torrance, CA
Contact:

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by Hondata »

There's a couple of minor things and one major thing. The minor things - don't test with live tuning on if you suspect a problem. There's no known problems with live tuning on the S2000 and I have not seen any bugs with it, but it is one more factor when trying to diagnose something. The second minor thing is that when trying to restrict the closed loop trims don't use 0% - use 1% or -1%. Again, no known problems with using 0% but when trying to narrow things down it is best to eliminate as many possible problems as you can.

The major thing. When testing, if you strike an obvious problem, stop and do not go any further because all subsequent results will be invalid. So when I loaded the first datalog and looked at closed loop I could see something was wrong. The lambda is going rich but the injector duration is not changing. There's no point going any further until that problem is fixed.
closed loop
closed loop
s2000_s02.png (22.58 KiB) Viewed 5101 times
And you will notice that the rich periods perfectly match the S02. Unplug the S02. Don't disable it, unplug it. And I'm 99.99% sure it will fix the problem. Then if you want we can work on disabling the S02 in a different way but this will fix your problem.
Hondata
xxshift
Posts: 18
Joined: Thu Nov 21, 2019 2:53 pm

Re: Closed Loop Operation Calculation Issues with Fuel Trims

Post by xxshift »

Hondata wrote: Thu Feb 18, 2021 10:38 am There's a couple of minor things and one major thing. The minor things - don't test with live tuning on if you suspect a problem. There's no known problems with live tuning on the S2000 and I have not seen any bugs with it, but it is one more factor when trying to diagnose something. The second minor thing is that when trying to restrict the closed loop trims don't use 0% - use 1% or -1%. Again, no known problems with using 0% but when trying to narrow things down it is best to eliminate as many possible problems as you can.

The major thing. When testing, if you strike an obvious problem, stop and do not go any further because all subsequent results will be invalid. So when I loaded the first datalog and looked at closed loop I could see something was wrong. The lambda is going rich but the injector duration is not changing. There's no point going any further until that problem is fixed.

s2000_s02.png

And you will notice that the rich periods perfectly match the S02. Unplug the S02. Don't disable it, unplug it. And I'm 99.99% sure it will fix the problem. Then if you want we can work on disabling the S02 in a different way but this will fix your problem.
That's the crazy thing, the secondary O2 sensor has been unplugged for quite some time now. I will re-enable it and run with the CEL to see how it reacts.

Side note: I attempted to re-configure every known value relating to fuel/trims/etc in order to trick the system into getting around this issue. So far in my two test cases I have been successful by entering a -12% overall fuel trim value, and then adding fuel into the basemap to compensate. This -12% value is consistent with the average amount of fuel that the short/long term trims were trying to take out at idle. With this workaround I finally have a stable idle that doesn't go crazy on the fuel trims.
Locked