SD - first test success
I have used MOLEX 90119-2110 for ECU bench, they fit on ECU pin, but I do not know if they click in the connector thou, you may find them on farnell.com
To add to what I said before. It is better to leave the bov recirculated. If you are a person who has good shift times, it will benefit you. (test done on stock turbo) It has actually been shown that with the bov recirculated at a shift time of 0.25 of a second the turbo will hold 2 more pounds of boost(may be more psi on larger turbos) in comparison of the VTA. That in most cases can equal about 20 extra horse at the hit of each gear.(taking the general idea that 1 psi equal 10 hp) It also lowers the rebound time of spool.
^ The pulped ricer that Eric beat up was about to go and buy some JB Weld with his new found knowledge of how to rice his Evo on the cheap, now you've just kicked him when he's down
Thanks!
Thanks!
EvoM Guru
iTrader: (50)
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
I'm not sure I'd put JB weld there. I'd be more inclined to tap it and block the hole with a set screw. This is what Dejon Tool does for their stop leak kit. Also, I'm wondering what will happen when the hole is sealed. Is it going to cause more DV flutter under normal driving?
I'm not sure I'd put JB weld there. I'd be more inclined to tap it and block the hole with a set screw. This is what Dejon Tool does for their stop leak kit. Also, I'm wondering what will happen when the hole is sealed. Is it going to cause more DV flutter under normal driving?
Edit: you are right though, the few times i have seen this done has been drill, tap, and loctite a plug into the hole.
Last edited by MR Turco; Feb 12, 2009 at 09:52 AM.
I'm not sure I'd put JB weld there. I'd be more inclined to tap it and block the hole with a set screw. This is what Dejon Tool does for their stop leak kit. Also, I'm wondering what will happen when the hole is sealed. Is it going to cause more DV flutter under normal driving?
EvoM Guru
iTrader: (50)
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
The temperature (& baro) compensations are to provide air volume to air mass conversion using our volume airflow meter.
For speed density, to get an accurate air mass measurement you want the air temperature and pressure measured in the same location. Since the pressure is measured after the throttle, in the inlet manifold, it is better to measure the temperature there too. UICP or IAT are 2nd and 3rd best options, they will still work. Heatsoak of sensors is another issue, but that also affects IAT.
The reason I say that IAT is the 3rd best option for air mass compensation is that you will get an error in air mass estimation as the delta between MAT and IAT increases as you heatsoak the intercooler and the inlet manifold temperature heats up from transfer from the cylinder head, TB water circuit if still present, and from the intake air.
UICP is inferior because of the pressure and temperature gradients across the throttle body.
Speed density ECU manufacturers always recommend a post intercooler location at least.
In my testing so far, I found that the wideband AFR has been consistent, it would have been 5% richer if using IAT in some conditions, but not in others. With good airflow (high speed) on a cold day, using no boost, the IAT and MAT can have a small delta, with low speed and/or boost use there is a delta, and this would give you an error if using IAT as your compensation. The error would be in the generally safe direction of retard and enrichment, but so does not running temperature compensation at all.
Not having baro I think is a very small concern. Air mass will tend to be overestimated slightly at elevation or on days with lower baro, but the error is only due to the turbine and compressor efficiency being lower due to the higher rotational speed required to provide the same MAP. It is nothing like the sort of error that you would get with a volume airflow sensor without baro correction (error would be 8% on the stock airbox at high revs).
For speed density, to get an accurate air mass measurement you want the air temperature and pressure measured in the same location. Since the pressure is measured after the throttle, in the inlet manifold, it is better to measure the temperature there too. UICP or IAT are 2nd and 3rd best options, they will still work. Heatsoak of sensors is another issue, but that also affects IAT.
The reason I say that IAT is the 3rd best option for air mass compensation is that you will get an error in air mass estimation as the delta between MAT and IAT increases as you heatsoak the intercooler and the inlet manifold temperature heats up from transfer from the cylinder head, TB water circuit if still present, and from the intake air.
UICP is inferior because of the pressure and temperature gradients across the throttle body.
Speed density ECU manufacturers always recommend a post intercooler location at least.
In my testing so far, I found that the wideband AFR has been consistent, it would have been 5% richer if using IAT in some conditions, but not in others. With good airflow (high speed) on a cold day, using no boost, the IAT and MAT can have a small delta, with low speed and/or boost use there is a delta, and this would give you an error if using IAT as your compensation. The error would be in the generally safe direction of retard and enrichment, but so does not running temperature compensation at all.
Not having baro I think is a very small concern. Air mass will tend to be overestimated slightly at elevation or on days with lower baro, but the error is only due to the turbine and compressor efficiency being lower due to the higher rotational speed required to provide the same MAP. It is nothing like the sort of error that you would get with a volume airflow sensor without baro correction (error would be 8% on the stock airbox at high revs).
Last edited by mrfred; Feb 12, 2009 at 11:00 AM.
I asked similar questions a few times in the other thread and again in this thread, back in post #236. I think you and I are basically asking the same thing.
John replied two posts down from that. I struggle a bit with the understanding because I don't know the code like you guys do. So, that's why I ask so many questions...I need to know exactly what's going on.
My confusion always dealt with the fact that the load calcs are simply replacing a maf value with a map value. Since map and maf have a different shape with respect to time (say over a boosted single gear pull through the RPM range), I didn't see how this is possible and figured the 'VE' tables were the compensation for the difference in shape. Then comes the temp compensations, which John has said should work exactly as before, and thus would change the 'load' value away from map, depending on temperature change.
Perhaps I still don't understand the implementation exactly yet. But I think I'm getting closer based on every subsequent explanation by John. If it were simple SD, then it would be simple to understand, but since this is 'SD' incorporated into the existing maf code, it makes it more difficult to understand, especially when you can't read the code, like me.
John replied two posts down from that. I struggle a bit with the understanding because I don't know the code like you guys do. So, that's why I ask so many questions...I need to know exactly what's going on.
My confusion always dealt with the fact that the load calcs are simply replacing a maf value with a map value. Since map and maf have a different shape with respect to time (say over a boosted single gear pull through the RPM range), I didn't see how this is possible and figured the 'VE' tables were the compensation for the difference in shape. Then comes the temp compensations, which John has said should work exactly as before, and thus would change the 'load' value away from map, depending on temperature change.
Perhaps I still don't understand the implementation exactly yet. But I think I'm getting closer based on every subsequent explanation by John. If it were simple SD, then it would be simple to understand, but since this is 'SD' incorporated into the existing maf code, it makes it more difficult to understand, especially when you can't read the code, like me.
Last edited by l2r99gst; Feb 12, 2009 at 10:38 AM.
tested the JDM sensor on mut 38 reads perfect
JDMMAP
56.028
60.03
60.03
58.696
57.362
56.028
61.364
57.362
61.364
56.028
58.696
58.696
56.028
60.03
61.364
60.03
I am ready to take the next step
JDMMAP
56.028
60.03
60.03
58.696
57.362
56.028
61.364
57.362
61.364
56.028
58.696
58.696
56.028
60.03
61.364
60.03
I am ready to take the next step
Yes I am trying to exactly match MAP load and MAF load under all conditions - when I refer to load here I mean after the baro and temp comps, so the car drives the same on the same maps in all conditions. Prof Moskwa's paper I linked to earlier (wish I could find a copy that we can display) shows how the two airflow estimators can be used to correct each other in different conditions including leaks. The only place you'd expect them to differ is during and slightly after transients when you get delay effects because of the inlet manifold pressure altering after the throttle has moved. However, because the MAF signal is filtered in software (over time) on the Evo this problem that plagued a similar conversion on the Impreza does not arise. The Evo handles acceleration and deceleration effects well based on TPS.
We're replacing the volume of air measured by the MAF in one half engine rotation with the calculated notional volume of air ingested by the engine in one half engine rotation. I'm calling it notional volume because we're correcting it to standard pressure (simply by multiplying by MAP). I'm calling it calculated because VE lookups are used to determine the volume of air that is ingested through the inlet ports.
Note that I do not say that we're replacing the mass of air measured by the MAF, because we're not. We're replacing the variable before it has been converted to mass as baro and IAT have not yet been corrected for.
The key point I'd like to make about temperature, is that it doesn't matter what the actual temperature is per se (OK there might be 1 degree in the timing comp a bit sooner and there may be idle effects that I haven't experienced), it matters what it is at the point where the volume is being measured or the notional volume being estimated as this is the basis for converting to mass. This is because in the leak free situation, air mass is conserved.
Ultimately both MAP and MAF calculation paths result in estimations of air mass. It is complicated by the stage where we convert, and the remaining compensations that are left. It is also complicated by the practical need for integer math and unitless calculations in our ECUs.
I found that in typical use where VE is high, non-temperature compensated load is about the same as MAP in kPa. They would diverge slightly either way depending on the delta between MAT and IAT. However, this divergence is accounted for in my conversion
This is because if you setup the MAP based MAT compensated load to be proportional to (1:1 works for me) the MAF based IAT and Baro compensated load and this gives the correct AFR when setup, then the calculations remain valid in different temperature conditions as each temperature sensor slides up and down its density slope. AIR MASS IS CONSERVED. Aside from sensor heatsoak, intercooler heatsoak doesn't matter. If MAT goes up, for the same air mass measured by the MAF sensor, MAP will go up. In other words, density in the fixed volume inlet manifold is proportional to mass airflow calculated from MAF, IAT, baro in the MAF sensor. THIS IS WHY I can replace MAF air volume with MAP adjusted for VE. Afterwards the MAF route gets its IAT and baro comp, and the MAP route gets its MAT comp and no baro comp.
When we convert to SD, we no longer need the baro correction in the same way as the MAF does (for its use even at constant environmental atmospheric pressure it would have c.8% error at high RPM without depending on intake design and boost level) because we've already corrected our notional volume to standard pressure. I acknowledge a more minor effect that is in a safe direction for high altitude - this needs empirical testing outside the UK.
I've left out the non-linearity of the MAF sensor to keep the discussion simple, but the effects cancel.
We're replacing the volume of air measured by the MAF in one half engine rotation with the calculated notional volume of air ingested by the engine in one half engine rotation. I'm calling it notional volume because we're correcting it to standard pressure (simply by multiplying by MAP). I'm calling it calculated because VE lookups are used to determine the volume of air that is ingested through the inlet ports.
Note that I do not say that we're replacing the mass of air measured by the MAF, because we're not. We're replacing the variable before it has been converted to mass as baro and IAT have not yet been corrected for.
The key point I'd like to make about temperature, is that it doesn't matter what the actual temperature is per se (OK there might be 1 degree in the timing comp a bit sooner and there may be idle effects that I haven't experienced), it matters what it is at the point where the volume is being measured or the notional volume being estimated as this is the basis for converting to mass. This is because in the leak free situation, air mass is conserved.
Ultimately both MAP and MAF calculation paths result in estimations of air mass. It is complicated by the stage where we convert, and the remaining compensations that are left. It is also complicated by the practical need for integer math and unitless calculations in our ECUs.
I found that in typical use where VE is high, non-temperature compensated load is about the same as MAP in kPa. They would diverge slightly either way depending on the delta between MAT and IAT. However, this divergence is accounted for in my conversion
This is because if you setup the MAP based MAT compensated load to be proportional to (1:1 works for me) the MAF based IAT and Baro compensated load and this gives the correct AFR when setup, then the calculations remain valid in different temperature conditions as each temperature sensor slides up and down its density slope. AIR MASS IS CONSERVED. Aside from sensor heatsoak, intercooler heatsoak doesn't matter. If MAT goes up, for the same air mass measured by the MAF sensor, MAP will go up. In other words, density in the fixed volume inlet manifold is proportional to mass airflow calculated from MAF, IAT, baro in the MAF sensor. THIS IS WHY I can replace MAF air volume with MAP adjusted for VE. Afterwards the MAF route gets its IAT and baro comp, and the MAP route gets its MAT comp and no baro comp.When we convert to SD, we no longer need the baro correction in the same way as the MAF does (for its use even at constant environmental atmospheric pressure it would have c.8% error at high RPM without depending on intake design and boost level) because we've already corrected our notional volume to standard pressure. I acknowledge a more minor effect that is in a safe direction for high altitude - this needs empirical testing outside the UK.
I've left out the non-linearity of the MAF sensor to keep the discussion simple, but the effects cancel.
Last edited by jcsbanks; Feb 12, 2009 at 12:02 PM.
mrfred, reading your question again, I think it is important to state that I am aiming to get the fully compensated MAF and MAP based loads equal. The paths to that point wander until the sometimes rather different temp and baro corrections are applied. To plot VE absolutely correctly then, we should probably take MAP compensated for MAT density and compare it to MAF load that has been compensated for IAT and baro. For simplicity I just compared MAP and non-compensated load as it was near enough to get my VE curve and I already had ample logs of this.
There could be minor effects from the choice of load used in lookup of the fuel and timing maps, we should consider whether to make them all fully temp compensated all the time, but it is a detail I can happily forget unless I see any consequences.
I'm glad you're asking the hard questions! I've been thinking about this conversion for two years, so I sure hope I got it right, coding bugs and coaching people through VE table setup aside.
There could be minor effects from the choice of load used in lookup of the fuel and timing maps, we should consider whether to make them all fully temp compensated all the time, but it is a detail I can happily forget unless I see any consequences.
I'm glad you're asking the hard questions! I've been thinking about this conversion for two years, so I sure hope I got it right, coding bugs and coaching people through VE table setup aside.
Last edited by jcsbanks; Feb 12, 2009 at 12:12 PM.
EvoM Guru
iTrader: (50)
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
I asked similar questions a few times in the other thread and again in this thread, back in post #236. I think you and I are basically asking the same thing.
John replied two posts down from that. I struggle a bit with the understanding because I don't know the code like you guys do. So, that's why I ask so many questions...I need to know exactly what's going on.
My confusion always dealt with the fact that the load calcs are simply replacing a maf value with a map value. Since map and maf have a different shape with respect to time (say over a boosted single gear pull through the RPM range), I didn't see how this is possible and figured the 'VE' tables were the compensation for the difference in shape. Then comes the temp compensations, which John has said should work exactly as before, and thus would change the 'load' value away from map, depending on temperature change.
Perhaps I still don't understand the implementation exactly yet. But I think I'm getting closer based on every subsequent explanation by John. If it were simple SD, then it would be simple to understand, but since this is 'SD' incorporated into the existing maf code, it makes it more difficult to understand, especially when you can't read the code, like me.
John replied two posts down from that. I struggle a bit with the understanding because I don't know the code like you guys do. So, that's why I ask so many questions...I need to know exactly what's going on.
My confusion always dealt with the fact that the load calcs are simply replacing a maf value with a map value. Since map and maf have a different shape with respect to time (say over a boosted single gear pull through the RPM range), I didn't see how this is possible and figured the 'VE' tables were the compensation for the difference in shape. Then comes the temp compensations, which John has said should work exactly as before, and thus would change the 'load' value away from map, depending on temperature change.
Perhaps I still don't understand the implementation exactly yet. But I think I'm getting closer based on every subsequent explanation by John. If it were simple SD, then it would be simple to understand, but since this is 'SD' incorporated into the existing maf code, it makes it more difficult to understand, especially when you can't read the code, like me.

jcsbanks' SD implementation is generating a master load based on MAP and RPM. From the perspective of the ideal gas law, master load in this case is PV. It already includes a pressure compensation, but still lacks the temperature compensation.
For a car that stays at the same altitude, master load calculated from MAP and RPM should be directly proportional to master load calculated from a Karmen MAF. That's good.
That leaves the temperature compensation. In theory, the temperature should be measured in the same place where the other air mass measurements are taken. For the Karman MAF, air temperature and pressure should be measured at the MAF, and they are. For an ideal SD implementation, air temperature should be measured in the IM. However, I see two reasons why this does not make sense when adapting to the Evo ECU.
1) It appears that we are trying to make the SD master load behave as an exact replacement to the Karman MAF master load.
2) All the air temperature compensations were developed for an air temp sensor in the MAF.
Hence, it seems to me that air temperature should be measured in a location equivalent to where its measured in a Karman MAF setup, and that's why I'm suggesting that for adapting SD to the stock Evo ECU with minimal retuning, its better to have the air temp sensor in the UICP where the temperature is not too different than in the MAF sensor. Putting the air temp sensor in the IM is probably more theoretically ideal, but my guess is that more tuning, and perhaps more modifications to the ROM code, will be required to obtain good all-weather, all condition drivability.
Last edited by mrfred; Feb 12, 2009 at 12:19 PM.
See my replies above which I think crossed with yours.
We should be comparing fully compensated loads and IPW variables, not the master loads.
I believe you'll need more retuning and the temp comp will not be right if you use IAT instead of MAT. You'll be compensating for the temperature of the environment, but not for the air going through your inlet valves. This means that you'll richen and retard (excessively) as you heatsoak the intercooler.
The ignition air temp comps are minor, I see no difference in idle behaviour, and 1 degree of timing retard will be hit a little earlier than on IAT, we can just change it, although I left it alone as this would be getting hot on my car and the safety is good. Any other air temp comps to fix?
We should be comparing fully compensated loads and IPW variables, not the master loads.
I believe you'll need more retuning and the temp comp will not be right if you use IAT instead of MAT. You'll be compensating for the temperature of the environment, but not for the air going through your inlet valves. This means that you'll richen and retard (excessively) as you heatsoak the intercooler.
The ignition air temp comps are minor, I see no difference in idle behaviour, and 1 degree of timing retard will be hit a little earlier than on IAT, we can just change it, although I left it alone as this would be getting hot on my car and the safety is good. Any other air temp comps to fix?
Last edited by jcsbanks; Feb 12, 2009 at 12:28 PM.
We're replacing the volume of air measured by the MAF in one half engine rotation with the calculated notional volume of air ingested by the engine in one half engine rotation.
...
Note that I do not say that we're replacing the mass of air measured by the MAF, because we're not. We're replacing the variable before it has been converted to mass as baro and IAT have not yet been corrected for.
...
Note that I do not say that we're replacing the mass of air measured by the MAF, because we're not. We're replacing the variable before it has been converted to mass as baro and IAT have not yet been corrected for.
Originally Posted by jcsbanks
If MAT goes up, for the same air mass measured by the MAF sensor, MAP will go up. In other words, density in the fixed volume inlet manifold is proportional to mass airflow calculated from MAF, IAT, baro in the MAF sensor. THIS IS WHY I can replace MAF air volume with MAP adjusted for VE.
This is the exact reason why I was confused at first. In a MAF system, I agree that the map will have to go up at a constant mass airflow rate if MAT goes up. But in a purely map based system, you're losing that volume measurement and map can stay the same with increasing or decreasing MAT and air mass.
But, I think this coincides with your description of how and where you are replacing maf with map and the volume variable. You are actually replacing and calcuating a volume via map rather than a volume via maf, and not simply substituting a maf value (Hz) with a pressure value (kpa).







