Trying to device a formula for "suggested" timing
Thread Starter
Evolved Member
iTrader: (38)
Joined: Nov 2006
Posts: 1,745
Likes: 10
From: New Hampshire, USA
Trying to devise a formula for "suggested" timing
For the past 2 days, I've been trying to come up with a simple formula for calculating ideal ignition timing based on RPM, Load, and AKI. AKI being the anti-knock index of your fuel, so 91, 93, etc. using the R+M/2 method.
What I've come up with is:
Suggested Timing = (RPM/227.27 + 5) - (Load/(AKI-80))
This is based on calculating some simple linear equations from a stock Evo IX timing map. So, I took this equation and mapped it against a typical RPM/Load map to see what it would draw (I added some threshold limits to keep the extreme low/high RPM and Load values within normal parameters).

So, it looks somewhat like the stock timing map, although there's a lot less timing in much of the cruise and low load portions, and some advance in the high load, high RPM portions... but all in all, pretty good I think. I wouldn't use the entire map as-is, because gas mileage would suffer, but essentially the > 100 load areas are very acceptable.
To download the Excel spreadsheet, click here. You can paste in your RPM/Load scales, as well as adjust the AKI at the bottom and the cell values will all change accordingly.
So, I put in an AKI of 95.7 (assuming 10% of my fuel is 120 octane methanol and 90% is 93 octane) and pasted the high load map into my ROM, flashed, and went for a drive... low and behold it actually behaves quite well! I was amazed at how good of a tune it was, considering it all came from a simple equation. With a few minor adjustments (1-2 degrees of retard in the upper RPM band), it was knock free and very strong.
I also compared my previous timing from an old data log to the timing generated with this formula, it was very similar:

The other benefit, besides being able to give you a starting point for your tune, is being able to actually log a "suggested" timing to see what the difference is, and perhaps give you some tuning advice.
You could add an entry into EvoScan to log: Eval="(RPM/227.27 + 5) - (Load/(AKI-80))" and replace AKI with whatever octane fuel you use.
Some suggested AKI values:
Meth + 91 octane: 93.9
Meth + 93 octane: 95.7
E85: 105

What I've come up with is:
Suggested Timing = (RPM/227.27 + 5) - (Load/(AKI-80))
This is based on calculating some simple linear equations from a stock Evo IX timing map. So, I took this equation and mapped it against a typical RPM/Load map to see what it would draw (I added some threshold limits to keep the extreme low/high RPM and Load values within normal parameters).

So, it looks somewhat like the stock timing map, although there's a lot less timing in much of the cruise and low load portions, and some advance in the high load, high RPM portions... but all in all, pretty good I think. I wouldn't use the entire map as-is, because gas mileage would suffer, but essentially the > 100 load areas are very acceptable.
To download the Excel spreadsheet, click here. You can paste in your RPM/Load scales, as well as adjust the AKI at the bottom and the cell values will all change accordingly.
So, I put in an AKI of 95.7 (assuming 10% of my fuel is 120 octane methanol and 90% is 93 octane) and pasted the high load map into my ROM, flashed, and went for a drive... low and behold it actually behaves quite well! I was amazed at how good of a tune it was, considering it all came from a simple equation. With a few minor adjustments (1-2 degrees of retard in the upper RPM band), it was knock free and very strong.
I also compared my previous timing from an old data log to the timing generated with this formula, it was very similar:

The other benefit, besides being able to give you a starting point for your tune, is being able to actually log a "suggested" timing to see what the difference is, and perhaps give you some tuning advice.
You could add an entry into EvoScan to log: Eval="(RPM/227.27 + 5) - (Load/(AKI-80))" and replace AKI with whatever octane fuel you use.
Some suggested AKI values:
Meth + 91 octane: 93.9
Meth + 93 octane: 95.7
E85: 105

