[Gmecm] BLM cell confusion

Gary Evans gary
Fri Nov 11 06:34:19 UTC 2005


The $A1 code uses 3 BLM cells:

Cell 0 = idle
Cell 1 = part-throttle
Cell 2 = "overrun" aka no load

As you have discovered, cell 2 is entered on the conditions of high 
(ish) RPM and low map, such as coasting with the throttle closed. I'm  
not sure what the point of the cell is other than for emissions  
purposes.

 From the ARUR bin, the vales required to enter Cell 2 are:

Map less than 32 kPa
BPW less than 1.95 mSec

There are also a number of conditions that must be met for block  
learn to be enabled. MAP, BPW and RPM must all be in a certain range.  
For the ARUR bin, the conditions are:

Closed loop conditions met (Coolant temp up, engine run time met, no  
fault codes, o2 sensor ready)
Charcoal canister not purging.
RPM between 400 and 6375
MAP above 22 kPa
BPW above 1.08

If you are just revving the car in neutral, it is likely that one of  
the conditions is not being met. The time it takes for the BLM to  
update is also dependent on how far the INT is from 128. The table  
looks like this:

###########################################
#     F58 TABLE                           #
#    BLOCK LEARN DELAY TIME INTERVAL      #
#       VS. DELTA BETWEEN INT AND 128     #
#   TABLE VALUE = SEC*20                  #
###########################################
8997        52     82 F58A           4.1 SEC        0    INT-DELTA	
8998        4C     76                3.8 SEC        2
8999        3C     60                  3 SEC        4
899A        32     50                2.5 SEC        6
899B        2C     44                2.2 SEC        8
899C        28     40                  2 SEC       10
899D        24     36                1.8 SEC       12
899E        20     32                1.6 SEC       14
899F        1C     28                1.4 SEC       16
89A0        18     24                1.2 SEC       18
89A1        14     20                  1 SEC       20
89A2        14     20                  1 SEC       22
89A3        14     20                  1 SEC       24
89A4        14     20                  1 SEC       26
89A5        14     20                  1 SEC       28
89A6        14     20                  1 SEC       30
89A7        14     20                  1 SEC       32

So, a delta of 4 (INT at 124, for example) will not start to move the  
BLM for at least 3 seconds.

Each calibration will be a little different, but that is the gist of  
it. With so few cells, the BLMs will naturally vary with driving  
conditions. If it varies a lot then there is room for improvement in  
the tuning of your VE tables. In a perfect world, the VE tables would  
perfectly represent the exact airflow for every condition. In the  
real world it's never gonna happen, so don't spend too much time  
chasing "perfect" 128 values. Even filling your car with a different  
grade of gas can throw the values by a few, so a BLM of 124 is  
perfectly acceptable, nay, even excellent.

If you do not have it already, I highly recommend getting ahold of  
the $a1 disassembly file and making an effort to understand the  
things the computer is looking for in its operation. Even if you do  
not understand all the computer language stuff, just looking at the  
tables and comments can be very enlightening.


-Gary


On Nov 10, 2005, at 8:07 PM, Ryan Hess wrote:

