DIY PROMDo It Yourself PROM chip burning help. No PROM begging. No PROMs for sale. No commercial exchange. Not a referral service.
Welcome to ThirdGen.org!
Welcome to ThirdGen.org.
You are currently viewing our forum as a guest, which gives you limited access to view most discussions and access our other features. By joining our community, at no cost, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is free, fast and simple, join the ThirdGen.org community today!
The MAT compensation tables for the PW calculation in the $8D mask has misleading titles. The purpose of the two 'MAT' tables is to provide an inverse temperature term for the PW calculation.
Colder air has a greater density. This needs to be accounted for in the PW calculation. The inverse temperature term provided by the 'MAT Compensation' routines is based on both CTS and MAT.
The amount of CTS vs. MAT that is used can be varied. One table is a model of the intake tract heating of the incoming air. IOW, how hot does the air become just from its travels through the intake. The engine coolant temperature affects this.
When the MAT is relocated and becomes an IAT sensor the table calibration is no longer correct.
When the intake design is changed (say to a LT1 or single plane manifold) the table calibration is no longer correct.
There is also an option bit involved. At location $018, b4 is used to select either the intake tract heating model table, or to just use the MAT/IAT as is. If this bit is set to a 1, then the intake tract model table is used. Else, if set to a 0, then the MAT/IAT is used as is.
Using a MAT as is would probably work OK. Using an IAT as is would not. There is going to be some heating of the air from the intake tract. For a decent tune this needs to be accounted for.
Here is the Intake Tract Heating Model table (with the original title):
Note the table is based on airflow. The less time the air is within the manifold the less heat it will absorb from the intake tract.
This table is used to combine the MAT/IAT sensor value with the CTS value. Here is the math:
T = ((CTS - MAT/IAT) * MULT) / 128 + MAT/IAT
What is being done is a portion of the CTS value is being added to the MAT/IAT value. This provides a new temperature term (T). In simpler words: take the difference between the air temperature and the coolant temperature, take a percentage of this difference and add it back to the air temperature.
The table value for 0 gms/sec airflow is 128 (MULT), in affect the T term is going to be the same as the coolant temperature (CTS).
As the airflow increases less of the coolant value (CTS) is added to the air value (MAT/IAT).
Here is an example at 64 gms/sec, 10°c MAT/IAT and 85°C CTS. From the table the MULT term is 27 at 64 gms/sec:
T = ((85 - 10) * 27) / 128 + 10 = 26°c
The same temperatures at 128 gms/sec gives this:
T = ((85 - 10) * 16) / 128 + 10 = 19°c
The MULT term is changed to 16 (from the table) and the final temperature term (T) is lower at 19°c.
What is interesting about the above examples is that a MAT sensor with a engine at 85°c is probably not going to be at 10°c. Well, maybe if the ambient air is at -50°c. That is where the stock calibration falls apart with a relocated MAT to an IAT.
A MAT would be about (SWAG here) 50°c when the engine is up to temperature. Lets run the first example with that:
T = ((85 - 50) * 27) / 128 + 50 = 57°c
Quite a difference from the T = 26°c of the first example. In this case relocating the MAT will cause the engine to run richer and the BLMs to drop. The table will need to be recalibrated.
The last table is easy. The values in this table shouldn't really need to be changed. Here it is:
Easy enough, use the temperature term from the previous calculation and look up the inverse temperature term (~T) to be used in the PW calculation.
The column labled 'MAT Deg c' is really the T term. Which can and should be a combination of the MAT/IAT and CTS values.
In closing, as others have stated the Intake Tract Heating Model table is the key to recalibration. With a better understanding of how the table works it should be easier to do a better tune.
My thoughts on the stock calibration shows that at low air flows the stock long tube TPI setup adds a lot of heat. This can be seen by the full CTS temperature term at 0 gms/sec
Even at higher air flows with a heat soaked MAT, the Intake Tract Heating Model will move the T term to a high value.
An intake with shorter runners will heat the air less then a TPI. There is simply less surface area and less time for the air to pick up heat as it travels through the manifold.
RBob, I will try and dig up a post I made on this subject a few years ago when I discovered that the MAT Inverse Lookup Table needed to be modified when I relocated my MAT. In fact, with a LOT of trial and error, I even came up with a revised MAT table that people could use to correct for a relocated MAT sensor.
I always mentioned that I had "no clue" how the table actually functioned and that my modifications were based on "using my car as a test bench" in for around 6 months of driving.
Given your information, I will deeply analyze it and try to use the revised MAT table I derived for a relocated MAT sensor to see if I can finally determine who my revision affected the calculation and why it works.
So for all of us out there like me who are just beginning to grasp this stuff......the delta mult. table is used to calculate how much hotter the air in the cylinder is, than the air that the MAT is reading, and the comp. counts table pulls fuel based on this.
In other words, CTS and MAT are plugged into the equation (which is referenced to airflow in the mult. table) to find a calculated "cylinder air temp," then that value is referenced in the comp. counts table to see how many counts to pull from the injector pulse.
Originally posted by TheGreatJ So for all of us out there like me who are just beginning to grasp this stuff......the delta mult. table is used to calculate how much hotter the air in the cylinder is, than the air that the MAT is reading, and the comp. counts table pulls fuel based on this.
Correct.
Quote:
In other words, CTS and MAT are plugged into the equation (which is referenced to airflow in the mult. table) to find a calculated "cylinder air temp," then that value is referenced in the comp. counts table to see how many counts to pull from the injector pulse.
Right????
Correct up 'til the 'counts to pull'. The ~T term is used in the calculation of the mass of air in the cylinder. It compensates for the air density change due to temperature.
That portion of the PW calc, also using VE% and MAP, spits out the airflow (gms/sec) and the mass of air in one cylinder (gms/cylinder).
From there the code uses the commanded FAR and injector flow to calculate a PW (from the gms/cylinder term).
To take this one step further, you mentioned "cylinder air temp". In reality, this is the end goal. However, it isn't really what is being calculated. In order to calculate the cylinder air temperature additional parameters would need to be taken into account. Both frictional heating as the air passes the valve and heat picked up from the cylinder and head walls would need to be modeled.
By some degree (ohh, bad pun), these additional heating factors would then be offset by the cooling from the evaporation of the fuel. If the heating and cooling from these items is steady state, IOW, it happens pretty much the same each time, every time, then there is no need to model them.
It can be compensated for by the VE table. Whereas a difference in ambient temperature can not.
Assuming you unselect $0018, b4, does the 'Temperature Compensation vs. CTS - MAT' become the only table involved in PW compensation? If that is the case, there would be no T term, so is the temperature colum the MAT reading as given by the MAT sensor or CTS minus MAT like the title says? When using the heating tract model, I don't understand where the GM/sec value is coming from, how do we as the tuner know what multiplier to reference, all I gather from the examples is 64 and 128 were pulled at random. Why does everyone say there is no need to alter the 'Temperature Compensation vs. CTS - MAT' table when using the heating tract model? I always had it in my head that is the engine was tuned under different MAT conditions from the factory calibration this would need to be changed due to the different baseline. I have personally never touched either of the two tables because I never grasped the concept of tuning them, and in turn, have never had a consistant tune. I would finally like to nail this down.
I love it when guys want to KNOW what stuff does BEFORE changing them. That is exactly how it's supposed to be. Enough of "giving it what it wants." I think the faster way is "know what you're giving it, see how it likes it" "is that OK?" Iterate a few times for "what it likes BEST" and "WHY!!!!!!!"
Bracing.... But heck, it's true, but maybe stated a lil better. The important part is "know" and "why."
If I had a choice:
Enrichment vs ECT vs MAP.
Enrichment vs IAT vs MAP.
That takes a little more visual/analytical interpretation to avoid "what ifs."
I currently make do with
Enrichment vs ECT vs MAP
and
Enrichment vs IAT.
Seems NOOOO problem at all on this lil pos engine that passes EURO3 and starts and drives absolutely fine at -40C. I'm sure a hotrod has much less requirement.
oops, had a phone call, hope that didn't lock up the thread for that 1.5hrs.
__________________ -Jeremy- EFI Calibration Engineer, Director of R&D, Software Designer, System Department Manager (Fuel Injection Technologies - dianpen.com) - Living in China since Nov '04!!!
86 Z28 - rusty, tired, needs to be put to sleep - 89 GTA 5.7L needs new paint and the parts on the shelf installed, 79 Malibu Classic with '91 L98, 4L60, 3.73
With $0018, b4 unselected the T term is whatever the MAT/IAT value is:
T = MAT/IAT
For the air flow term it is RAM location $6B. Will need to patch the ALDL stream to include it. I checked and am surprised it was not already there. Then it is a matter of matching up that value with the table. This is a value that the ECM calculates internally.
As for the 'Temperature Compensation vs. CTS - MAT' table, I can't speak for everyone. I stated that 'the values in this table shouldn't really need to be changed.' Which if you find that large changes are being made, then something else may not be correct.
Awesome, I think I finally understand now that I have the Gm/S calculation. I got rid of PROM ID in the ALDL stream so Datamaster will display the ECM's airflow calc as well as Tunerpro. I plan on trying both using the intake tract heating model and not using it and will ultimately use whatever I can get most consistant through the ambient temp range here in NW Indiana which is 0-100F.
I love it when guys want to KNOW what stuff does BEFORE changing them.
That is exactly how it's supposed to be.
Enough of "giving it what it wants." I think the faster way is "know what you're giving it, see how it likes it" "is that OK?" Iterate a few times for "what it likes BEST" and "WHY!!!!!!!"
Ya, life is neat if there's folks that can answer everyone's questions, but if folks don't do anything because there's no one to answer their questions, then it's all been academic.
Maybe to you, but, then again, it's just your opinion.
Are you serious?.
Your playing word/ ego games.
If you want to play on words, then you need to add the comment about taking notes, and looking for trends.
*Why* would in your *crusade*, also mean understanding ALL of the engine dynamics, and ALL the interactions of the air/ fuel as it's injested, and reacted. There are folks that are absolute geniuses that have spent life times on trying to get a handle on what you've treated as a nothing more then a witty saying.
Let me try making it really simple for you, the statement about making an engine happy, means having the tuner put his wants/ thoughts/ ego, to the side, and objectively look at what's making a given engine *happy*. In making the engine happy, one has to have a clue about what's going on. having a total understanding of Obert, Glass, Heywood, Ricardo, is secondary to understanding what's making the engine happy. Happy isn't guessing either, it's about testing/ experimenting, and analysing the results. I hope this is clear enough for you to understand what was meant by keeping the engine happy, since you obviously missed it the first time around.
Not to argue, and I didn't miss the point, but making it happy can lead to whore houses and bars. If what you're giving it looks really messed up, maybe some piece of the puzzle is drunk and passed out.
There's a rubik's cube like puzzle going on in each ECU, because these are currently running on tables and simple algorithms, hardly models. Sure, there are ways to get it to be happy under a simple set of criteria, but once you throw strange driving disturbances, or even normal driving circumstances at it, one can think "darn, that change that was happy under that test completely messes up this situation" because one didn't know what was really supposed to be changed to fix X problem, and maybe the stock code CAN'T fix X problem.
I think people should learn WHAT to change and WHY, BEFORE changing it. Yes this requires notes, research, etc... Sorry I didn't make a 100% complete argument, nor did I intend to.
I think some insight to the madness is more important to most than iteration after iteration that waste gas and sanity. Someone had to do the iterations, but not everyone. This is a place to share.
__________________ -Jeremy- EFI Calibration Engineer, Director of R&D, Software Designer, System Department Manager (Fuel Injection Technologies - dianpen.com) - Living in China since Nov '04!!!
86 Z28 - rusty, tired, needs to be put to sleep - 89 GTA 5.7L needs new paint and the parts on the shelf installed, 79 Malibu Classic with '91 L98, 4L60, 3.73
Rbob, does this $0018 correspond to a table/switch in CATS? Is it the same thing as the switch that turns on/off the INV MAT table that is presently available in CATS?
I'm running a Miniram with the sensor mounted in the air ducting. But if I'm running the wrong MAT PW mode, then I'd like to change it if I could.
Rbob, does this $0018 correspond to a table/switch in CATS? Is it the same thing as the switch that turns on/off the INV MAT table that is presently available in CATS?
I'm running a Miniram with the sensor mounted in the air ducting. But if I'm running the wrong MAT PW mode, then I'd like to change it if I could.
The location $0018 is an option word:
There is also an option bit involved. At location $018, b4 is used to select either the intake tract heating model table, or to just use the MAT/IAT as is. If this bit is set to a 1, then the intake tract model table is used. Else, if set to a 0, then the MAT/IAT is used as is.
It is option word 3. It may be listed as such in TunerCAT, not sure. It is then bit 4 within that option. These may be broken out separately.
I would run with that bit set, to use both the CTS & IAT blended together. This will give the best result.
Note the table is based on airflow. The less time the air is within the manifold the less heat it will absorb from the intake tract.
This table is used to combine the MAT/IAT sensor value with the CTS value. Here is the math:
T = ((CTS - MAT/IAT) * MULT) / 128 + MAT/IAT
What is being done is a portion of the CTS value is being added to the MAT/IAT value. This provides a new temperature term (T). In simpler words: take the difference between the air temperature and the coolant temperature, take a percentage of this difference and add it back to the air temperature.
The table value for 0 gms/sec airflow is 128 (MULT), in affect the T term is going to be the same as the coolant temperature (CTS).
As the airflow increases less of the coolant value (CTS) is added to the air value (MAT/IAT).
Here is an example at 64 gms/sec, 10°c MAT/IAT and 85°C CTS. From the table the MULT term is 27 at 64 gms/sec:
T = ((85 - 10) * 27) / 128 + 10 = 26°c
The same temperatures at 128 gms/sec gives this:
T = ((85 - 10) * 16) / 128 + 10 = 19°c
The MULT term is changed to 16 (from the table) and the final temperature term (T) is lower at 19°c.
What is interesting about the above examples is that a MAT sensor with a engine at 85°c is probably not going to be at 10°c. Well, maybe if the ambient air is at -50°c. That is where the stock calibration falls apart with a relocated MAT to an IAT.
A MAT would be about (SWAG here) 50°c when the engine is up to temperature. Lets run the first example with that:
T = ((85 - 50) * 27) / 128 + 50 = 57°c
Quite a difference from the T = 26°c of the first example. In this case relocating the MAT will cause the engine to run richer and the BLMs to drop. The table will need to be recalibrated.
The last table is easy. The values in this table shouldn't really need to be changed. Here it is:
Easy enough, use the temperature term from the previous calculation and look up the inverse temperature term (~T) to be used in the PW calculation.
The column labled 'MAT Deg c' is really the T term. Which can and should be a combination of the MAT/IAT and CTS values.
In closing, as others have stated the Intake Tract Heating Model table is the key to recalibration. With a better understanding of how the table works it should be easier to do a better tune.
My thoughts on the stock calibration shows that at low air flows the stock long tube TPI setup adds a lot of heat. This can be seen by the full CTS temperature term at 0 gms/sec
Even at higher air flows with a heat soaked MAT, the Intake Tract Heating Model will move the T term to a high value.
An intake with shorter runners will heat the air less then a TPI. There is simply less surface area and less time for the air to pick up heat as it travels through the manifold.
RBob.
i'm struggling with air temp hard core... so i was wondering what .bin you used to get the numbers in the code box above? i've got about 4 different bins i've downloaded from places and all of them have different numbers in the grams of air flow table than yours, but the same as eachother.
i'll attach what mine look like, my intake is pretty much stock, just a little porting and bigger runners. so i wouldn't expect the temp to be so off so much but after a heat soak restart(say 50*c) the A/F is almost 2 points learner than it is at say 30*c. takes a while for the intake temp to return to 30*(which is what i try to turn at) i've tried changing the MAT Compensation Counts Vs. MAT table in that temp rang but as your post says, it doesn't do much if anything. and i don't want to go nuts in there covering for another prob.
so here's my table, the b4 bit is checked so it should be using coolent as well. which doesn't very much at all on this car. it has a 180 stat and runs about that all the time. even after a heat soak restart it returns to 180 very quickly.
oh and this is a manual .bin, incase that makes a difference.
i'm struggling with air temp hard core... so i was wondering what .bin you used to get the numbers in the code box above? i've got about 4 different bins i've downloaded from places and all of them have different numbers in the grams of air flow table than yours, but the same as each other.
AXCN, '91 y-body with 6-speed. The differences are not that large, be sure to change the BIN value to the multiplier value as shown by TP.
AXCN, '91 y-body with 6-speed. The differences are not that large, be sure to change the BIN value to the multiplier value as shown by TP.
RBob.
your talking about this right.. making the air flow show up in my logs.
Quote:
For the air flow term it is RAM location $6B. Will need to patch the ALDL stream to include it. I checked and am surprised it was not already there. Then it is a matter of matching up that value with the table. This is a value that the ECM calculates internally.
yeah.. i don't know how to do that lol. i'll search for adding things to my aldl logs and see if it makes sense.
my question is, and it since i'm struggling with this so hard. the question my not even make sense. but if its a correction vr air flow, should i leave the slope alone since it seems to based on temp, not air flow. meaning it doesn't go lean at higher rpm where it would flow more. it goes lean everywhere till the high temps drop back down.
RBob, I will try and dig up a post I made on this subject a few years ago when I discovered that the MAT Inverse Lookup Table needed to be modified when I relocated my MAT. In fact, with a LOT of trial and error, I even came up with a revised MAT table that people could use to correct for a relocated MAT sensor.
I always mentioned that I had "no clue" how the table actually functioned and that my modifications were based on "using my car as a test bench" in for around 6 months of driving.
Given your information, I will deeply analyze it and try to use the revised MAT table I derived for a relocated MAT sensor to see if I can finally determine who my revision affected the calculation and why it works.
Can you send me the revised MAT table you created?
Thanks to PP, this thread got revived and I picked up on it. Although I am working with an LT-5 it is an SD motor. Myself and many ZR-1 drivers DO move the MAT from the airhorn of the LT-5 to somewhere closer to the cold air intake area. Mine is behind the air filter which is sucking air through the radiator shroud. Most, if not all of us, don't do anything about the tables.
However, the only tables I have been able to find in the .xdf deal w
Density v Baro and gm/sec, and a MAT Compensation v gms/cyl. I have attached a screen shot from TPRT. I am trying to correlate these tables with the ones discussed in this thread. The values in the tables are stock.
__________________ 92 Black Rose ZR-1
92 Aqua ZR-1 SOLD
84 Z51Xfire SOLD