Notices
ECU Flash

need to save money, writing patch to control closed loop with WB

Thread Tools
 
Search this Thread
 
Old Jun 26, 2008 | 10:10 PM
  #1  
mrfred's Avatar
Thread Starter
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
need to save money, writing patch to control closed loop with WB

E85 fuel price is not making up for the worse mileage, so I need to mitigate by running leaner at cruise. I could run in loop during cruise, but I prefer to be in closed loop for cruise, so I'm starting a patch to convert a WB signal into a simulated NB signal. Basic framework is written down. Now working out the math. Hoping to have it ready in a few days.
Reply
Old Jun 26, 2008 | 10:39 PM
  #2  
tephra's Avatar
EvoM Guru
15 Year Member
iTrader: (6)
 
Joined: Feb 2007
Posts: 9,486
Likes: 67
From: Melbourne, Australia
just run openloop
Reply
Old Jun 26, 2008 | 11:20 PM
  #3  
kkarim's Avatar
Evolving Member
iTrader: (2)
 
Joined: Sep 2007
Posts: 214
Likes: 0
From: Florida / Lebanon
or just use your wideband to set up a higher trigger point for closed loop control.

my LC-1 does that...

why the hassle?

well on the other hand, it does allow you to log your wb02 directly from the ecu without having that and the nb02 connected...
Reply
Old Jun 27, 2008 | 04:06 AM
  #4  
Jack_of_Trades's Avatar
Evolved Member
iTrader: (17)
 
Joined: Jun 2007
Posts: 3,523
Likes: 2
From: Opelika,AL
I'm totally on board with this. Ask DanL since he has the info on how the 1G DSM guys already do their coding. After that, you aren't far from setting up 100% closed loop targeting maps which a few new cars use like the new VW GTi's do.
Reply
Old Jun 27, 2008 | 05:01 AM
  #5  
MR Turco's Avatar
EvoM Staff Alumni
iTrader: (16)
 
Joined: May 2007
Posts: 3,233
Likes: 3
From: Massachusetts
The subarus have a parameter that allows you to change the closed loop target. There HAS to be one for us too. Might be worth finding that instead?? I don't really know how to do all the disassembly magic so i could be talking out my ***.
Reply
Old Jun 27, 2008 | 07:25 AM
  #6  
mrfred's Avatar
Thread Starter
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Interesting range of responses, all reasonable.

- ATM, I prefer the idea of closed loop because my open loop map starts to run fairly rich even at loads where I'd still like to be lean loop during cruise.

- I've been through most of the closed loop AFR routines in the Evo ROM. There are some 1D tables that control the closed loop AFR target, but I don't think a NB O2 sensor can provide the necessary response characteristics to work with a 15.5:1 AFR target.

- Using the WB output on my LC-1 for both WB logging via the ECU and closed loop AFR control allows me to control the AFR target with ECUFlash (instead of using the LC-1), and frees up another ADC input for other things.
Reply
Old Jun 27, 2008 | 07:27 AM
  #7  
MR Turco's Avatar
EvoM Staff Alumni
iTrader: (16)
 
Joined: May 2007
Posts: 3,233
Likes: 3
From: Massachusetts
Originally Posted by mrfred
- I've been through most of the closed loop AFR routines in the Evo ROM. There are some 1D tables that control the closed loop AFR target, but I don't think a NB O2 sensor can provide the necessary response characteristics to work with a 15.5:1 AFR target.
Could we try? Like i said, this is how the suby guys do it. My roommate had lean burn set to like 15.7 and was very stable.
Reply
Old Jun 27, 2008 | 07:30 AM
  #8  
Tuner@Swift's Avatar
Account Disabled
iTrader: (1)
 
Joined: Jun 2006
Posts: 472
Likes: 0
From: Taftville, CT
Originally Posted by MR Turco
Could we try? Like i said, this is how the suby guys do it. My roommate had lean burn set to like 15.7 and was very stable.
A subaru O2 sensor is not a narrowband sensor like ours is. Our sensor is used like a switch with the switching point @ 14.7:1. It's much easier to use a wideband sensor and controller programmed to simulate narrowband switching at a leaner AFR. Anyone with a ZT-2 or LC-1 can do this with no need to patch their ROM.
Reply
Old Jun 27, 2008 | 07:46 AM
  #9  
jcsbanks's Avatar
Evolved Member
 
Joined: May 2006
Posts: 2,399
Likes: 6
From: UK
I wondered about running closed loop periodically during cruise to allow the narrowband to find stoich, but the rest of the time producing a gradual enleanment of 10%. Coding would be a nightmare though!
Reply
Old Jun 27, 2008 | 08:37 AM
  #10  
l2r99gst's Avatar
Evolved Member
iTrader: (2)
 
