DIY PROM Do It Yourself PROM chip burning help. No PROM begging. No PROMs for sale. No commercial exchange. Not a referral service.

Is it possible to data trace MAT inverse table

Thread Tools
 
Search this Thread
 
Old Jun 4, 2014 | 07:17 AM
  #1  
msm z28's Avatar
Thread Starter
Junior Member
 
Joined: Aug 2008
Posts: 33
Likes: 0
From: Connecticut
Car: 1991 Corvette
Engine: 406 NA Solid Rlr, Miniram Style Int
Transmission: 6 Speed
Axle/Gears: 3.73
Is it possible to data trace MAT inverse table

I'm wondering if there is a way to data trace the MAT inverse Lookup table Delta vs Airflow table and the MAT compensation counts vs MAT tables in Tunerpro while recording a log session.

I dont see data that matches the units in the MAT tables in the DA association or as a value lookup while editing the definition.

It would be great if I could watch the MAT tables so I can fine tune my adjustments and correlate the grams/sec to whats actually happening during a log.

Any help would be appreciated.
Thanks
Sal
Reply
Old Jun 5, 2014 | 05:40 PM
  #2  
84Elky's Avatar
Senior Member
15 Year Member
Liked
 
Joined: Jun 2010
Posts: 580
Likes: 32
From: Montgomery, AL
Car: 84 El Camino
Engine: 360 TPI
Transmission: 700R4
Axle/Gears: 3.42 + Truetrac, Moser 28 Spline
Re: Is it possible to data trace MAT inverse table

Not sure what you're trying to accomplish but don't believe the tables you referenced will really tell you much. Maybe TMI, but here's what's happening under the covers. Using SD $8D AUJP as an example, these tables have only one purpose: to first compute a Scaled MAT value every 100ms. This Scaled MAT value is then used every 12.5ms with other factors (VE, MAP, etc.) to compute Grams of Air/Cylinder, which in turn is used to compute the ultimate goal -- the SD-based BPW fuel requirement. This means the computed Scaled MAT value is used 8 times in the computation of fuel requirement before itself being recomputed -- so appears not to be overly sensitive to immediate fuel requirements.

If flag 0x0018 b4 = 1 (the Stock AUJP setting), table 0x080E=MAT Inverse Term Lookup Delta Mult. Vs. Airflow is used to provide a multiplier which results in an increased Inv A/D MAT value used to compute the Scaled MAT value. If b4 = 0, the multiplier table is not used and Inv A/D MAT is used directly, without adjustment. So if b4=1, the larger the multiplier, the larger final BPW.

But even if b4=1, if Coolant Temp < Inv A/D MAT, Inv A/D MAT will NOT be adjusted (same as if b4=0). Only when Coolant > Inv A/D MAT (the normal operating situation), will Inv A/D MAT be adjusted. Also, the more coolant temp exceeds MAT, the more the resulting Scaled MAT value is increased over Inv A/D MAT, and thus the larger the BPW. Note there is a point of diminishing returns to all this because, again in stock form, once Air Flow reaches a certain point, there is no change in the computed Scaled MAT value. This can be seen in the stock 0x0080E multiplier table where the multiplier remains constant at 0.13 after 96 gm/sec.
Reply
Old Jun 8, 2014 | 01:01 PM
  #3  
msm z28's Avatar
Thread Starter
Junior Member
 
Joined: Aug 2008
Posts: 33
Likes: 0
From: Connecticut
Car: 1991 Corvette
Engine: 406 NA Solid Rlr, Miniram Style Int
Transmission: 6 Speed
Axle/Gears: 3.73
Re: Is it possible to data trace MAT inverse table

Originally Posted by 84Elky
Not sure what you're trying to accomplish but don't believe the tables you referenced will really tell you much. Maybe TMI, but here's what's happening under the covers. Using SD $8D AUJP as an example, these tables have only one purpose: to first compute a Scaled MAT value every 100ms. This Scaled MAT value is then used every 12.5ms with other factors (VE, MAP, etc.) to compute Grams of Air/Cylinder, which in turn is used to compute the ultimate goal -- the SD-based BPW fuel requirement. This means the computed Scaled MAT value is used 8 times in the computation of fuel requirement before itself being recomputed -- so appears not to be overly sensitive to immediate fuel requirements.

