Jump to content

HOWTO: Traction Control


Recommended Posts

From the factory the Ford Falcon utilises a fairly aggressive throttle cut traction control. This is great for when your grandparents are driving in the rain with standard power. With 300rwkw+ this becomes quite useless and most people turn it off as it allows lots of wheel spin, then kicks in shutting the throttle completely which doesn't make for a predictable or fast car.

What is not commonly known is the standard traction control system isn't just a throttle cut, it uses enleanment (or enrichment if you modify it), spark retard and throttle cut.

For a performance application we can set up the standard system to simply utilise an aggressive spark retard only. This is very fast acting meaning traction loss is caught quickly, and with the throttle remaining 100% open, you do not lose boost. When coupled with boost by gear and flatshifting, this can mean putting 400rwkw to the ground with street tyres and 100% throttle is possible. It is an absolute must for a fast car.

To enable an aggressive spark retard only style traction control system, we will use a lot of the tables discussed in the launch control thread which can be found here. https://forum.pcmtec.com/index.php?/topic/104-howto-bf-manual-launch-control-flat-shifting-and-torque-requesters explained/

There are two guides here, a detail one which describes what each table does and why you modify it. At the end of the thread there is a monkey procedure if you just want to get it happening asap.

First we must disable the throttle cut on traction control. We do this by modifying auF0265 and setting "traction control" to 2000. This means the PCM cannot request less than 2000 ft*lb of torque during a traction control event. Eg it is disabled.

image.png.6b5b332103c8e82429db3a3f10a21900.png

Secondly we completely disable the ETC cut on traction control by setting the RPM enable setpoint ( auF0264 ) to 10,000 rpm. Technically either of these two settings would do, but to make it clear we disable both.

image.png.de802324ea1a99b3c7d839e4ff667e2f.png

auF0410 ETC Traction Control - Set this to disabled.

On FGs there is another function auF11982 "Min torque ratio that can be achieve via spark retard to prevent backfires". Set all the torque ratios above 100°F to 0. Otherwise spark retard will be clipped at 0.3 or higher.

image.png.5cccc6c82ecaedeeed2fe9dbaceff672.png

Next there are two options, run enleanment during spark retard, or run commanded lambda. From the factory the vehicle will command 1.05 lambda. If you wish you can change this to cause an enrichment instead (safer) by setting auF1479 to something very rich like 0.5

This will mean the vehicle runs 0.5 lambda during a traction control event further reducing power.

image.png.b83760ed2bf0bf08644c5275c6985794.png

Or we can disable enleanment/enrichment during traction control entirely by modifying auF0261 and changing the traction control row to 0. This means enleanment/enrichment cannot be used during traction control. In this scenario the vehicle will run the commanded lambda instead.

image.png.8b4bf564d20b65e4ecb527be8c53fa62.png

Finally we set the minimum requested torque ratio for spark control auF0262. This controls how aggressive the spark retard will be. Setting it to 0 means the PCM can request 0 ft*lb of torque during a traction control event. This means the PCM will use the maximum spark retard possible which will most likely hit the factory spark minimum clip of -15 degrees.

Setting it this low can be too aggressive , personally in a manual vehicle I found a setting of 0.25 to be perfect as it let the vehicle maintain a very small amount of wheel spin.

image.png.105a792cbac3ca6562fefdaf0b2eaf19.png

Next we can modify the spark retard transfer function auF2233 (BF only). By setting the very minimum settings to -70 degrees, this means the PCM will very quickly hit the minimum clip. This will affect how fast the PCM reacts to the traction control event, think of it like adjusting the proportional gain. NOTE this table is used for ALL torque based spark retard requestors. If you have an automatic vehicle and you set anything above 0.5 (the default minimum torque ratio during a gearshift) to a lower number you would also affect the minimum spark commanded during a gear shift, this could make your shifts laggy and may be completely unnecessary, for this reason it is only recommended to adjust the 0 and 0.25 cells.

image.png.69158f87c1aabdb556d307491ad8b1c9.png

Finally auF16586 "Spark Min Clip" can be adjusted below the factory setting of -15 degrees. Note that going as low as -25 will induce backfires and high EGTs, only do this if you are sure your vehicle can handle the high exhaust temperatures. Sitting at -25 degrees timing for an extended period of time can burn valves very quickly and also destroy catalytic converters.

image.png.eaad9e8df6c946539ce52a3b66956169.png

 

Monkey guide:

Set auF0265 traction control row to 2000

Set auF0264 traction control row to 10000

Set auF1479 to 0.8 lambda (for safety)

Set auF0262 traction control row to 0 to 0.25 depending on how aggressive you want it. 0 is more aggressive.

