View Single Post
      07-15-2009, 07:11 PM   #1
shiv@vishnu
Tuner
United_States
702
Rep
17,616
Posts

 
Drives: X1, 335i
Join Date: Sep 2006
Location: SF Bay, CA

iTrader: (0)

Lightbulb Vishnu Technical: Ignition timing control facts

In this post, I'm going to explain how the factory Timing/knock control system works. It's no different, in concept, to any modern engine control system (Mitsu, Porsche, Subaru, etc,.) Most of the differences between the different ECU types has to do with response times, adaption logic, etc,. All of which is beyond the scope of this post.

Also note that these User Adjustable settings (Ign Correction %) are not suggested at this point. They are just for the purpose of this technical discussion. Documentation will be released shortly explaining how to achieve the desired results safely. This post isn't about custom tuning. Its sole purpose is to put to rest some mistruths about ignition timing control through the process of CAS offsetting.

The test vehicle/conditions:
2007 335i
50k miles
Stg 3 (FMIC, catless exhaust, catless dps and twin intakes)
PROcede Rev.II CANbus running Stg 3 map
91oct fuel
85-90F ambient tests

How to read a PROcede datalog (Important):
There are 5 parameters shown in the datalogs
From top to bottom:
RPM: Engine speed
Boost: As measured by the factory TMAP sensor in the upper IC tube
Ignition Correction: This is induced by the PROcede through CAS signal offsetting
CAN DME Ignition Advance: What the factory DME believes the ignition timing to be. This can be read by any OBD logger as well as the BavTech software.
CAN Actual Ignition Advance: The actual ignition timing. I.e., what you would see if you read timing with a timing light tool. This is essentially DME Ignition Advance+Ignition Correction

Note:
All the datalogs were recorded after several (4-5) adaptation runs. All datalogs were of a 3rd gear 4000 to 7000rpm full throttle run.

Test 1: Stock Tune!
Well, actually it's at the minimum user torque setting (10%) since CANbus functionality is disabled in valet mode.

Comments:
Note that boost is at a stock-like 6-10psi. There is no Ignition Correction. Hence, DME timing equals Actual Timing. Notice how the timing curve is nice and linear. Reaching 9.5 degrees by 6000rpm and 13.5 deg by 7000rpm. This represents the maximum timing values the factory DME will target for this IAT, oil temp, water temp, etc. conditions. In other words, even on 100oct race fuel, the logged timing values will not increase.

Test 2: Standard Stg 3 map at 100% Ignition Correction (default value)


Comments:
Now the PROcede is active and boost is at 14-16psi depending on RPM. As one would expect, the PROcede responds by actively inducing 2-3.5 degrees of ignition retard (negative correction). Now Actual Timing is 2-3.5 degrees lower than it was in Test 1 (stock tune). However, DME Timing is still the same (9.5 degrees by 6000rpm, 13.5 deg by 7000rpm) and still its its maximum limit. And as far as the DME can see, the engine is running normally with the expected amount of ignition advance.

Test 3: Standard Stg 3 map at 50% Ignition Correction setting

Comments:
Just as above but with 1/2 of the PROcede's active Ignition Correction (1-1.8 degrees of retard instead of 2-3.5 degrees). Because the PROcede is inducing less proactive timing retard, the engine begins to knock. As a result, the DME intervenes reactively and retards timing (reduced the timing target). Now, the DME ignition advance is slightly lower than it was in Test 2.
Compared to Test 2 (which had full ignition retard), the engine in Test 3 makes more power (runs more Actual timing). However, since DME timing has reached is maximum limit, the DME will regularly attempt to raise timing back to its normal target. All things being equal, it is often the case that it will fail this test and find itself unable to run the desired timing curve. During these failures, minor knock is induced (needless to say). In this case, the maximum timing target is only ~1deg greater than the Actual Timing (allowable timing) so the amount of potential over-advance (and knock severity) is relatively minimal.

Test 4: Standard Stg 3 map at 200% Ignition Correction (twice default value)


Comments:
In this test, we asked the PROcede to induce excessive ignition retard. More than is necessary to guard against knock. In this case, the PROcede is inducing 3-7 degrees of ignition retard! As you can imagine, knock is no where in sight. As a result, the DME is happy to run at the maximum advance limit (as with Test 2). However, notice that the Actual timing is a few degrees lower than it was in the previous examples due to the extra PROcede-induced timing retard. And since the DME has reached its maximum advance limit, the Actual Ignition Advance will go no higher over time. This is a long term approach to preventing knock. That is, the DME will not (and cannot) "learn" around the PROcede's correction. This is myth. All the DME knows is that it is able to run what it believes to be desired/maximum timing curve. And it is happy.