If flag 0x0018 b4 = 1 (the Stock AUJP setting), table 0x080E=MAT Inverse Term Lookup Delta Mult. Vs. Airflow is used to provide a multiplier which results in an increased Inv A/D MAT value used to compute the Scaled MAT value. If b4 = 0, the multiplier table is not used and Inv A/D MAT is used directly, without adjustment. So if b4=1, the larger the multiplier, the larger final BPW.

But even if b4=1, if Coolant Temp < Inv A/D MAT, Inv A/D MAT will NOT be adjusted (same as if b4=0). Only when Coolant > Inv A/D MAT (the normal operating situation), will Inv A/D MAT be adjusted. Also, the more coolant temp exceeds MAT, the more the resulting Scaled MAT value is increased over Inv A/D MAT, and thus the larger the BPW. Note there is a point of diminishing returns to all this because, again in stock form, once Air Flow reaches a certain point, there is no change in the computed Scaled MAT value. This can be seen in the stock 0x0080E multiplier table where the multiplier remains constant at 0.13 after 96 gm/sec.
thanks for the response, but I'm not a stock motor and the high rpm effect with the MAT inverse table at different sections of the chart has an impact on my AFR's at high rpm.

I dont know how to translate the gms/sec to RPM's, so I figured if I can watch it in the data stream or data trace the table it will help correlate the data to the RPM's in my log.

thanks
Reply
Old Jun 8, 2014 | 08:12 PM
  #4  
84Elky's Avatar
Senior Member
15 Year Member
Liked
 
Joined: Jun 2010
Posts: 580
Likes: 32
From: Montgomery, AL
Car: 84 El Camino
Engine: 360 TPI
Transmission: 700R4
Axle/Gears: 3.42 + Truetrac, Moser 28 Spline
Re: Is it possible to data trace MAT inverse table

thanks for the response, but I'm not a stock motor and the high rpm effect with the MAT inverse table at different sections of the chart has an impact on my AFR's at high rpm.

A couple of things:
  1. Was not referencing that you had a stock motor. Didn't really know because engine specs were not provided. Was referring to the settings GM provided in the Calibration Tables as the "stock settings" for AUJP.
  2. Am curious how you know that the "MAT inverse Table is what is having an impact on your AFRs at high RPMs". How do you know it's not the upper VE table values, which have a far greater effect on the final BPW (AFR) than does the effect of the MAT inverse table. Are you changing one or other of the MAT tables and seeing major changes in AFR with all other things being relatively constant (RPM, Coolant Temp, MAT)?
Reply
Old Jun 14, 2014 | 07:59 AM
  #5  
msm z28's Avatar
Thread Starter
Junior Member
 
Joined: Aug 2008
Posts: 33
Likes: 0
From: Connecticut
Car: 1991 Corvette
Engine: 406 NA Solid Rlr, Miniram Style Int
Transmission: 6 Speed
Axle/Gears: 3.73
Re: Is it possible to data trace MAT inverse table

Originally Posted by 84Elky
A couple of things:
  1. Was not referencing that you had a stock motor. Didn't really know because engine specs were not provided. Was referring to the settings GM provided in the Calibration Tables as the "stock settings" for AUJP.
  2. Am curious how you know that the "MAT inverse Table is what is having an impact on your AFRs at high RPMs". How do you know it's not the upper VE table values, which have a far greater effect on the final BPW (AFR) than does the effect of the MAT inverse table. Are you changing one or other of the MAT tables and seeing major changes in AFR with all other things being relatively constant (RPM, Coolant Temp, MAT)?
I will hopefully be playing (tuning) with the car again today (weather cooperating). I still consider myself a beginner tuner, and I've read every article on MAT sensors and changing the values in the two corresponding tables I could find, but I think what you mean is unless the coolant temp exceeds the table value, no change will occur. So perhaps when I was using a smaller number in the upper range of the inverse table it was actually reverting a similar value to the inverse table being unchecked for the final PE AFR. (Which was usually richer.) For example, if I used a 256 gm/sec. final value of .06 vs .11 in the inv table with all other values including VE values unchanged the AFR became richer in RPM's over 6500. I also made the change in my aldl so I could see the gm/sec and correlate them to RPM and it seems like the last value in the inverse table occurs around 5200 rpm's for me... I originally thought the gm/sec of 256 was occurring at 6400 rpms, I was incorrect.