Set auF11982 (FG Only) to 0 for all temperatures above 100°F

 

FG UPDATE

The FG uses a much more complicated 3D model instead of auF2233. In the FG the spark delta commanded is calculated using the following equation which is derived from what I imagine is an auto generated mathematical model:

Torque_ratio_commanded = 0.8 (eg we are asking for a 20% reduction in torque via spark retard)

K = auF1256(rpm,load)

K = -0.00032  (4500 rpm and 1.7 load in HAER1UB)
Torque_ratio_commanded = 0.8;
Spark_Delta = -Math.Sqrt(-(4 * K * (1 - Torque_ratio_commanded))) / (2 * K);

Spark_Delta = 25 degrees

Knowing this you can see that if you want more torque reduction, you need to reduce K

Eg a value of K = - 0.00016 would result in 35 degrees of spark retard. A value of K = -0.00064  = 17 degrees of spark retard.

So if we wanted to achieve the same outcome in an FG we would multiply the spark retard table on full load by say -0.5

Here is the original auF1256 table in an FG

image.png.b3fb7ab2ec27b76308f6166190ce984a.png

Here is the new table with approximately 25% more spark retard (will request approximately -35 degrees of spark retard instead of -25 degrees)

image.png.9ab460fcb35d6bc68bce3f0844d9cfad.png

  • Like 6
Link to comment
Share on other sites

1 hour ago, Roland@pcmtec said:

On FGs there is another function auF11982 "Min torque ratio that can be achieve via spark retard to prevent backfires". Set all the torque ratios above 100°F to 0. Otherwise spark retard will be clipped at 0.3 or higher.

image.png.5cccc6c82ecaedeeed2fe9dbaceff672.png

 

What about the value at 100F is it 0.8 or zero? Thanks

Link to comment
Share on other sites

Someone PMd a question which I'm posting the reply to here as it gives a good example.

Quote

Hi Roland,

Been following your how to do topics, great read. Very quickly, trying to get my head around the values in both auf0262 and auf0261. Can you explain the torque ratio values i.e. a setting of 0 compared to a setting of 1.

5 minutes ago, Roland@pcmtec said:

auf0262 is the spark torque ratio lower limit. It means the PCM cannot command less than x% torque reduction via spark retard.

Eg if you have 0.8 in the traction control column and the ABS module requests 200 ft * lb of torque to control traction and the engine is making 400 ft * lb of torque the commanded torque reduction ratio will be  200 / 400 = 0.5

as 0.8 is higher than 0.5, the PCM creates a lower limit at 0.8 and requests a reduction of 20% torque via spark retard. It then looks up the torque to spark delta table. In this table 20% reductiuon is approximately a spark retard of -20 degrees.

So the PCM will subtract 20 degrees off the currently commanded spark value to reduce torque. Knowing this a value of 1.0 would cause no spark retard to occur and instead torque reduction would be done via other sources (fuel injector cut, ETC shut or enleanment). A value of 0.0 would allow -70 degrees spark retard to occur.

image.png.e004be5d7bc7fc1d5effd2361fa0f8bb.png

auF0261 is the same as auf0262 except for all other non spark retard related torque reductions. Eg enleanment, throttle shut and injector cut out.

The auf0262 description is sort of backwards. A higher value means more torque reduction (but less spark retard specifically) as it results in "other methods" taking over, these can shut the throttle causing 0 torque. Spark retard can only make small reductions in torque, eg maybe 20-50% maximum before you hit the spark min clip.

 

Link to comment
Share on other sites

Yes not all the parameters are available in professional as some of these are listed as "development parameters" which we did not previously know what they did. You can however get the same results by just increasing the amount of spark retard at approximately 0.2 and above torque ratio.

Link to comment
Share on other sites

25 minutes ago, Gonads said:

Pardon the noob, but my FG Mk1 has the “spark min clip” identified as auF16586. Factory setting is -11. Any big issues with setting this to -20? Everything is factory FG Mk1 GS.

 

On 3/9/2019 at 5:32 PM, Roland@pcmtec said:

Note that going as low as -25 will induce backfires and high EGTs, only do this if you are sure your vehicle can handle the high exhaust temperatures. Sitting at -25 degrees timing for an extended period of time can burn valves very quickly and also destroy catalytic converters.

 

Link to comment
Share on other sites

2 hours ago, Roland@pcmtec said:

I'm not sure what causes Ford to change the factory settings there. Maybe different exhaust and turbo mean different temperature limits.

Regarding auF2233 Are you running the pro version of the software? Which strategy or catch code is your vehicle?

