phila_dot
|
|
« on: September 03, 2012, 11:11:42 PM »
|
|
|
Target lambda is set to one via a constant if B_falsh, B_lamlash, B_lamlshv, B_lamka, B_lamkh, B_lamnswl, and B_lambts are clear. Basically, if target lambda doesn't need to be controlled for a specific purpose then the constant sets it to one. Changing this constant should not interfere with functional control of target lambda.
The constant first gets moved to lamdiag_w, then ultimately to lamsons_w, lamsbg_w, lamvoa_w, and lambas. It can be limited based on tmot via LAMLGMTM.
I still have not figured out what all of the repercussions of changing this constant are, but it appears that lean target lambda will force open loop. It also looks like it may disable ATR unless LATRO is raised.
I was able to define it in my XDF and change the constant to 1.1. ME7Check reported checksums were corrected and comparing to the original revealed checksum changes.
I have defined for M box as follows: 0x3BFB2 16 bit LoHi X*0.000244141
This is completely untested at this point, so attempt this at your own risk.
Functions that reference lamsons_w: DLSH DLSAHK DLSV BGMSZS LRAEB TEBEB LREB LRKA
Functions that reference lamsbg_w: GK Also lamsbg_w is used for axis SLX06TMUW.
Function that references lamvoa_w ATR
Functions that reference lambas: MDBAS ZWGRU
|
|
|
Logged
|
|
|
|
elRey
|
|
« Reply #1 on: September 04, 2012, 10:35:51 PM »
|
|
|
Is this discussion for a narrowband or wideband ECU?
I've been running 1.07 lambda in closed-loop on both my wideband cars with no issue.
There are several, separate constants of 1 used throughout all those functions, but only one needs to be found and adjusted. The constant referenced in lamko-lamdsk is the one to adjust. This is going off memory. I'll look at my file again.
Re-reading your post... that exactly what I've done. No issues. LAMLGMTM was high enough stock.
a smaller DLAMFAW plus one increment below 1 on lamfa to bring target close to 1 when needed.
|
|
« Last Edit: September 04, 2012, 10:56:28 PM by elRey »
|
Logged
|
|
|
|
phila_dot
|
|
« Reply #2 on: September 05, 2012, 05:55:51 AM »
|
|
|
The information I posted was derived from the B5 S4 M box narrowband ECU.
Your input is appreciated though, I'm glad to see someone else has done this.
I think that the only difference may be that the wideband ECU can still operate in closed loop, but I believe that this will force open loop on the narrowband ECU. That may be a good thing though as the narrowband sensors cannot accurately represent these lambda values and calculated fuel mass is usually very accurate as long as injector calibrations are good and there are no hardware issues.
IMO this is much a better approach than changing USR or forcing open loop by other means and using KFLF or FKVVS. This way does not impede any other fueling functions and is only active when lambda would normally be stoich.
Unfortunately, I have a lot of mini projects right now and testing time is scarce.
|
|
|
Logged
|
|
|
|
nyet
|
|
« Reply #3 on: September 05, 2012, 10:36:15 AM »
|
|
|
I think trusting lean AFR to open-loop is a bit.. scary.
call me crazy.
|
|
|
Logged
|
ME7.1 tuning guideECUx PlotME7Sum checksumTrim heatmap toolPlease do not ask me for tunes. I'm here to help people make their own. Do not PM me technical questions! Please, ask all questions on the forums! Doing so will ensure the next person with the same issue gets the opportunity to learn from your ex
|
|
|
phila_dot
|
|
« Reply #4 on: September 05, 2012, 10:44:39 AM »
|
|
|
I think trusting lean AFR to open-loop is a bit.. scary.
call me crazy.
Agreed, however, closed loop is just as bad if not worse because narrowband sensors cannot operate outside of stoich. I look at it like running boost above the MAP limit. Unless we find a way to convert to wideband, this is the best option IMO for those looking to go this route.
|
|
|
Logged
|
|
|
|
jooo
Jr. Member
Karma: +0/-1
Offline
Posts: 30
|
|
« Reply #5 on: September 06, 2012, 06:56:48 PM »
|
|
|
Is this discussion for a narrowband or wideband ECU?
I've been running 1.07 lambda in closed-loop on both my wideband cars with no issue.
There are several, separate constants of 1 used throughout all those functions, but only one needs to be found and adjusted. The constant referenced in lamko-lamdsk is the one to adjust. This is going off memory. I'll look at my file again.
Re-reading your post... that exactly what I've done. No issues. LAMLGMTM was high enough stock.
a smaller DLAMFAW plus one increment below 1 on lamfa to bring target close to 1 when needed.
(regarding wideband ECU) What is the name of the constant are you talking about? I would like to try running lambda 1.07-1.12 on low load Closed-loop. Will all targetvalues in all lambda tables be affected. Does the constant affect WOT?
|
|
|
Logged
|
|
|
|
phila_dot
|
|
« Reply #6 on: September 06, 2012, 09:28:33 PM »
|
|
|
(regarding wideband ECU) What is the name of the constant are you talking about?
I would like to try running lambda 1.07-1.12 on low load Closed-loop. Will all targetvalues in all lambda tables be affected. Does the constant affect WOT?
Read the original post again. It is a constant in the code, it is simply a value of 1 and not intended to be calibrated. You should be able to find it by comparing the hex at the location above in the S4 M box to your file. However, if you are off you will be modifying code and that could be bad.
|
|
|
Logged
|
|
|
|
phila_dot
|
|
« Reply #7 on: September 13, 2012, 09:51:17 AM »
|
|
|
Ok...another thought.
Change the constant in LREB that lamsons is evaluated against to match the constant in LAMKO (described above) and adjust USR accordingly.
This should keep LR active, provide the proper IOT, and not fight trims. The benefit over just using USR is that the target amount of fuel is getting injected, so this way we are not forcing ourselves to trim to the preffered lambda.
I'll have to dive into LR a little deeper when I get the chance.
|
|
|
Logged
|
|
|
|
phila_dot
|
|
« Reply #8 on: September 17, 2012, 06:43:04 PM »
|
|
|
Set LAMBDIAG, LREBRI, and LREBLE all to desired target lambda. LAMBDIAG is the constant in LAMKO that sets target when there are no other influences dictating lambda. LREBRI and LREBLE are the constants in LREB that enable/disable lean/rich protection.
Lean/rich protection will disable regular lambda regulation (B_lr) if target lambda (lamsons_w(2)) from LAMKO != LREBLI and LREBRI. This function can take action if lamsons_w(2) < LREBRI (rich target lambda) and usvk < USR (lean sensor voltage) or lamsons_w(2) > LREBLE (lean target lambda) and usvk > USR (rich sensor voltage). These conditions can set B_lrnd.
All three constants should be set the same and USR will need to be tweaked to find what your target lambda translates to in O2 sensor voltage. This will preserve lambda regulation (B_lr), but accuracy is lost the further you stray from stoich.
LAMKO constant LAMBDIAG - target Lambda constant 0x3BFB2 16 bit LoHi X*0.000244141
LREB constants LREBRI - Lambda constant for rich protection 0x85DBC 16 bit LoHi X*0.000244141
LREBLE - Lambda constant for lean protection 0x85DCC 16 bit LoHi X*0.000244141
USR - controller theshold for lambda control upstream catalyst 0x11ADE 8 bit X*0.005216-0.2
Not to confuse anyone, the constants aren't assigned labels as they are simply a constant. The names above are just how I assigned them in my xdf.
Again, this is untested.
|
|
|
Logged
|
|
|
|
zillarob
Full Member
Karma: +13/-1
Offline
Posts: 152
|
|
« Reply #9 on: September 17, 2012, 07:17:28 PM »
|
|
|
Agreed, however, closed loop is just as bad if not worse because narrowband sensors cannot operate outside of stoich.
I look at it like running boost above the MAP limit.
Unless we find a way to convert to wideband, this is the best option IMO for those looking to go this route.
Would the nb emulator on most aftermarket wb controllers be usable/trustworthy?
|
|
|
Logged
|
|
|
|
Bische
|
|
« Reply #10 on: September 17, 2012, 07:25:05 PM »
|
|
|
This is very interesting info, one day when I get my fueling sorted I will look into this myself.
A thought I had was just to hack the 02 sensor linearization, and shift it say, 0.05? The ECU sees lambda=1 but it is infact 1.05.
But now I come to think that would probably not work on a narrowband sensor.
|
|
|
Logged
|
|
|
|
phila_dot
|
|
« Reply #11 on: September 18, 2012, 05:32:20 AM »
|
|
|
Would the nb emulator on most aftermarket wb controllers be usable/trustworthy?
I have no experience emulating narrowband O2's, but I think some members have had some success. This is very interesting info, one day when I get my fueling sorted I will look into this myself.
A thought I had was just to hack the 02 sensor linearization, and shift it say, 0.05? The ECU sees lambda=1 but it is infact 1.05.
But now I come to think that would probably not work on a narrowband sensor.
From what I've seen, LALIUS is not present in narrowband ECU's and lambda sensor linearization is only performed on the secondary O2 sensors. Regular lambda control just trims fuel to match sensor voltage to USR.
|
|
|
Logged
|
|
|
|
hipeka
Full Member
Karma: +1/-1
Offline
Posts: 85
|
|
« Reply #12 on: November 18, 2012, 02:22:41 AM »
|
|
|
Is this discussion for a narrowband or wideband ECU?
I've been running 1.07 lambda in closed-loop on both my wideband cars with no issue.
There are several, separate constants of 1 used throughout all those functions, but only one needs to be found and adjusted. The constant referenced in lamko-lamdsk is the one to adjust. This is going off memory. I'll look at my file again.
Re-reading your post... that exactly what I've done. No issues. LAMLGMTM was high enough stock.
a smaller DLAMFAW plus one increment below 1 on lamfa to bring target close to 1 when needed.
Have you tested this more and how much does this have real effect on mpg readings?
|
|
« Last Edit: November 18, 2012, 03:34:28 AM by hipeka »
|
Logged
|
|
|
|
elRey
|
|
« Reply #13 on: November 18, 2012, 12:21:27 PM »
|
|
|
Have you tested this more and how much does this have real effect on mpg readings?
I run it this way full time on both my cars. But truthfully, I noticed more from disabling kat heating and tuning LAMFA. The lean burn can gain you 10% better mpg but only for the time you're in that driving mode (cruise) where you're already burning a lot less that any other mode (barring overrun). Disabling kat heating (SAI) and tuning LAMFA so that ECU doesn't go pig rich every time the gas pedal even thinks you're about to press it more, will gain you more in mpg than lean burn. That's just my experience.
|
|
« Last Edit: November 18, 2012, 02:44:57 PM by elRey »
|
Logged
|
|
|
|
nyet
|
|
« Reply #14 on: November 18, 2012, 02:42:18 PM »
|
|
|
Ditto. And in ME7.1, there is no SAI, and LAMFA is disabled anyway.
Gee, I wonder why?
|
|
|
Logged
|
ME7.1 tuning guideECUx PlotME7Sum checksumTrim heatmap toolPlease do not ask me for tunes. I'm here to help people make their own. Do not PM me technical questions! Please, ask all questions on the forums! Doing so will ensure the next person with the same issue gets the opportunity to learn from your ex
|
|
|
|