Is it safe to say, I should try to get my tune close with the INV table unchecked and tune on a cooler day 50-60 deg F. with coolant temps under 160 deg. F, (thus the inv table having less overall effect on the VE calculations) So that on a warmer 80-90 deg. F and coolant temps around 190 deg. F the table will correct for the intake's warmer effect on the final PE AFR and overall VE table.?

btw... I have a 383 solid roller with an intake similar to a miniram that I rev to about 7000 rpm.

thanks for your help
Reply
Old Jun 16, 2014 | 03:54 PM
  #6  
84Elky's Avatar
Senior Member
15 Year Member
Liked
 
Joined: Jun 2010
Posts: 580
Likes: 32
From: Montgomery, AL
Car: 84 El Camino
Engine: 360 TPI
Transmission: 700R4
Axle/Gears: 3.42 + Truetrac, Moser 28 Spline
Re: Is it possible to data trace MAT inverse table

but I think what you mean is unless the coolant temp exceeds the table value, no change will occur
Not what I mean (see below).

For example, if I used a 256 gm/sec. final value of .06 vs .11 in the inv table with all other values including VE values unchanged the AFR became richer in RPM's over 6500.
Makes no sense. The smaller the multiplier, the smaller the BPW if all other variables remain constant, and the leaner the mixture. Something else is causing the rich condition. See code flowchart and comments below which show there are many variables affecting the Final BPW.

(thus the inv table having less overall effect on the VE calculations)
The referenced MAT tables have nothing to do with calculating VE. VE is purely based on RPM and MAP.

I don't believe I can answer your questions. Sorry for the long post, but to avoid any miscommunication or assumptions here, below are notes from my AUJP code review that describe exactly how the MAT tables you reference are used. Additionally, comments are provided describing how the Final BPW (in ms) is calculated. BPW is the determinate in the AFR you are measuring.

Hope this helps.




Flowchart of Inverse MAT Table Usage (every 100ms):
  • L880E=MAT Inv Term Lookup Delta Mult. Vs. Airflow
  • L87FD=MAT Compensation Counts Vs. MAT
Code:
Accum A = L0063=Inv A/D MAT
If L8018 b4 = 0 (Bypass Table L880E=MAT Inv Term Lookup Delta Mult. Vs. Airflow)
   Go to (A) Do Table Lookup: L87FD=MAT Compensation Counts Vs. MAT
Else L8018 b4 = 1 (Use Table L880E=MAT Inverse Term Lookup Delta Mult. Vs. Airflow)
   Accum A = L006B=Air Flow from Ideal Gas Law (gm/sec) 
   Accum A = Multiplier from Table L880E using Accum A gm/sec Air flow above
   Accum B(Temp Difference) = Coolant Temp – Inv A/D MAT
   If Temp Difference >= 0 (Coolant is >= Inv A/D MAT)
      Go to (B) Coolant >= Inv A/D MAT
   Else Temp Difference < 0 (Coolant Temp is < Inv A/D MAT)
      Accum B = 0 (Temp Difference forced to = 0)
(B) Coolant >= Inv MAT
   Accum D = Accum A(Table L880E Multiplier) x Accum B(Temp Difference)
   Accum D = Accum D x 2
   If Accum D > 0xFF (255d)
      Go to (C) Multiplier-Adjusted Temp Difference > 0xFF (255d)
   Else Accum D <= 0xFF (255d)
      Accum A(Adj A/D MAT) = Accum A(MSB of  “Mult-Adj” Temp Diff) + Inv A/D MAT
      If Accum A(Adjusted Inv A/D MAT) <= 0xFF (255d)
         Go to (A) Do Table Lookup: L87FD=MAT Comp Counts Vs. MAT
      Else Accum A(Adjusted Inv A/D MAT) > 0xFF (255d)
(C) Multiplier-Adjusted Temp Difference > 0xFF (255d)
         Accum A(Adjusted Inv A/D MAT) = 0xFF (255d)
 
(A) Do Table Lookup: L87FD=MAT Compensation Counts Vs. MAT
Get gm/sec value from Table L87FD=MAT Compensation Counts Vs. MAT
   using lookup value in Accum A (Adjusted Inv A/D MAT, or Unadjusted Inv A/D MAT)
Compute L006D=Scaled MAT using Table L87FD value
Exit LSEG_A Subroutine