Mine is FGX G6E turbo and I can not find auF2233 in my strategy!

Link to comment
Share on other sites

4 hours ago, Roland@pcmtec said:

I'm not sure what causes Ford to change the factory settings there. Maybe different exhaust and turbo mean different temperature limits.

Regarding auF2233 Are you running the pro version of the software? Which strategy or catch code is your vehicle?

Hi Roland. I’m running pro version and the car is Mk1 GS Miami catch code HAFFAE3.

Link to comment
Share on other sites

2 hours ago, Loki said:

Mine is FGX G6E turbo and I can not find auF2233 in my strategy!

Ok so the BF (what this guide was originally written for and tested on) has a simple auF2233 table which is a lookup of torque reduction ratio and spark delta to command.

The FG uses a much more complicated 3D model. In the FG the spark delta commanded is calculated using the following equation which is derived from what I imagine is an auto generated mathematical model:

Torque_ratio_commanded = 0.8 (eg we are asking for a 20% reduction in torque via spark retard)

K = auF1256(rpm,load)

K = -0.00032  (4500 rpm and 1.7 load in HAER1UB)
Torque_ratio_commanded = 0.8;
Spark_Delta = -Math.Sqrt(-(4 * K * (1 - Torque_ratio_commanded))) / (2 * K);

Spark_Delta = 25 degrees

Knowing this you can see that if you want more torque reduction, you need to reduce K

Eg a value of K = - 0.00016 would result in 35 degrees of spark retard. A value of K = -0.00064  = 17 degrees of spark retard.

So if we wanted to achieve the same outcome in an FG we would multiply the spark retard table on full load by say -0.5

Here is the original auF1256 table in an FG

image.png.b3fb7ab2ec27b76308f6166190ce984a.png

Here is the new table with approximately 25% more spark retard

image.png.defede9aa2d01757c2858c397eabf664.png

This actually gives us a lot more control over the spark retard for traction control in some regards, if you wanted aggressive traction control to only occur at certain loads and rev ranges, you can now achieve this. In the BF this would not be possible.

Remember this is used for all torque reduction events, so this will affect your transmission shifts etc. The BF version would not affect your transmission shifts as you could only modify the low torque ratio settings.

Link to comment
Share on other sites

On 3/12/2019 at 8:08 AM, Roland@pcmtec said:

Yes not all the parameters are available in professional as some of these are listed as "development parameters" which we did not previously know what they did. You can however get the same results by just increasing the amount of spark retard at approximately 0.2 and above torque ratio.

what table or scalar are you referring to in regards to this?

Link to comment
Share on other sites

  • 1 month later...
On 3/14/2019 at 12:50 PM, Roland@pcmtec said:

Ok so the BF (what this guide was originally written for and tested on) has a simple auF2233 table which is a lookup of torque reduction ratio and spark delta to command.

The FG uses a much more complicated 3D model. In the FG the spark delta commanded is calculated using the following equation which is derived from what I imagine is an auto generated mathematical model:

Torque_ratio_commanded = 0.8 (eg we are asking for a 20% reduction in torque via spark retard)

K = auF1256(rpm,load)

K = -0.00032  (4500 rpm and 1.7 load in HAER1UB)
Torque_ratio_commanded = 0.8;
Spark_Delta = -Math.Sqrt(-(4 * K * (1 - Torque_ratio_commanded))) / (2 * K);

Spark_Delta = 25 degrees

Knowing this you can see that if you want more torque reduction, you need to reduce K

Eg a value of K = - 0.00016 would result in 35 degrees of spark retard. A value of K = -0.00064  = 17 degrees of spark retard.

So if we wanted to achieve the same outcome in an FG we would multiply the spark retard table on full load by say -0.5

Here is the original auF1256 table in an FG

image.png.b3fb7ab2ec27b76308f6166190ce984a.png

Here is the new table with approximately 25% more spark retard

image.png.defede9aa2d01757c2858c397eabf664.png

This actually gives us a lot more control over the spark retard for traction control in some regards, if you wanted aggressive traction control to only occur at certain loads and rev ranges, you can now achieve this. In the BF this would not be possible.

Remember this is used for all torque reduction events, so this will affect your transmission shifts etc. The BF version would not affect your transmission shifts as you could only modify the low torque ratio settings.

Hi Roland, my tables only go up to .95 load. strategy HAFDDB6.

How do I go about torque reduction under full load?

Link to comment
Share on other sites

37 minutes ago, Zaz3ry said:

Hi Roland, my tables only go up to .95 load. strategy HAFDDB6.

How do I go about torque reduction under full load?

