Forum » Webinar Questions » 216-Introduction to megasquirt

216-Introduction to megasquirt

Webinar Questions

Ask questions about webinar lessons here. To see the Previous Webinars for a complete list of archives tuning webinars. 

Page 1

Hi, i've been watching the webinar and i would like to know more about the ''multiply by MAP'' function that this ECU incorporates,

searching through internet i've found this algorithm that shows how pulse width is calculated for an MS3 ecu:

PW = (MAP/Baro) * (AFR(stoich)/AFR(commanded)) * (VE/100) * req_fuel

So i've read that if you disable Multiply by MAP , is like if you change the term (MAP/Baro) for 1

Also if you disable ''Include AFR'' option, is like if you replace the term (AFR(Stoich)/AFR(commanded)) for 1

I think that if you get these two options enabled you end up with a very flat VE table, that may not be representative of the actual VE of the engine,

and my experience with ''Multiply by MAP'' enabled and ''Include AFR'' disabled was that at idle, if i was reading actual lambda 1.10 and my target was lambda 1.00 if i made a 10% inclement in VE i wasn't still reaching my target of lambda 1.00 (i was still lean Lambda 1.07 or so)

So my question is, in any other tuning platform you use in the practical stand alone tuning coure, are this functions enabled or disabled? are these options only available in megasquirt platform? why are they useful? Do they really affect the shape of the VE table, making it non representative of the reality?

i found it difficult to adjust the VE map especially at low loads, it looked like the engine wasn't responding to VE changes.(When it was disabled the problem was solved)


I'm no expert on the matter but here is my understanding of the following functions:

Enabling the two gives a more representative VE table of the engine than without them enabled. Say you wanted to richen up the 100 kPa row. If you didn't have incorporate AFR on, you would have to richen up the area through the VE table by artificially increasing the VE above the real VE. However, with incorporate AFR on, you enter the true VE of the engine and decrease the values in the 100 kPa row in the AFR target table. What this does is increase the AFR 'correction factor' which results in an increased PW.

I don't know why you had to turn off Multiply MAP. Like Andre said, 99% of cars running speed-density will have this turned on.

Both ECUmaster and Link use the 'incorporate AFR' function although it's called 'advanced lambda' tuning mode on ECUmaster and 'lambda target table overlay' on Link. You can see Andre use it in the Fueling VS Power free lesson while he's doing the ramp runs.

The nice thing about using it is it makes it really easy to change the AFR of a certain area. If you want to lean out the cruise area, you can do that really easily without touching the VE table. This does assume that the VE table has been tuned so that the actual AFR matches the target AFR. And as I said before, your table looks flatter which makes it easier to spot cells that don't follow the trend of the surrounding cells when viewing in 3D.

Thank you KEN for the fast reply,

after reading your coment i can only totally agree with you about the AFR function, i didn't realised that disabling it i can't use the advantages of tuning with the AFR table, and as you say this would end up with a non representative VE table every time i would like to be out of stoichiometric AFR, so again totally agree here, Thanks!

But what was my biggest confusion about the ''Multiply by map'' function, which i think i understand how it works (if the MAP reading is Above the Baro reading it increases the injector PW) So:

if you are at 150Kpa and your baro reading is 100Kpa, it will add extra 50% to PW with the same VE value (so that VE value needs to be 50% lower than with 'Multiply by MAP' function disabled)

otherwise if you are at 30Kpa at idle and your baro reading is again 100Kpa, you end up with a -70% trim to the PW (so that the VE value needs to be 70% more then with 'Multiply by MAP' function disabled)

The problem for me here was that to tune low load areas i had to make really big changes in the VE value in order to match my actual AFR with the one in the AFR target table (in my case stoichiometric) and i think is due to the -70% trim i have explained above