Last edited by recompile; Mar 22, 2009 at 01:30 PM.
It's an interesting idea, but timing numbers vary based on turbo, cams and other items that modify VE, so it might not work well for cars with setups different to yours.
How did you actually come up with the equation?
How did you actually come up with the equation?
Thread Starter
Evolved Member
iTrader: (38)
Joined: Nov 2006
Posts: 1,745
Likes: 10
From: New Hampshire, USA
I took the stock Evo IX timing map and examined the progression of timing down through the RPM band on one isolated load column, and applied a linear trendline to that progression. That basically says "As RPM goes up, increase timing by this much"
Then, I examined the regression of timing across through the Load band on one isolated RPM row, and applied another linear trendline to that regression. That basically says "As Load goes up, decrease timing by this much"
Then I combined these two linear equations and added a variable for compensating for AKI, and it seemed to come together nicely.
Using logarithmic trends would have generated slightly more accurate values, but I like the simplicity of linear, plus I'm not sure EvoScan does ln or not.
Then, I examined the regression of timing across through the Load band on one isolated RPM row, and applied another linear trendline to that regression. That basically says "As Load goes up, decrease timing by this much"
Then I combined these two linear equations and added a variable for compensating for AKI, and it seemed to come together nicely.
Using logarithmic trends would have generated slightly more accurate values, but I like the simplicity of linear, plus I'm not sure EvoScan does ln or not.
Thread Starter
Evolved Member
iTrader: (38)
Joined: Nov 2006
Posts: 1,745
Likes: 10
From: New Hampshire, USA
Made a quick PHP version here: http://rallyevo.com:8080/suggested_timing.php
Looks good.
But I don't think the formula will be as simple as you think, other things like engine temp/air temp etc will come into play.
How did you automatically colour the cells in Excel depending on the value?
But I don't think the formula will be as simple as you think, other things like engine temp/air temp etc will come into play.
How did you automatically colour the cells in Excel depending on the value?
Thread Starter
Evolved Member
iTrader: (38)
Joined: Nov 2006
Posts: 1,745
Likes: 10
From: New Hampshire, USA
It's a preset in Excel 2007 under Conditional Formatting (see http://www.homeandlearn.co.uk/excel2...l2007s6p2.html for details).
And yes, I understand there's a lot more to timing than just RPM, Load, and AKI... but I think it's nice to be able to use simple equations in ways that can help us. Something nice and neat like this isn't an end-all solution to tuning, but it can be a good guide or reference point, especially for newbies.
And yes, I understand there's a lot more to timing than just RPM, Load, and AKI... but I think it's nice to be able to use simple equations in ways that can help us. Something nice and neat like this isn't an end-all solution to tuning, but it can be a good guide or reference point, especially for newbies.
Trending Topics
Just in case anyone else was trying to pull this into Google Docs, the formula I ended up settling on for the upper-left corner cell (it auto-populates the rest of the grid, as long as the Load and RPM named ranges are defined) was:
The MAX(-10,...) had to be pulled out, because Google's spreadsheet formulas apparently still need work. It's still pretty obvious, even with ridiculously low negative timing.
Code:
=ARRAYFORMULA((IF(RPM>7000, 7000, RPM)/227.27+5)-(IF(Load<50,0,Load)/(AKI-80)))
Something that has always worked well for me is using a similar type of math but based on burn speed of the fuel. I figure out the amount of timing advance needed at a given RPM to get a certain burn time. The amount of burn time needed seems to be highly dependent on engine load and fuel. As load goes up, required burn time drops. The faster the fuel burns, the less burn time you need.
Much like yours, it's mostly just based on empirical data and trying to make an equation fit the data. In all reality, it's probably about the same thing you have, but the burn time you have just factored into your constant. Although, burn time has very little to do with octane and is heavily dependent on chemical composition of the fuel used.
As you have seen though, low loads at low RPM cause a lot of problems with these type of general equations. I only use it for high load tuning.
Much like yours, it's mostly just based on empirical data and trying to make an equation fit the data. In all reality, it's probably about the same thing you have, but the burn time you have just factored into your constant. Although, burn time has very little to do with octane and is heavily dependent on chemical composition of the fuel used.
As you have seen though, low loads at low RPM cause a lot of problems with these type of general equations. I only use it for high load tuning.





Good stuff!