You must have an NA vehicle then, or someone has enabled turbo logic on an NA calibration. The table will simple peg at 0.95 so you can still modify it, or you could use the reinterpolate wizard as discussed here to change the axis range.

 

Link to comment
Share on other sites

  • 3 weeks later...

I've been told that auF1716 (engine capacity) setting this to 80 will also disable traction control as it puts it into an error mode. That scalar is only sent via canbus and not used internally in the PCM. Make sure that ABS still works after doing this by testing the brakes somewhere safe like a gravel carpark.

Try that if the suggestions by Darryl do not work as the Mk2 and Mk1 FG are quite different in terms of how they communicate via canbus.

Link to comment
Share on other sites

  • 6 months later...
On 5/16/2019 at 4:45 PM, Darryl@pcmtec said:

Further testing required but to disable traction control in a MK 2 FG:

Set auF0410 to Disable  ETC Traction Contol :

image.thumb.png.fca199fd94ab11d50133090cc01505e4.png

And set auF2495 to 0:

image.thumb.png.b90fa36bbe6b3b624eb4f50431c8d1fc.png

I will have to test this out and report back. 

I suppose no warning lights will register?

Link to comment
Share on other sites

  • 1 year later...
On 3/12/2019 at 8:08 AM, Roland@pcmtec said:

Yes not all the parameters are available in professional as some of these are listed as "development parameters" which we did not previously know what they did. You can however get the same results by just increasing the amount of spark retard at approximately 0.2 and above torque ratio.

 

On 3/17/2019 at 8:53 PM, richardpalinkas said:

what table or scalar are you referring to in regards to this?

Hey Roland,

Which table needs adjustment to get the same result?

are you refering to auF1256?

fg turbo mk1 zf

Cheers Rob

Link to comment
Share on other sites

On 4/3/2022 at 6:08 PM, jakka351 said:

Do you have any insight on auf0263, and how it relates (on fg1) to the latter parts of this tutorial, seems to be an equivalent of the ba auf2233, spark retard for torque. Does this tie in with auf1256 table?

auf1256/auF1340 basically replaces auF0263 and auF2233 in the later models, but the other tables are still used in idle feedback and for other calculations so they both need to be calibrated.

What specifically are you trying to achieve?

Link to comment
Share on other sites

I have a been playing with spark hole ghost cam on a 5.4, was just trying to get it stable and repetitive and without any random idle rpm jumps which seemed to be the throttle opening at idle, likely trying to get the idle rpm to settle. It's almost perfect but just that final bit to be refined. 

 

Am also doing mad pop bangz with launch control, and flat foot shifting euro sounds. Saw this parameter and looked likely to do something.

Link to comment
Share on other sites

  • 1 year later...
  • 1 month later...

Sorry to dig up an older thread but I'm having abit of trouble dialing this in on my bf fairlane. I've followed the above guide, started at 0.25 in auF0262 and worked up to 0.42 (if I remember correctly) and unfortunately I'm still having it hit the -15 clip then stay there until I peddle it. I'm reluctant to drop the clip to -25 but I've also realised I've gone past the 0 and 0.25 rows on auF2233. Surely I'm missing something. 

Link to comment
Share on other sites

On 9/6/2023 at 7:28 PM, Andre34 said:

So in auF0262 if I set traction control to 1 or something stupid like 10, and disable enleanment and etc, would I theoretically be disabling traction control without needing to push the button?

One way to find out. 

You need to set ETC traction control to disabled also. 

Unsure if there are any side effects of the torque source being traction control at WOT instead of driver demand. It may pull boost still. 

Link to comment
Share on other sites

19 hours ago, yoda598 said:

Sorry to dig up an older thread but I'm having abit of trouble dialing this in on my bf fairlane. I've followed the above guide, started at 0.25 in auF0262 and worked up to 0.42 (if I remember correctly) and unfortunately I'm still having it hit the -15 clip then stay there until I peddle it. I'm reluctant to drop the clip to -25 but I've also realised I've gone past the 0 and 0.25 rows on auF2233. Surely I'm missing something. 

Can you show a datalog? 

So you are saying it hits min spark clip and does not recover? 

I suspect this is simply because you are still experiencing traction loss. 

Datalog the torque source, rpm, vss, traction control request, final spark, load (nothing else so you get high resolution logging) and see if the -15 deg spark has removed enough torque to stop the wheel spin. You may need -30 and to run super rich (eg at the misfire limit) to actually stop the wheel spin. 

Unfortunately the ABS will likely want to see a wheel slip of 0% to stop the traction reduction request. 

A datalog showing this in high resolution wound be very interesting for everyone to see. Post a screen shot as well as the log do those of us on phones can see. 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...