Also in the high load areas (which i didn't try due to not being confident with this setup) i think it will end up being extremely sensitive to VE changes in the table as every little change is magnified applying a 50% increase (for example) over the VE value.

Is there any other ECU apart from megasquirt using the ''Multiply by map''? or is it applied in the background and we can't decide if we want to use it?

Also don't understand why it could be desirable in 99% of cars, and in which 1% of the rest could be desirable to disable it.

Don't really know if i've explained myself well, but thank you in advance!

I didn't know the answer to why multiply MAP is used but I thought about it over the weekend and this is what I came up with:

The reason you multiply by MAP is speed density mode is because the ability to fill the cylinder with air is affected by MAP. If you only have 50 kPa available in the manifold, the cylinder can only fill to 50% of the air mass available compared to if it was WOT and running close to atmospheric pressure. This is a terrible way to explain it but the fact that you're throttling doesn't affect cylinder filling (it does, but only when time is introduced) it affects the pressure available in the manifold to fill the cylinder with.

Say you have an engine that's operating at 95% VE at 100 kPa at a certain RPM. The engine doesn't now operate at 190% VE because it has 200 kPa intake manifold pressure at the same RPM (but that's the figure you'd have to enter into the VE table to get the same resultant fuel if multiply MAP was turned off). The volume of air that the engine ingests hasn't changed, it's still the same as the original case but it is now at a greater pressure (more dense). The mass of air in the cylinder is greater and the subsequent requirement for fuel is accounted for with 'multiply MAP', not the VE table.

I can't think of any engines operating on an speed density tune that would need multiply MAP to be turned off. Maybe an engine which operates at a constant manifold pressure over a range of RPM? Maybe a valvematic/valvetronic engine? I don't know anything about them other than they don't use a throttle plate to control airflow, which I guess means that the intake mani is almost always at atmospheric pressure.

By the way, the fuel equatio in ECUmaster multiplies by MAP as well. I suspect Link does it as well, looking at their fuel equation diagrams, but it doesn't specifically state that they do. I assume it does from the figures entered into the VE table.

I hope my explanation makes sense.

Hi Ken, thanks again for your reply.

this time i think i'm not with you jaja

i don't know if i'll explain it very well what i think, but i'll try.

Every engine cycle the engine moves the same volume for example 1800cc of air independant of the throttle position or the manifold presure, the only difference i see is the presure at what that volume is introduced into the engine, which ofcourse afects the density and finally the total mass of air in the engine, so for me to calculate volumetric eficency for the supposed 1800cc engine i would use the following formula:

VE=actual air mass/air mass contained in 1800cc at athmosferic pressure and 20ºC (normal conditions)

so actual mass could be calculated from PV=nRT , P would be manifold pressure (variable) , V is the engine volume (constant), T intake temperature (Variable), R is the gas constant, and N the number of Air moles (wich you can convert to mass). This last one is what we will be using in the VE formula i've written avobe, so the pressure is actually dialed in the VE.

So yes in the ideal world i expect to see near 200% VE (anywhere in the rpm band) if i run the MAP to 200kpa (i think this is the purspose of supercharging an engine).Equally i don't expect to see real VE of an engine over 50% with the throttle mid open (depending on the throttle body size you could see more or less).

I've been also searching over internet and i've found a reply that has helped me see some benefits to the Multiply by MAP, they say that you get better resolution at the time of tuning low load areas, like idle because the rate of change for the pulse width gets lower in relation the the VE numbers in the VE table, so you can better fine tuning the actual AFR you ar getting in order to match them with the ones in the Target AFR Table.

Also they say that with megasquirt the maximum value you can put in the VE table is 255, and is you disable multiply by MAP in a high boosted car, 300Kpa absolute or more you get a lean condition because you can not go upper 255, while activating multiply by map you can run more lower numbers in the same situation.

It also sems that the engine gets easier to tune because you get the MAP widening the pulse width automatically at the time you are increasing load and the reverse, so with a completly flat table you aren't that far from optimum tune than in the case of flat table with Multiply by map disabled

This are the benefits i've read, at the expense of going with a non real VE table (if that really matter to some point), because as i've said i think an engine boosted to 200Kpa should be near 200% real VE anywhere in the RPM band.

Otherwise i've been looking around some worked examples in the HPA courses and for the numbers in the VE table it seams that those ECUs get the multiply by map activated, As you've said in your coments. we could try to reverse engineer a LOG file to be sure if they aply Multiply by MAP or not, but all points towards that they are using it for the benefits i've mentioned avobe.

Tell me what do you think about, i'm by no means any kind of expert, so i can be wrong

"VE=actual air mass/air mass contained in 1800cc at athmosferic pressure"

This is where you have missed the mark.

VE is volumetric efficiency and has nothing to do with air mass. The 1800cc engine will only ever pull in 450cc of air (ignoring combustion chamber size and dynamic compression) into the cylinder/combustion chamber, however, the density of the air might not be at atmospheric as you stated earlier. While operating at 200 kPa at WOT, it has ingested 450cc worth of air at 200 kPa (assume 100% VE). We enter 100 into the VE table for the 200 kPa row and whatever RPM, if we have multiply MAP enabled.

The way you're thinking about it is, at the same operating conditions as above, the engine has ingested 900cc of air at atmospheric conditions. In this case, you would have to enter 200% in the 200 kPa row of the VE table as you are ignoring the fact that it's under pressure (multiply MAP turned off).

In both cases, the air mass entering the engine per combustion cycle is the same, but is expressed differently. The top scenario is the speed-density table used in almost all scenarios.

The benefit of having a 'real' VE table is that a lot of conventional engines will behave similarly. You can throw a base map at any engine, adjust the redline to suit and it'll probably be within 15% of the final tuned figure. Depending on the cams, your peak torque area will need to move left or right but I'd expect a base tune to be on the richer side anyway and it'll be a case of leaning out the right areas until it matches the target AFR table.

I'm certainly no expert - just a user. On the tunerstudio software it gives tips when you move the mouse over an option. For this one it says 99% of installs should multiply by map (which you'd expect). I assume from that that they only let you disable this in case you have an unusual situation which warrants it (I can't think of one).

The multiply by map feature is a background calculation that takes manifold pressure into account when calculating the final pulse width to deliver. This works on the basis that for all other things being equal, if we double the manifold pressure we need to double the fuel in order to maintain a fixed air fuel ratio. Enabling this feature does two things. First it means that we aren't adjusting the fuel table to account for MAP changes so we are really tracking the actual VE changes themselves (since it's highly unlikely that the engine's VE will remain fixed when we double the MAP). Secondly because we don't need to account for MAP changes in our fuel numbers, the table will end up flatter which can provide better resolution to our tuning.

@guillem if you're making percentage changes to correct an AFR error and you're finding that the fuelling doesn't track as expected it's likely that your dead time or short pulse width data isn't correct. This is normally most noticeable at idle where the actual pulse width is smallest.