Joined: Mar 2004
Posts: 3,499
Likes: 4
From: CA
Originally Posted by mrfred
- I've been through most of the closed loop AFR routines in the Evo ROM. There are some 1D tables that control the closed loop AFR target, but I don't think a NB O2 sensor can provide the necessary response characteristics to work with a 15.5:1 AFR target.
Just out of curiosity, where all of the 1D references the same value?

The only reason I even ask is because I tend to idle around 15.0:1, yet cruise is stoich or slight richer, like 14.6 or so. I originally thought that I had a leak at my DP to O2 housing, which I very well may with the cheap RNR gasket, but even replacing a spring bolt with a stud and nut, idle is still in the range of 14.8-15.2 for my car (an 05). I will be switching my DP and gasket soon to be sure.

I was just curious if anything you saw had any targets that differed under different conditions. I always wondered if some Evo Roms actually tried to target slightly above or below stoich, even with the NB O2.
Reply
Old Jun 27, 2008 | 08:42 AM
  #11  
MR Turco's Avatar
EvoM Staff Alumni
iTrader: (16)
 
Joined: May 2007
Posts: 3,233
Likes: 3
From: Massachusetts
Originally Posted by l2r99gst
Just out of curiosity, where all of the 1D references the same value?

The only reason I even ask is because I tend to idle around 15.0:1, yet cruise is stoich or slight richer, like 14.6 or so. I originally thought that I had a leak at my DP to O2 housing, which I very well may with the cheap RNR gasket, but even replacing a spring bolt with a stud and nut, idle is still in the range of 14.8-15.2 for my car (an 05). I will be switching my DP and gasket soon to be sure.

I was just curious if anything you saw had any targets that differed under different conditions. I always wondered if some Evo Roms actually tried to target slightly above or below stoich, even with the NB O2.
I see the same thing. i suspected i had a turbo intake leak somewhere (drawing air in) but i doubt it. My idle afrs jump from 14.7 - 15.1 but average out at 15.0. Idle is steady and open loop is dead on so i am not too concerned.
Reply
Old Jun 27, 2008 | 08:53 AM
  #12  
tim85851's Avatar
Evolved Member
iTrader: (23)
 
Joined: Mar 2007
Posts: 1,515
Likes: 1
From: Madison, WI
this is how i save gas...

Reply
Old Jun 27, 2008 | 09:22 AM
  #13  
mrfred's Avatar
Thread Starter
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Originally Posted by jcsbanks
I wondered about running closed loop periodically during cruise to allow the narrowband to find stoich, but the rest of the time producing a gradual enleanment of 10%. Coding would be a nightmare though!
I thought about that too, but too much hassle.

Originally Posted by l2r99gst
Just out of curiosity, where all of the 1D references the same value?

The only reason I even ask is because I tend to idle around 15.0:1, yet cruise is stoich or slight richer, like 14.6 or so. I originally thought that I had a leak at my DP to O2 housing, which I very well may with the cheap RNR gasket, but even replacing a spring bolt with a stud and nut, idle is still in the range of 14.8-15.2 for my car (an 05). I will be switching my DP and gasket soon to be sure.

I was just curious if anything you saw had any targets that differed under different conditions. I always wondered if some Evo Roms actually tried to target slightly above or below stoich, even with the NB O2.
There is a subroutine to determine the AFRMAP value. In the 88590015 ROM, its located at 0x182D2. There is some interesting stuff going on that subroutine. The ECU actually attempts to measure an AFR from the front O2 NB signal over a narrow range of AFR values (from 13.8 to 14.5). This subroutine doesn't appear to be the whole story though as I do not see any result that is used to determine the STFT.

I also see about 14.4-14.5:1 during closed loop cruise. I figured I had not correctly calibrated my LC-1, but after about 10 attempts to calibrate it in different ways with each giving the same result, I decided that 14.4-14.5 is the target value for the stock coding.
Reply
Old Jun 27, 2008 | 09:32 AM
  #14  
jcsbanks's Avatar
Evolved Member
 
Joined: May 2006
Posts: 2,399
Likes: 6
From: UK
I would trust a working narrowband to be spot on stoich than a wideband. They have an avalanche type response around stoich and we could never pass UK emissions without this sort of precision.
Reply
Old Jun 27, 2008 | 09:41 AM
  #15  
mrfred's Avatar
Thread Starter
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Originally Posted by jcsbanks
I would trust a working narrowband to be spot on stoich than a wideband. They have an avalanche type response around stoich and we could never pass UK emissions without this sort of precision.
Its not a pure step function though. The corners are pretty well rounded and not symmetric across the stoich value. I think it is possible to target either the upper or lower part of the response curve very near the crossover voltage, e.g. within abou 0.2 afr. Check out the subroutine I mentioned. You'll see some interesting stuff in it.
Reply



All times are GMT -7. The time now is 12:37 PM.