![]() |
MAF (Mass Air Flow) versus Speed Density, Discussion & Debate for ALL
Hi All,
There is definitely a debate going on right now between the two options available and I would like to start this thread in a light that is open to all sides for debate and discussion. The goal of this thread is to keep a friendly debate between the options/tuning solutions available, benefits and drawbacks of each from whoever would like to discuss the topic. I will be taking the responsibility of keeping the debate on as even a playing field as possible and while I can not be an official "so to speak" I do want to hear the opinions of tuners and different tuning options available for each. So I will attempt to do my best at keeping things equally balanced. Moderators are more than welcome to review the thread to keep the bad-mouthing at bay. So as the forum rules state, NO bad-mouthing other products, but you are more than welcome to offer difference of both systems. As a caveat if you speak about how an engine management system may work you are required to have used the system prior to speaking about it features. Topic: - MAF (Mass Air Flow - Quantity of Air) versus Speed Density (Manifold Air Pressure - Quantity of Air based on Pressure) Current Tuning Options Mass Air Flow: - BRZEdit - EcuTeK - Open Flash Tablet Current Tuning Options Speed Density: - EcuTeK - RaceROM If you as a tuner would like to debate, please let me know so we can add you to the list of people officially debating. Also non tuners (members of the forum), are more than welcome to express their opinion also. Please offer a little background of yourself when giving your opinions. Debating Tuners: - William @ Delicious Tuning Regards, William Knose |
Saving space for later use.
|
To bad this thread was created during a time that some people aren't allowed to post :)
|
Well to kick off, there's a great resource here - http://oldfuelinjection.com/?p=4 gives a good summary of the four types of fueling systems (MAF, SD, Alpha-n and the antiquated vain airflow).
About me - I'm an end user who took matters into his own hands, so to speak :D I'm well acquainted with the open source implementation of SD (both the initial one based on Freon's work, and subsequent significant upscaling of the implementation by Merp), both at a code level, and having implemented it on my own vehicle (09' STI). My personal cliff-notes: - MAF is much more versatile at adapting to dynamic environments (IATs, altitude, etc.). That being said, SD can be adjusted through various compensations to mitigate some of these issues. - Flowing from the above point, idle and low load driving was much easier to tune using MAF, whereas SD (where IATs are a key input into the calculation of fueling requirement) could swing very wildly given small temperature changes. - On the con side for MAF, once you start pushing serious power (I was logging over 500g/s in terms of load) you quickly max out the capacity of the MAF sensor - and hence it's resolutions, at higher loads. In the above example, I was reaching voltage of 4.92v (out of a maximum of 5v), and that was using an 83mm intake, well above stock. - Along with a larger intake, came a number of other headaches with respect to tuning idle and low load, due to the changed flow characteristics of the charge) - SD, in my personal experience (mileage may vary), once thoroughly dialed in at the top, gave me more consistent AFRs - and hence a little extra up top. - Hardware, especially the location of the IAT sensor, is important for a decent SD implementation. You want the IAT sensor as close as possible to the plenum - in other words, reflecting the actual temperature of the air charge entering the chambers as accurately as possible. This is even more critical with forced induction due to the differing temps at the intake and the throttle body. My 2 cents. |
To start the debate, a question has been asked at what point does one need to use Speed Density? Is it at a certain horsepower level, or maybe something else?
Well, from personal experience there is not one exact answer. I have used both MAF and SD (Speed Density) over the years and many scenarios, where SD was useful, otherwise MAF was just as good in all scenarios otherwise noted. Speed Density Benefits: Head to Head Competition, where you will be battling it out on the track or similarly where walls are involved. So rally-cross, SCCA, or similar. The benefits are when the piping or intake get damaged you can continue running, and do not need to worry about falling out of a race. Now can you run MAF in these scenario's of course but there is that chance something could occur and knock you out of the race. Non Head to Head Competitions, such as Time Attack, Rally or Hill Climbs where is a hose pops off, you will be knocked out of the race. The reason is the MAF sensor needs to see airflow and be in a contained system, which if is not, will show in-accurate readings to the vehicles's ECU and therefore will not run well if at all. MAF Sensor Benefits: Now on the flip side, tuning a vehicle for Pikes Peak with MAF is a LOT easier than Speed Density (though still completely possible), it does take time. When you are running Pikes Peak MAF will work rather well, in fact pretty amazing. I would even go as far as saying better than Speed Density. So as far as say Pikes Peak, does one take MAF or Speed Density or vice versa? What are your thoughts? Think of it from a financial point of view for a race team and local Joe, because anyone can enter their vehicle to race up Pikes Peak with proper qualifications of course. Cheers, William Knose |
Quote:
Cheers, William Knose |
Ah yes, of course - forgot about that specific advantage as well - boost and vacuum leaks don't affect fueling calculation, and you can unleash the inner ricer (vent to atmosphere BOV are perfectly fine with SD).
|
Quote:
|
What about piping freedom being a bonus to SD? Ive had MAF sensors act up and the tuners have told me its do to the positioning of the sensor, to close to bends or transitions. I do lots of fabrication of piping and some times its difficult to incorporate a long enough straight section to provide straight air to the MAF.
|
Quote:
Quote:
But after the initial tune was completed upgrading this kit down the road, will be a lot easier. And making big power with a Speed Density map should go quicker now, as I will not be limited by MAF resolution. Definitely a big plus for me personally on this setup. Cheers, William Knose |
I wish I had a local tuner, I don't think they have any Subaru tuning shops in Louisiana.
|
to me it comes down to hardware. if i have a turbo with a 4" inlet, it would probably be a good idea to make the move to speed density and get rid of the maf. if i'm running a stock-size intake tube and haven't maxed my maf, i'd keep the maf setup.
it's not at all about which is 'better'. they are two different approaches to a problem, not a solution to one. the solution is the calibration in either case. it's just a matter of which method makes achieving that ideal calibration easier in a given situation, which i believe is all about hardware. |
Quote:
The vented air is unmetered and will not cause fueling issues. |
Quote:
Leaking metered air is always a possibility with MAFs. |
There are pluses and minuses to each system. When it is an option I prefer a maf based system or a blended set up. But there are applications were the maf becomes a bigger headache to deal with then speed density. If that becomes the case speed density will be the way to go. At the end of the day I feel it comes down to what is right for the particular vehicle more then anything else. I do not feel there is a set in stone point were if you make x amount of power or plan to use your vehicle in this manner you have to choose speed density of maf based calculation.
|
Quote:
|
Quote:
Placing this sensor in the air flow of a pipe that has a continuously changing pressure is a very bad idea. Because the MAF sensor is basing it's calculations on most importantly atmospheric pressures, the air flow values will be incorrect almost all the time because it can not adjust to the pressure changes in the pipe. Because of this, the vehicle can literally go through the same point in any Load/RPM based table (say fueling or timing) with different boost levels. Example "Blow-Through" Problems: Scenario 1: You are tuning for partial throttle say 10 PSI of boost and set your timing values accordingly for more torque. Now under you hit 20 PSI and set your timing values accordingly. Now in these conditions, partial throttle MAF Voltages are 3 volts (air flow) and 4 volts (air flow) respectively. Scenario 2: Partial throttle climbing a hill under boost (20 PSI) and because of the lack or airflow from the throttle being only 50% open the MAF voltage are around 3 volts. Because of this the timing values will be far too aggressive and will cause detonation. Of course you can tune for this, but then your partial throttle becomes sluggish. Now with if the MAF sensor would have been in the proper place it would have registered all the air flow properly in order for the FI system to maintain that boost level in those pipes. Or if Speed Density would have been enabled then the tune would have worked properly also. So "Blow-Through" is just a bad idea and not something that needs to be discussed on this thread. Cheers, William Knose |
i don't agree with the above at all. i always use blow-through mafs on turbo conversions and they always work fine. you may be right about the specific issues you point out, but we could do the same for any setup. they all have their particular issues.
to be honest i don't really follow your example. i also don't understand how a heated element airflow sensor is affected by pressure, but then i'm no expert on how the things work internally either. all i know is i've had lots of cars with them and they all run just as well as the cars i've had with draw-through or hybrid maf/sd setups. |
Quote:
So you can have single points in the tables/maps being crossed by vastly different boost pressures because the MAF sensor (which determines load) sees the same speed of air under varying boost pressures. As you have seen, it can be made to work, but I have found it to not be ideal and something I prefer not to tune. Cheers, William Knose |
Quote:
Was simply saying it depends on the platform and maf placement :) |
Quote:
|
Can someone explain to me why EcuTeK can do SD? Or, if nobody is willing to pierce the veil of mystery behind the platform that @EcuTek engineered, why can't OFT/BRZEdit/EcuFlash tune a BRZ/FRS with SD?
|
Quote:
|
Quote:
But I think much of this MAF vs SD trade-off discussion doesn't even apply to 99% of users who don't plan on making more than 350-400whp. And I suspect even that whp range is conservative. |
Quote:
open source speed density exists for lots of other platforms, just not ours yet. |
One drawback of hot wire MAF sensors is that for the first couple seconds of operation, the wire is drawing a lot of current while heating up to operating temperature, which just happens to look to the sensor as if the engine is ingesting huge amounts of air. For this reason, manufacturers often add at least a 1bar (barometric) sensor and intake air temperature sensor to handle fueling using SD or pseudo-SD during the first few seconds of operation because many folks turn the key straight from off past ACC and ON to START when they get into their car. For race application, it's not an issue since you can teach a racer to turn ignition power on and wait five seconds before cranking the engine. For street applications, the extra sensors also allow SD operation in cases where the MAF fails and also allows the ECU to potentially detect MAF failure or the use of a piggyback unit to alter the input signals.
Both SD and hot wire MAF can be made to run very well in almost all situations provided that the sensors are properly situated and calibrated and that the ECU/EMS is well implemented and expertly tuned. Even alpha-n can be made to work well on NA engines when appropriate barometric and air temperature compensations are applied. There is another air flow system called a karman vortex MAF which also has its plusses and minuses. |
4 Attachment(s)
A lot of the practical concerns have already been discussed here. To summarize: the MAF sensor was never designed for very high airflow, and the ECU software as we understand it was never really designed for a full speed density implementation. So you run into hardware and measurements issues with high power MAF-based builds. With speed density, you have the headache of shoe-horning in a control system the engine was never designed for in terms of software and hardware.
Neither set of problems are insurmountable; they're just the nature of pushing a car far beyond what it was originally designed to do in terms of hardware or software. Now let me address the below question: Quote:
So, here's a history lesson. The first speed density system worth noting is the Bosch D Jetronic system. D stands for "Druck," which is German for pressure. That was on the Porsche 914 back in the 1970s and just used a MAP sensor. Airflow based control, called the Bosch L Jetronic (L for "Luft" or air) system, was introduced later (Porsche 924). Early airflow-based control used a moving door (vane/flap type) to measure volume of incoming air. A Mark III Supra nonturbo had this. A Karman vortex meter was another type of volume airflow sensor using airflow disturbances for measurement. The Mark III Supra turbo had this, and so did many Mitsubishi engines up until the Evo X era. There are two families of mass airflow sensors. One is the hot wire type and one is the hot film type. The hot wire type, which is what's usually used on Subarus, produces a voltage. The hot film type, which you'll find on say a GM LS1 engine, produces a frequency signal. All the airflow sensors may be packaged with temperature and other sensors. Speed Density and MAF hybrid Since the late 90s to early 2000s though many/most control systems are actually both. They're a hybrid from the factory. Most of the widely reverse-engineered Japanese cars don't seem to work that way, but basically everything American and German is hybrid combining speed density and MAF. Do some internet searches on tuning a GM V8 and you'll read all about what's involved. With the right software settings you can basically turn the two systems on or off. Even the modern purely speed density systems are still calculating mass airflow. Now take a look at a simplified torque model and simplified airflow model to see how this works. This is from the old Bosch Motronic 7 you'd find in something like a late 90s VW. http://www.ft86club.com/forums/attac...1&d=1386125206 At the upper left you have the driver's request from the electronic throttle. This converts to a torque request. The torque request figures out how to make the torque using fuel AFR, spark timing, and airflow. Then the airflow model determines how much air is needed to achieve the target torque. How does the ECU know what the torque is though? It uses a torque model. http://www.ft86club.com/forums/attac...1&d=1386125074 So when we talk about speed density and MAF, we're only talking about the cylinder charge estimation. That's one portion of the control system. Then if we break it down to some physics [ame="http://en.wikipedia.org/wiki/Ideal_gas_law"]Ideal gas law - Wikipedia, the free encyclopedia[/ame] you'll see why speed density and MAF are in some ways the same thing and can be substituted. http://www.ft86club.com/forums/attac...1&d=1386125074 What all this above says is that if I have pressures and temperatures I can model mass airflow, and if I have mass airflow I can model temperatures and pressures. If there's enough information there in the form of accurate look-up tables or real measurements, you can do either one. It gets more tricky when the engine is in a transient condition like accelerating (rather than cruise control at 70mph on flat road). That's where the modeling has to be made to work well, or you have to have a bunch of look-up tables calibrated well enough to get the job done. When variable valve timing and lift gets involved, it's even more complicated. When you use a speed density software hack, you're replacing a measured value from a sensor with a value from a lookup table and a bunch of correction factors applied to it. The "hybrid" speed density that's been referred to in this thread is more like flipping the software hack on and off based on some conditions. It's not fully like the more advanced modern systems--it's not combining a measured value from an airflow sensor with a modeled value in the same way that cars do from the factory. But guess what--those OEM systems took a lab full of engine dynos and a staff of engineers and software people to be tuned properly. These aftermarket speed density conversions are a straightforward implementation. There are a lot of hardware and software limitations to aftermarket tuning of heavily modified engines, but if you put enough time and expertise into it you can make them work well enough to get the job done. You're still going to make sacrifices though, in terms of tuning time and maybe the final driveability. |
Quote:
|
Quote:
Firstly, none of this is magic ;) Basically, additional code is written (usually in C++) to undertake the fueling calculations using the speed density formula, and the required lookup tables are added to be referenced by this code. The code is then compiled and inserted into the rom, usually in free ROM space. The way it works is that the existing code calls subroutines in making the (MAF based) fueling calculations. The new SD code replaces this 'hook' into the MAF fueling calculation routine with the custom SD code, and then returns the 'answer' back into the main routine. That's part of the cons of an SD system shoehorned into a MAF implementation - it's not ideal, since all the key calibrations are still referenced in engine load (g/s) as opposed to pressure, which they would be in a native SD implementation (for example the Subaru group N Rom). SD has been available in open source for quite a while (16bit roms, Carberry, Freon's implementation of the 32bit version, and more recently a much more sophisticated implementation by Merp). The source code is actually readily available (see here), and once you dig out all the required hooks and addresses in the rom, would be fairly straightforward to compile. I ported some of the earlier 32bit roms, and also worked with Merp on digging out the required addresses on another rom after he set up a patch development platform in HEW that integrates the disassembly from IDA with the Renesas development environment. I know there are developers on here who should be comfortable working in an IDE such as HEW - I'm willing to work with them to develop a patch. Unfortunately, I started learning arse about end - ASM before C++ - so it's still quite a learning curve for me until I'm comfortable in HEW. |
Quote:
Quote:
Quote:
|
Quote:
Quote:
I could take you through the code, but I fear it will start getting quite OT in this thread - maybe we can start another thread? The hook is a JSR, e.g. Code:
jsr @r3 ; Merp_Speed_Density_Patch |
Quote:
Though I am more than willing to learn more about it and look into it more. Cheers, William Knose |
Quote:
Why would you need to create a whole set of calibrations if you could create a well defined MAF look up table based off the MAP sensor and RPM and other compensations? I understand there is the theory that if you create a whole new set of calibration tables it will perform better but if the MAF lookup table does the same job what would be the difference? Cheers, William Knose |
Quote:
Based on what's been reversed engineered, Subaru appears to be very much behind the times, which isn't surprising considering how small they are. But that leads for simpler modding in some ways. The low level stuff (what assembly commands are used and where it's stored) is important to make sure there isn't any kind of bug or hardware issue, but the high level--the big picture of the control system--is what ultimately affects the tuning. In a typical controls development process, the block diagrams and control architecture are developed first in prototype phase, and the final details of the low level code and hardware implementation are last. Quote:
So there's nothing inherently wrong with converting some pressure into a flow value like all the SD conversion ROMS do. You just can't possibly do an OEM level of control, especially since modern speed density systems on turbo engines use multiple pressure sensors. With the SD conversion roms, when compared to a native implementation you're giving up complexity for simplicity. Quote:
In the end when you're tuning it you just end up putting whatever values into the various tables to get the best results you can. |
Quote:
Quote:
The worry with implementations on stock ECUs, as with any modification really, is what unknown compensations and logic are at play. With 250,000 lines of code plus, and only a fraction understood / disassembled, there is always more to learn. But as with most tuning, you can do a pretty good job as long as you have access to the main levers re: timing, fueling, airflow. Quote:
|
Quote:
Quote:
Quote:
|
EcuTeK Speed Density Custom Mapping
Here is a little more on EcuTeK Speed Density and photos directly from their software.
EcuTeK Custom Speed Density Tables - Speed Density Activation MAF - ECU will use SD Mass Airflow map rather than MAF sensor above this MAF. For hysteresis, top value should be higher than lower value - Speed Density Activation MAP - ECU will use SD Mass Airflow map rather than MAF sensor above this MAP. For hysteresis, top value should be higher than lower value - Speed Density Activation RPM - ECU will use SD Mass Airflow map rather than MAF sensor above this RPM. For hysteresis, top value should be higher than lower value - Speed Density Mass Airflow - Mass airflow derived from RPM and MAP - Speed Density Temperature Compensation - SD Mass Airflow adjustment based on IAT - Speed Density Throttle Delta Compensation - Compensate SD based on Throttle Delta and RPM http://www.delicioustuning.com/sites..._Tables_01.png http://www.delicioustuning.com/sites..._Tables_02.png All tables can be enabled based on: - Map Mode - In which map mode speed density will be active, available maps are 1,2,3,4 - Thresholds - This will offer the ability to offer a change when Speed Density is active. Active only above/below threshold maps. Cheers, William Knose |
SD hook
Looking for an opensource hook into the MAF lookup subroutine to implement SD...
Using the A01G ROM, the subroutine at 2B0D6 (2B17E in A01C ROM) is the only place that I can find that sends MAF_V to get looked up For the MAF table, 2B0D6 is called with r13=08, MAF_V in fr4. The Pull2D function is called and the return MAF value is in fr0. As this table is is indirectly referenced and a few other sensors (ECT, IAT, OilTemp) also use this subroutine, does anyone have a good idea as to how to jump out and back in seamlessly? Looks to me that the hook on Pull2D would work, then need to jump into MerpMod or similar code based on the value at r13. @Td-d, NSFW, Merp, dschultz: Anyone have good ideas? Code:
ROM:0002B0D6 loc_2B0D6: ; CODE XREF: sub_2B0A2+28j |
1 Attachment(s)
Quote:
Below is a plot of MAF Voltage vs AFR error (Wideband-AFR_Command/AFR_Command) on a Bosch 4.9 PLX wideband in the rear O2 sensor position, daily driven logs. Boost up to 9psi for these logs. Parameter filters: Open Loop operation not in decceleration mode, ECT >80, Throttle >10. Quite close to maxing my MAF here, but blow through in this position seems to work ok for me (I'm always WOT at the top end of the scale, so not much partial throttle boost variation to give the above scenarios). |
Quote:
|
| All times are GMT -4. The time now is 07:33 PM. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
User Alert System provided by
Advanced User Tagging v3.3.0 (Lite) -
vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.