Notes:
  • L8018 b4 is bit 4 of Switch 18, viewable and changeable via TunerPro, etc.
  • L006D=Inv A/D MAT is determined every 100ms by the ECM first providing a raw MAT value. This raw (A/D) value is then mathematically inverted and fed to the table at 0xF133 to extract L0063=Inverted A/D MAT. This table is not in the calibration. It’s internal to the code (see AUJP table below). L006D=Inv A/D MAT computation:
    • If Coolant Temp >= Inv A/D MAT from table LF133
      • A Multiplier from Table L880E=gm/sec Air Flow Multiplier is used to compute a multiplier-adjusted Inv A/D MAT used to compute L006D=Scaled MAT
    • Otherwise, if Coolant Temp < Inv A/D MAT
      • Inv A/D MAT from Table LF133 is used directly, unadjusted, to compute L006D=Scaled MAT
  • Every 12.5ms in the Fuel Minor Loop:
    • L006D=Scaled MAT is used along with the following to compute L006F=Grams Air/Cylinder:
      • current MAP, adjusted for EGR partial pressure if EGR installed and active
      • current VE
    • L006F=Grams Air/Cylinder is then used along with RPM to compute L006B=Air Flow from Ideal Gas Law
    • L006B=Air Flow from Ideal Gas Law is used with L00F1=AFR to compute L00E2=BPW (Speed Density based)
    • L00E2= BPW (Speed Density based) is then adjusted based on the following to determine L00E2=Adjusted BPW:
      • L00E0=BLM
      • L00E8=Closed Loop Correction Factor
    • L00E2=Adjusted BPW is next “Fine Corrected” using the following to determine L00E2=Final BPW:
      • L00EC=o2 Proportional counts
      • L003E=Injector Flip/Flop (state of last injector firing)
      • L0047 b6=Previously Rich or Lean flag
      • L00B0-Decel Enleanment Multiplier (once = 0, BPW=0)
    • L00E2=Final BPW is further adjusted (not discussed here) every 6.25ms if necessary in the Fuel Out and Asynch Fuel Out Routines before the injectors are fired for the specified PW duration
Effects on L00E2=Final BPW Values:
  • If L00B0=Decel Enlean Multiplier = 0, the Final BPW = 0, regardless of any of the other values
  • The larger L00EC=Closed Loop Poportional Count, the smaller the Final BPW
  • The larger L00B0=Decel Enlean Multiplier, the larger the final BPW]
  • a percentage change in L006D results in an exact percentage change in L006F. So L006F=Gm Air/Cyl is directly proportional to L006D=Scaled MAT, which if L8018 b4=1, is directly proportional to the Coolant/MATdifferential
Table at 0xF133
In LSEG_A every 100ms, an A/D MAT value is read from the ECM. It is then inverted and stored in L0061. L0061 is then used to get a value from this Inverse table, which is stored in L0063=Inverse A/D MAT.
Code:
                  --VAL [Output]--
                                     TEMP  [Input=L0061=Raw A/D MAT]
                    [Raw]            DEG C   A/D (INV)
                       -----------------------------
LF133:      .byte   0x00   ; = ???    143         0  (151 *C = 1)
            .byte   0x2A   ; = 215    121         6
            .byte   0x3D   ; = 155     76        22
            .byte   0x4B   ; = 132     59        38
            .byte   0x55   ; = 117     48        54
            .byte   0x5F   ; = 106     39        70
            .byte   0x67   ; =  97     32        86
            .byte   0x6F   ; =  88     26       102
            .byte   0x78   ; =  81     21       118
            .byte   0x80   ; =  74     15       134
            .byte   0x89   ; =  67     10       150
            .byte   0x94   ; =  60      5       166
            .byte   0xA1   ; =  52    - 1       182
            .byte   0xB0   ; =  44    - 7       198
            .byte   0xC7   ; =  34    -14       214
            .byte   0xE3   ; =  22    -24       230
            .byte   0xFF   ; =  00    -40       246

Last edited by 84Elky; Jun 19, 2014 at 09:03 AM. Reason: Corrected timing of Inverse MAT usage
Reply
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
Falcon50
DFI and ECM
81
Aug 22, 2020 03:26 PM
bjpotter
History / Originality
17
Oct 4, 2015 07:48 PM
ULTM8Z
DIY PROM
12
Oct 2, 2015 01:25 PM
IROCZDAVE (88-L98)
Interior Parts for Sale
0
Sep 17, 2015 05:46 PM
IROCThe5.7L
DIY PROM
3
Sep 17, 2015 07:48 AM




All times are GMT -5. The time now is 12:06 PM.