Page 1 of 1

AFCMD / closed loop goes mad

Posted: Sat Oct 25, 2008 11:07 am
by Razathorn
My car was working fine -- it has been for quite some time, outside of not getting the greatest fuel economy. I was wanting to try some cam angle changes to the cruise area to see if it would improve things. Long story short, now closed loop is completely useless. It seems to progressively go leaner and leaner via AFCMD, up to the point that the thing simply doesn't run right, obviously. The car operates fine in open loop. I thought the wideband might have been going south, but the secondary o2 seems to agree about the rich/lean switch at stoich (minus some deviation for the cat), and in open loop, driving around, the a/f reads right where it should be.

So... the only observable thing I can see is the afcmd progressively going lean, which causes closed loop to basically kill the car.

Attached are the kal and kdl. Kmanager is latest at this time (1.3.0.0)

Wayne

Posted: Sat Oct 25, 2008 3:15 pm
by Razathorn
Switched back to my OLD laptop and now it works fine. Old laptop is on 1.2.8.0. New laptop was a fresh XP install, hot fixes, service packs, and fresh kmanager 1.3.0.0 -- all installed last week on a freshly formatted disk. I've used the NEW laptop to do tuning before (on a prior os install) and have never seen this issue at all. The NEW laptop doesn't disconnect or have any issues uploading or datalogging -- in fact, outside of AFCMD going absolutely nuts, it works perfectly with kpro.

This has be absolutely stumped -- I have to move to this new laptop because the old one is a 700 mhz toshiba with about 2 minutes of battery life and lots of other damage from being my tuning laptop for years. I can't understand what is special here. I even tried downgrading to 1.2.8.0 on the new laptop, clearing security, and re-uploading -- no luck. I was never able to downgrade the ecu drivers though, they seem to stick around after an uninstall.

Wayne

Posted: Sat Oct 25, 2008 8:38 pm
by Razathorn
Did some more research into the issue -- turns out calibrations saved with 1.2.8.0 or 1.3.0.0 on my new laptop come out with differences in the ClosedLoopTargetLambda section. For example... here is a diff of the kal from my old laptop and what it looks like after being uploaded and downloaded from the ecu (similar results can be seen by just re-saving a calibration on my new laptop).

Code: Select all

 [ClosedLoopTargetLambda]
 ; ECT,Lambda
-0=123.40625,1.0078125
-1=140.969230769231,1.0078125
-2=158.692307692308,1.0078125
-3=176.96,1.0078125
+0=123.40625,1.00712585449219
+1=140.969230769231,1.00712585449219
+2=158.692307692308,1.00712585449219
+3=176.96,1.00712585449219
The above is a unified unix diff -- for those who are unaware of what that means, just realize the lines starting with - are replaced with lines starting with +. As you can see, the calibrations have different numbers, let alone what appears to be dramatically different precisions when format printed.

I'm absolutely stumped as to how or why this is happening.

Posted: Mon Oct 27, 2008 8:46 am
by Hondata
Odd. It this occurs as soon as the car switches to closed loop from startup then create a new calibration (with V1.3.0), set the injector size, and see what it does. If that works then manually copy manually copy over all the tables, VTEC settings and fuel trims. This should narrow it down to part of the calibration.

Posted: Mon Oct 27, 2008 11:19 am
by Razathorn
Hondata wrote:Odd. It this occurs as soon as the car switches to closed loop from startup then create a new calibration (with V1.3.0), set the injector size, and see what it does. If that works then manually copy manually copy over all the tables, VTEC settings and fuel trims. This should narrow it down to part of the calibration.
I will have to do this when I get home, but in the mean time, I can provide you with another interesting data point: uploading my old calibration without modification/saving (launch kmanager fresh, open my old kal, key on, ctl-u) with 1.3.0.0 or 1.2.8.0 on the new laptop causes the same broken behavior.

If at some point you want vnc/rdb access to this laptop for debugging kmanager, that can be arranged quite easily. I have windbg on it already.

Wayne

Posted: Mon Oct 27, 2008 10:37 pm
by Razathorn
Creating a new calibration with 1.3.0.0 on the new laptop worked fine. I set the injector size, 3 bar map settings, disabled obdII, and unplugged my water/meth harness so if the output went hot it would do nothing. Car operated fine in closed loop. I then saved the calibration and popped it open in notepad and noticed the [ClosedLoopTargetLambda] section had values in the 14s. To me it looks as if the unit for ClosedLoopTargetLambda changed from being a lambda number to a petrol air/fuel number at some point. Upon further review, all of my old calibrations based off a provided jrsc base map have the numbers that are centered around 1, where as others that were based off the cold air calibration don't even have a ClosedLoopTargetLambda block.

Assuming that this is a simple unit change, and an old file format that perhaps wasn't supported well, I still can't explain why 1.2.8.0 on my old laptop seems to work with them just fine and 1.2.8.0 on the new laptop did not. About the only way I can theorize about it working on the old laptop while the new laptop does not is that uninstalling kmanager 1.3.0.0 and reverting to 1.2.8.0 didn't actually do a full downgrade and this was a change in 1.3.0.0 that was somehow "stuck" to my new laptop once it had 1.3.0.0 installed.

I'm out on a limb here, and making some wild guesses.

I ended up making my old calibration work by deleting the ClosedLoopTargetLambda settings block, opening the file, then re-saving it. It populated new values in the "new style" that, once uploaded, operated perfectly.

I'm eager to hear your feedback on what actually happened to me.

Posted: Tue Oct 28, 2008 8:59 am
by Hondata
It must have been something to do with changing lambda units after saving. The odd thing is that ClosedLoopTargetLambda is ignored when loading a calibration. I've changed KManager so it will not save the ClosedLoopTargetLambda table as well.

Posted: Tue Oct 28, 2008 10:15 am
by Razathorn
Hondata wrote:It must have been something to do with changing lambda units after saving. The odd thing is that ClosedLoopTargetLambda is ignored when loading a calibration. I've changed KManager so it will not save the ClosedLoopTargetLambda table as well.
I never touched the ClosedLoopTargetLambda with a text editor or idle target lambda in the gui before. All of my old calibrations for this build have those tables with the "near 1" values in there. The broken behavior reproduces simply by loading one of those calibration from and uploading it.

Seeing as how none of the base maps ship with this table, I can only assume that a previous version of kmanager I used produced the table in my old calibrations. I would suggest that ensuring the read/load of a calibration does indeed disregard that table as there are probably others out there with calibrations that suffer from this ailment and don't realize it. For those people, simply not writing it out to the calibration may not really help much, unless of course the same writing routine is used to program the ecu... but now I'm outside the range of my knowledge on kmanager.

Wayne

Posted: Fri Nov 07, 2008 11:20 am
by rikitaun
First, sorry for my poor english (spanish rule'z jajaja)

I have similar problem with idle and A/F, when load kal from kamanger 1.3.0 the parameter IdleTargetLambda sets internally as 0.98969696 and the A/F goes to twenty and more and stop the car



[Settings]
RevLimiter=8500
BoostLimitTemp=60.5384615384615
BoostLimitCold=135.3
BoostLimitHot=169.4
IdleSpeed=900
IdleTargetLambda=0.98969696
OverallFuelTrim=0
CrankingFuelTrim=-5

if edit the kal with notepad and write IdleTargetLambda=1 14.7 A/F (from european cars) the car goes OK.

Curiously if write in the Idle Target Lambda parameter 14.0 or 14.2 the car goes ok, but if write 14.7 not.