What about Power??
Compared to the Test 2 and 3, the tune in Test 4 making the lowest power since Actual Timing is the lowest overall. Next stronger tune is Test 3 with a higher Actual Timing curve. And stronger than that is Test 1 with slightly more Actual Timing (albeit with more risk of knock and inconsistency due to the Maximum Timing target not being reached by the DME).

And now... just For Fun...
Test 5: Standard Stg 3 map at 50% Ignition Correction (twice default value) but with a big negative timing correction spike at 6500rpm


Comments:
This tune in this test is very similar to what was run in Test 3. Except I went into the actually timing map and induced a short-term 7 deg ignition retard (negative correction) at 6500rpm. The idea behind this test is to see if the DME tries to "learn" or "adapt" to this quick but big timing correction. Looking at the Ignition Correction log, you can see the timing correction behaving just like it did in Test 3. But as soon as engine speed approaches 6500rpm, the PROcede induces several more degrees of ignition retard. But by 6700rpm, it's back to normal levels.
Not surprisingly (based upon what we learned in the previous tests), the DME doesn't even notice it. As such, it cannot compensate for it and what we are left with is a deep but narrow hole in the ignition timing curve, centered at 6500rpm (see Actual Ignition Timing). As far as the DME is concerned (see DME Ign Timing curve), everything is just as it were in Test 3.

And lastly... what about No Ignition Control?
Test 6a: Standard Stg 3 map at 0% Ignition Correction setting

Comments:
In this case, the PROcede is behaving like some other tunes. Basically raising boost, adjusting fuel targets (not shown in log) and letting the DME reactively adjust for timing/knock. Ignition Correction is zero which explains why DME Ignition Adv and Actual Ign Advance are identical. In this case, the DME is not able to reach its desired ignition advance targets due to minor knock activity. It is 1-3 degrees away from its target at higher engine speeds (6000-6700rpm). This means that the DME will routinely attempt to bump timing upwards over the course of driving. All things equal, it will fail these tests, drop timing back down, and continue the cycle.

But since there is absolutely no active ignition correction, there are times when the engine can be 3-4 degrees over-advanced before the knock control system intervenes. When this happens, a large timing correction can occur which results in discernible run-to-run inconsistency. For instance, after this log was conducted, I conducted another one with no changes to the tune/settings/test conditions:

Test 6B: Same as above


In this case, the DME is many degrees off of its Ign Adv target. And, as a result, the DME will induce a situation where the actual ign advance curve "floats" within a 3-4 degree window. When conditions are exceptionally good, the Actual Timing will be high and power will be strong. When conditions aren't so good, there is a much greater chance that power will be rather soft.

So where do all these tunes stack up in terms of power and consistency??

The Test which made the most power is Test 6a (Standard Stg 3 map with 0% Ing Correction). You can see this because Actual Timing is the greatest. The downside of this No Ignition Correction tune is that it is also the least consistent (as seen in Test 6B) as it operates on both sides of the knock threshold. And by a rather large margin, at that. Which brings long-term safety into question due to the fact that it responds to knock reactively.

Nearly as strong, but far more consistent/stable is Test 3 (Stage 3 with 50% Correction). Actual Ign Advance is virtually identical to Test 6a up to 6700rpm. But since DME Ign Advance is only ~1 degree away from the DME's Maximum/Ideal Ing Adv target, this tune doesn't over-step the knock threshold too often or too badly. While it may not be as ideal if long term durability/safety is the first and only priority, it is a far better compromise than the "hit or miss" approach with Test 6a and 6b.

Slightly less strong is Test 2 (Stg 3 map with the default value of 100% Ign Correction). While Actual Ignition advance is slightly lower than what we see in Test 3, DME Ign Advance is at its Max/Ideal Ign Adv target. This suggests that this tune is even less likely to over-step the knock threshold. Which means that this tune will be very consistent and very safe. It sacrifices only a bit of power for extra consistency and long-term safety.

Less strong, obviously, is Test 4 (Stg 3 with 200% Ign Correction) which is over-retarded/under-advanced. While the DME Ign Adv is maxed out (which means great stability/consistency), the Actual Ign Adv is low which means low power. Consistently low power. Not a great tradeoff.

Test 5 isn't worth talking about as it was just a test to prove that the PROcede's timing control not only adjusts the level of the Actual Ign Adv curve, but also the shape.

And Test 1 is the stock tune we all know and love. That is, until we got the taste for more power. And now, it just wont do

Best Regards,
Shiv

Last edited by shiv@vishnu; 07-15-2009 at 07:44 PM.