Is it possible to data trace MAT inverse table
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
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
Senior Member


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.
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.
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
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.
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.
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
Senior Member


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:
- 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.
- 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)?
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
A couple of things:
- 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.
- 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)?
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
Senior Member


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
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.
(thus the inv table having less overall effect on the VE calculations)
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
- If Coolant Temp >= Inv A/D MAT from table LF133
- 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
- L006D=Scaled MAT is used along with the following to compute L006F=Grams Air/Cylinder:
- 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
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
Thread
Thread Starter
Forum
Replies
Last Post
IROCZDAVE (88-L98)
Interior Parts for Sale
0
Sep 17, 2015 05:46 PM