> Yes, exactly.  Entering cell 2 (by reving in neutral)
> swings the INT to 137-ish, but the cell 2 BLM doesn't
> change off 122.  I don't know if learn enable has some
> kind of qualifier that I'm not meeting in neutral
> (MPH? MAP? BPW?) or what, but cell 2 appears to be the
> only one that doesn't move.
>
> An interesting side note is that my BLM data varies
> widely depending on the driving that I do.  But - I
> guess that's to be expected if the $a1 truly does use
> only 2 BLM cells (idle and off idle).  I don't know
> that it does.  I can say that BLM cell 2 does appear
> to be calculated from the cell 0 (idle) and cell 1
> (seems to be a changing TPS).  I never see cell 2
> actually change, it only changes when you're in other
> cells... "behind closed doors" so to speak.
>
> Now, from what I have seen in my data logs, it appears
> as though the INT has to be off from 128 by 4 (from
> the "C/L INTEGRATOR WINDOW VALUE") before the BLM will
> start to compensate, in which case, my idle cell INT
> of 124 would be acceptable for no BLM compensation.
>
> Ryan
>
> --- Steve Ravet <Steve.Ravet at arm.com> wrote:
>
>> In general, "closed loop" allows the INT to vary to
>> maintain stoich.
>> "learn enable" allows INT changes to be accumulated
>> in BLM.  Are you
>> comparing driving around, where the BLMs move, to
>> revving in neutral,
>> where they don't?  Or what is the different
>> condition that causes them
>> to not move?  Either way, I don't know the answer to
>> that one, why
>> "learn enable" is enabled in one case, and disabled
>> in another.  Anyone
>> else got an idea?
>>
>> --steve
>>
>>> -----Original Message-----
>>> From: gmecm-bounces at diy-efi.org
>>> [mailto:gmecm-bounces at diy-efi.org] On Behalf Of
>> Ryan Hess
>>> Sent: Thursday, November 10, 2005 2:17 PM
>>> To: gmecm at diy-efi.org
>>> Subject: RE: [Gmecm] BLM cell confusion
>>>
>>> Thanks Steve.
>>>
>>> My next question is what qualifiers there are that
>>> enable the BLMs to move?  I can drive around and
>> the
>>> BLMs move just fine in response to the INT
>> changing -
>>> however - If I reset the PCM, start it up and
>> bring it
>>> up to temp, and enter cell 2 (high RPM, about 1500
>> it
>>> seems) you can see the INT rise quickly to 138,
>> but
>>> the BLM stays stuck on it's default 122.  Cell 0
>>> (closed throttle/idle) also stays on it's default
>> of
>>> 128, althoug the INT is 124, so that probably
>> isn't as
>>> big of a deal..
>>>
>>> Ryan
>>>
>>>
>>> --- Steve Ravet <Steve.Ravet at arm.com> wrote:
>>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: gmecm-bounces at diy-efi.org
>>>>> [mailto:gmecm-bounces at diy-efi.org] On Behalf
>> Of
>>>> Ryan Hess
>>>>> Sent: Sunday, October 30, 2005 12:37 PM
>>>>> To: gmecm at diy-efi.org
>>>>> Subject: [Gmecm] BLM cell confusion
>>>>>
>>>>> Hi everyone,
>>>>>
>>>>> I'm working with the $A1 code, and have been
>>>> slowly
>>>>> conquering a steep learning curve.  I'm still
>>>> greatly
>>>>> confused about the BLM cells.  How they work,
>> and
>>>> the
>>>>> differences between cell 0, 1 and 2...  For
>>>> instance,
>>>>> I've gathered cell 0 appears to be closed
>> throttle
>>>>> idle conditions.  The others I don't know.
>>>> Secondly,
>>>>> how do the BLM cells increment?  They follow
>> the
>>>> INT,
>>>>> but how?  'preciate it,
>>>>>
>>>>>
>>>>
>>>> The INT is part of the feedback loop and so
>>>> constantly moves up and down
>>>> as the ECM maintains stoich.  There is no
>> "history"
>>>> with INT, it just
>>>> changes to whatever value is required.  The BLM
>>>> provides the history.
>>>> If the INT is consistently high or low for a
>> period
>>>> of time then the BLM
>>>> will start to move in that direction.  Both INT
>> and
>>>> BLM are part of the
>>>> fueling equation, so as BLM starts to move INT
>> will
>>>> tend back to
>>>> neutral, or 128.
>>>>
>>>> So say you had a plugged cat.  The reduced
>> airflow
>>>> will cause the INT to
>>>> drop and cut back on fuel.  Since the INT is
>>>> consistently below 128 then
>>>> BLM starts to drop also.  As the BLM drops and
>> cuts
>>>> out fuel, it allows
>>>> INT to rise back around neutral.  So right after
>> it
>>>> plugs you'll see
>>>> normal BLMs but low INTs.  As time goes by
>> (maybe a
>>>> few minutes?) you'll
>>>> see BLM drop and INT rise back to neutral.  Then
>> the
>>>> opposite happens
>>>> when the cat is fixed, and eventually both of
>> them
>>>> rise back to near
>>>> neutral.
>>>>
>>>> Generally BLM is a table indexed by MAP and RPM,
>>>> like the VE table.  I
>>>> think there are exceptions where there is one
>> BLM
>>>> number for idle and
>>>> another for everything else.  Not sure about
>> your
>>>> specific situation.
>>>>
>>>> --steve
>>>>
>>>> _______________________________________________
>>>> Gmecm mailing list
>>>> Gmecm at diy-efi.org
>>>> http://lists.diy-efi.org/mailman/listinfo/gmecm
>>>>
>>>
>>>
>>>
>>> 		
>>> __________________________________
>>> Start your day with Yahoo! - Make it your home
>> page!
>>> http://www.yahoo.com/r/hs
>>> _______________________________________________
>>> Gmecm mailing list
>>> Gmecm at diy-efi.org
>>> http://lists.diy-efi.org/mailman/listinfo/gmecm
>>>
>> _______________________________________________
>> Gmecm mailing list
>> Gmecm at diy-efi.org
>> http://lists.diy-efi.org/mailman/listinfo/gmecm
>>
>
>
>
> 		
> __________________________________
> Yahoo! FareChase: Search multiple travel sites in one click.
> http://farechase.yahoo.com
> _______________________________________________
> Gmecm mailing list
> Gmecm at diy-efi.org
> http://lists.diy-efi.org/mailman/listinfo/gmecm





More information about the Gmecm mailing list