<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>traction control - BlownByTwins</title>
	<atom:link href="https://blownbytwins.co.uk/tag/traction-control/feed/" rel="self" type="application/rss+xml" />
	<link>https://blownbytwins.co.uk</link>
	<description>Just a tale of one man and his cars...</description>
	<lastBuildDate>Wed, 30 Sep 2026 20:53:28 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://blownbytwins.co.uk/wp-content/uploads/2023/05/cropped-wp20128381-1-32x32.jpg</url>
	<title>traction control - BlownByTwins</title>
	<link>https://blownbytwins.co.uk</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>What the Logs Changed in My Supra Traction Control</title>
		<link>https://blownbytwins.co.uk/cars/mk4-supra/what-the-logs-changed-in-my-supra-traction-control/</link>
		
		<dc:creator><![CDATA[john]]></dc:creator>
		<pubDate>Mon, 21 Sep 2026 10:25:00 +0000</pubDate>
				<category><![CDATA[Engine Management]]></category>
		<category><![CDATA[Mk4 Supra]]></category>
		<category><![CDATA[Tuning]]></category>
		<category><![CDATA[emtron]]></category>
		<category><![CDATA[supra]]></category>
		<category><![CDATA[traction control]]></category>
		<guid isPermaLink="false">https://blownbytwins.co.uk/?p=1162</guid>

					<description><![CDATA[<p>The previous version of the traction control worked. That was the problem. It worked well enough to make a 1,114 whp Supra feel calm, so the remaining faults were hidden&#8230;</p>
<p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/what-the-logs-changed-in-my-supra-traction-control/">What the Logs Changed in My Supra Traction Control</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
<p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/what-the-logs-changed-in-my-supra-traction-control/">What the Logs Changed in My Supra Traction Control</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">The previous version of the traction control worked. That was the problem. It worked well enough to make a 1,114 whp Supra feel calm, so the remaining faults were hidden inside a system that never looked obviously broken.</p>



<p class="wp-block-paragraph">Then I logged it properly. The logs showed that the tyre produced its best acceleration at less slip than some of my more permissive modes allowed, the speed offsets could drive the final target below zero, and the integral term was storing positive torque while the car was below target. When wheelspin arrived, part of the PID was briefly helping it.</p>



<p class="wp-block-paragraph">This is the latest iteration: what changed, what the evidence actually supports, and what still needs a warm, dry road before I call it finished.</p>



<p class="wp-block-paragraph"><strong>The starting point</strong></p>



<p class="wp-block-paragraph">Status: Verified &#8211; Rear tyres are 295/30/19 Continental SportContact 7s.</p>



<p class="wp-block-paragraph">The strategy has always had two halves. Feedforward predicts the engine torque the tyre should accept. Closed loop PID then corrects whatever the prediction could not know about: temperature, damp patches, surface changes, load transfer and bumps.</p>



<p class="wp-block-paragraph">The torque model is normalised to third gear. The traction strategy itself is not normalised until the final gear scaler is applied. That distinction matters because a torque value in the base table is not the engine torque the car will necessarily receive in second, fourth or fifth.</p>



<p class="wp-block-paragraph"><strong>The tyre peak moved the targets</strong></p>



<p class="wp-block-paragraph">Status: Working conclusion</p>



<p class="wp-block-paragraph">The useful result from the earlier dry data was a tractive force peak around 9,500 to 9,800 N at roughly 5 to 6 percent slip. Once slip moved into the 6 to 8 percent band, median tractive force fell to about 8,860 N. More wheelspin felt more dramatic, but it accelerated the car less.</p>



<p class="wp-block-paragraph">That immediately made two settings look wrong. Mode 7 allowed 7.9 percent straight line slip and Mode 9 allowed 12 percent. Both sat beyond the measured force peak. They were permissive, but they were not the fastest settings.</p>



<p class="wp-block-paragraph">The later road test complicated the picture. It was cooler and the road was not completely dry. Maximum logged tractive force was about 7,982 N rather than 9,500 N. The road rose by only about 0.17 percent over the measured section, worth roughly 30 N on a 1,750 kg car, so gradient could not explain the difference. Tyre and road condition could.</p>



<p class="wp-block-paragraph">That means 9,500 N remains a dry baseline, not a universal grip limit. The system still needs slip feedback because no fixed torque table can know whether the tyre is warm, cold, dry or sitting on a damp seam.</p>



<p class="wp-block-paragraph"><strong>Rebuilding the rotary modes</strong></p>



<p class="wp-block-paragraph">Status Calibration loaded for validation</p>



<p class="wp-block-paragraph">The rotary still selects the character of the car, but the straight line targets now have a cleaner progression. Mode 3 remains the chilled setting. Mode 4 is the normal fast road setting. Mode 5 is for a known dry road on warm tyres. Mode 6 allows movement, but no longer asks the SC7 to live well beyond its measured force peak.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong>TC Mode</strong></td><td><strong>Use</strong></td><td><strong>Previous 0 G target</strong></td><td><strong>Revised 0 G target</strong></td></tr><tr><td>1</td><td>Snow and ice</td><td>2.0%</td><td>2.0%</td></tr><tr><td>2</td><td>Damp and cold</td><td>2.0%</td><td>2.5%</td></tr><tr><td>3</td><td>Chilled</td><td>2.8%</td><td>3.0%</td></tr><tr><td>4</td><td>Sporty road</td><td>3.8%</td><td>4.0%</td></tr><tr><td>5</td><td>Known dry roads</td><td>7.9%</td><td>5.5%</td></tr><tr><td>6</td><td>Track</td><td>12.0%</td><td>7.0%</td></tr><tr><td>7</td><td>Very permissive</td><td>20.0%</td><td>10.0%</td></tr><tr><td>8</td><td>Soft off</td><td>28.0%</td><td>28.0%</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">The lateral G shapes were rebuilt at the same time. Both sides are now symmetrical because there was no evidence supporting different left and right targets. Every active road mode tapers as lateral acceleration increases, because the tyre has less longitudinal capacity available while it is also producing cornering force.</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="501" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-1024x501.png" alt="" class="wp-image-1163" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-1024x501.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-300x147.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-768x376.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-1536x752.png 1536w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_target_slip_profiles-2048x1002.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph"><strong>The speed offset was doing too much</strong></p>



<p class="wp-block-paragraph">Status: Calibration loaded for validation</p>



<p class="wp-block-paragraph">The final target is the lateral G table plus a speed offset. The old high speed offsets were large enough to make the combined target negative in the conservative modes. Unless that is correcting a measured wheel speed bias, a negative slip target has no useful meaning.</p>



<p class="wp-block-paragraph">The revised table keeps the low speed launch allowance, but reduces the 25 km/h addition from nine percentage points to five. The target now blends down towards the normal table by 45 km/h instead of falling off a cliff. Above 180 km/h the negative offsets remain, but they are smaller and cannot erase the underlying target.</p>



<p class="wp-block-paragraph">That gives the same rotary a consistent meaning at every speed. Mode 3 remains conservative rather than becoming impossible at high speed, and Mode 7 remains the quickest dry road target rather than turning into an arbitrary number once the car passes 180 km/h.</p>



<p class="wp-block-paragraph"><strong>A feedforward table built around tractive force</strong></p>



<p class="wp-block-paragraph">Status Current baseline</p>



<p class="wp-block-paragraph">The largest architectural change is the main feedforward surface. Instead of treating slip error as the only description of available grip, the new table is indexed by modelled tractive force and engine torque before reductions.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="269" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_feedforward_table-1024x269.png" alt="" class="wp-image-1165" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_feedforward_table-1024x269.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_feedforward_table-300x79.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_feedforward_table-768x202.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_feedforward_table.png 1065w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">The surface rises towards 9,500 N, then deliberately falls away. At a 950 Nm unrestricted torque input, the table returns 594.9 Nm at 8,000 N, 652.7 Nm at 9,500 N and 597.1 Nm at 10,500 N.</p>



<p class="wp-block-paragraph">Apply the fourth gear normalisation factor of 1.263 and those become approximately 751, 825 and 754 Nm at the engine. The peak is therefore almost exactly where the warm, dry SC7 data said it should be. Above the peak, the table asks for less torque because the tyre has already moved onto the wrong side of its force curve.</p>



<p class="wp-block-paragraph">This is still a model. Emtron tractive force is largely derived from engine torque and gearing; it is not a strain gauge measuring the contact patch. The table provides a gear aware first estimate. Slip feedback remains the part that discovers the road is wet.</p>



<p class="wp-block-paragraph"><strong>The integrator was adding torque</strong></p>



<p class="wp-block-paragraph">Status: Verified defect</p>



<p class="wp-block-paragraph">The most important log finding was not a lack of negative integral authority. It was positive windup.</p>



<p class="wp-block-paragraph">With slip below target, the original controller allowed the integral output to climb to its positive 50 Nm clamp. One run held it there for about 1.3 seconds. Another retained the full 50 Nm across approximately 2.75 seconds. The tyre was not slipping too much, so the controller stored permission to add torque.</p>



<p class="wp-block-paragraph">When overslip arrived, the proportional and derivative terms reacted immediately, but the integral term had to unwind before it could help. At the worst point in one event the contributions were minus 7.6 Nm proportional, plus 37.6 Nm integral and minus 0.9 Nm derivative. The combined PID contribution was still plus 29.1 Nm while the tyre was already beyond target.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="602" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-1024x602.png" alt="" class="wp-image-1164" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-1024x602.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-300x176.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-768x452.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-1536x904.png 1536w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_integral_clamps-2048x1205.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">The controller remained stable because the feedforward model, throttle reduction and ignition retard were doing the real work. That does not make the integral behaviour acceptable. A stable result can still contain two control terms fighting each other.</p>



<p class="wp-block-paragraph"><strong>The fix was removing positive authority</strong></p>



<p class="wp-block-paragraph">Status: Changed awaiting full dry validation</p>



<p class="wp-block-paragraph">The positive integral clamp is now zero. The negative clamp remains minus 50 Nm.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="940" height="250" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_pid_setup.png" alt="" class="wp-image-1166" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_pid_setup.png 940w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_pid_setup-300x80.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/tc_pid_setup-768x204.png 768w" sizes="auto, (max-width: 940px) 100vw, 940px" /></figure>



<p class="wp-block-paragraph">Below target slip, the integral term now sits at zero. Once the tyre exceeds target it can accumulate negative correction, up to 50 Nm. There is no positive value left to unwind and no stored torque waiting to oppose the first intervention.</p>



<p class="wp-block-paragraph">I initially considered extending the negative clamp to minus 75 Nm. The logs killed that idea. In the later full throttle events the negative integrator reached only minus 4.3 Nm in one run and zero in the other. More negative authority would have solved a problem that was not happening while increasing the risk of a torque hole after the tyre recovered.</p>



<p class="wp-block-paragraph">The proportional, integral gain and derivative tables therefore stay unchanged for the next test. Changing several control terms at once would make the result impossible to attribute. The positive clamp was the proven defect, so that is the change being isolated.</p>



<p class="wp-block-paragraph"><strong>What the road logs now say</strong></p>



<p class="wp-block-paragraph">Status Verified for the logged conditions</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong>Log</strong></td><td><strong>Maximum boost</strong></td><td><strong>Target slip</strong></td><td><strong>Maximum WOT slip</strong></td><td><strong>Maximum retard</strong></td><td><strong>Cut</strong></td></tr><tr><td>03</td><td>26.3 psi gauge (181 kPa)</td><td>3.0%</td><td>4.29%</td><td>-3.6 degrees</td><td>None</td></tr><tr><td>04</td><td>30.0 psi gauge (207 kPa)</td><td>2.8 to 3.0%</td><td>4.84%</td><td>-4.2 degrees</td><td>None</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Both runs used the conservative Mode 3 target. Neither needed ignition or fuel cuts. The car controlled the tyre with modest timing reduction and without the controller cycling torque up and down.</p>



<p class="wp-block-paragraph">The lower 7,982 N tractive force result from the cooler, imperfectly dry run should not be used to rewrite the dry table. It is evidence that the available grip changed. That is exactly why the feedforward and feedback halves both exist.</p>



<p class="wp-block-paragraph">The same session produced a roughly 4.8 second 100 to 200 km/h run without full boost at 100 km/h. The performance matters, but the cleaner result is the behaviour: a 914 whp pump fuel car remained controlled on a cool road without cuts or abrupt throttle closure.</p>



<p class="wp-block-paragraph"><strong>Power mode and traction mode are separate decisions</strong></p>



<p class="wp-block-paragraph">Status: Verified</p>



<p class="wp-block-paragraph">The torque request rotary decides how much engine performance is available. The traction rotary decides how much of that performance the tyre may use. Treating them as one setting hides useful control.</p>



<p class="wp-block-paragraph">The high torque modes already allow enough demand to exceed the rear tyre in second and third, while effectively releasing full engine output from fourth upwards. Increasing those torque tables would not make the car faster. It would only give the traction strategy a larger error to remove.</p>



<p class="wp-block-paragraph">For a dry road the useful combination is a high torque request with Mode 5 or Mode 6 traction control. Mode 3 is deliberately conservative. Mode 7 is now a permissive track setting rather than a 12 percent wheelspin setting dressed up as performance.</p>



<p class="wp-block-paragraph"><strong>The current configuration</strong> (Emtron specific)</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong>Function</strong></td><td><strong>Current setting</strong></td></tr><tr><td>Feedforward basis</td><td>Engine torque before reduction versus modelled tractive force</td></tr><tr><td>Dry force peak</td><td>Approximately 9,500 N working baseline</td></tr><tr><td>Mode 3 straight target</td><td>3.0 percent</td></tr><tr><td>Mode 4 straight target</td><td>4.0 percent</td></tr><tr><td>Mode 5 straight target</td><td>5.5 percent</td></tr><tr><td>Mode 6 straight target</td><td>7.0 percent</td></tr><tr><td>Integral positive clamp</td><td>0 Nm</td></tr><tr><td>Integral negative clamp</td><td>-50 Nm</td></tr><tr><td>Integral rate</td><td>200 Hz</td></tr><tr><td>Minimum torque clamp</td><td>50 Nm</td></tr><tr><td>Slip target filter</td><td>4</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>What still needs proving</strong></p>



<p class="wp-block-paragraph">The next valid test is on the same dry road, in both directions, with warm tyres. Running in both directions removes most of the gradient and steady wind error. Mode 4 should be tested first, followed by Mode 5, with full pedal held through the shift long enough to see the integrator unwind and torque recover.</p>



<p class="wp-block-paragraph">The stop condition is simple. If slip rises beyond about 6.5 percent and tractive force does not increase, the tyre has crossed the peak. If force continues to rise at 5.5 percent slip, Mode 6 is doing its job. If the controller oscillates or leaves a torque hole after intervention, the PID still needs work.</p>



<p class="wp-block-paragraph">Until that test is complete, the new force peak and the revised permissive modes remain evidence based working settings rather than finished calibration.</p>



<p class="wp-block-paragraph"><strong>The lesson from this iteration</strong></p>



<p class="wp-block-paragraph">The first version was designed to prevent wheelspin. This version is being calibrated to maximise acceleration without making the car unpleasant.</p>



<p class="wp-block-paragraph">That distinction changed the questions. How much slip is allowed is less useful than where the tyre produces maximum force. A larger integral clamp is less useful than checking whether the integrator is acting in the correct direction. More available engine torque is irrelevant when the tyre is already the limit.</p>



<p class="wp-block-paragraph">The car already had enough power. The latest changes are about making the control system stop wasting it, whether that waste comes from excessive wheelspin, an over-conservative target or two parts of the PID fighting each other.</p>



<p class="wp-block-paragraph">That is the point of logging it <span style="text-decoration: underline;">properly</span>. The calibration stops being a table that looks sensible and becomes a system that can explain what the car actually did.</p>



<p class="wp-block-paragraph">Huge thanks to Adrian at Emtron Australia for the pointers in this. It&#8217;s been invaluable.</p>



<p class="wp-block-paragraph"></p><p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/what-the-logs-changed-in-my-supra-traction-control/">What the Logs Changed in My Supra Traction Control</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p><p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/what-the-logs-changed-in-my-supra-traction-control/">What the Logs Changed in My Supra Traction Control</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Traction Control on 1,114 whp: Feedforward, PID, and Why It Never Cuts</title>
		<link>https://blownbytwins.co.uk/cars/mk4-supra/traction-control-feedforward-pid/</link>
		
		<dc:creator><![CDATA[john]]></dc:creator>
		<pubDate>Thu, 17 Sep 2026 09:00:00 +0000</pubDate>
				<category><![CDATA[Engine Management]]></category>
		<category><![CDATA[Mk4 Supra]]></category>
		<category><![CDATA[Tuning]]></category>
		<category><![CDATA[emtron]]></category>
		<category><![CDATA[feedforward]]></category>
		<category><![CDATA[torque model]]></category>
		<category><![CDATA[traction control]]></category>
		<guid isPermaLink="false">https://blownbytwins.co.uk/?p=1118</guid>

					<description><![CDATA[<p>1,114 whp, 880 lb ft, and a 295 section road tyre on the back. Traction control on this car is not a driver aid. It is the thing that makes&#8230;</p>
<p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/traction-control-feedforward-pid/">Traction Control on 1,114 whp: Feedforward, PID, and Why It Never Cuts</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
<p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/traction-control-feedforward-pid/">Traction Control on 1,114 whp: Feedforward, PID, and Why It Never Cuts</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">1,114 whp, 880 lb ft, and a 295 section road tyre on the back. Traction control on this car is not a driver aid. It is the thing that makes the car usable at all.</p>



<p class="wp-block-paragraph">Most discussion of traction control stops at &#8220;it cuts power when the wheels spin&#8221;. That describes about a third of what is actually happening, and it is the least interesting third. The system on this car has a predictive half that tries to never need the reactive half, and the whole design is aimed at keeping the reactive half quiet.</p>



<p class="wp-block-paragraph">This is how it is set up, and why. Every table is reproduced in full.</p>



<h2 class="wp-block-heading">Configuration</h2>



<p class="wp-block-paragraph"><strong>Status: Verified</strong></p>



<ul class="wp-block-list">
<li><a href="https://emtron.world/products/kv12" target="_blank" rel="noopener">Emtron KV12</a>, torque based traction control</li>



<li>3.4 litre 2JZ-GTE VVTi, 1,114 whp on E85, torque limited to 880 lb ft</li>



<li>ZF 8HP70, 2.93 final drive, OS Giken LSD</li>



<li>Continental SportContact 7, 265/30/19 front and 295/30/19 rear</li>



<li>Four individual wheel speeds, three axis internal accelerometer</li>



<li>Eight position rotary on the steering wheel, over CAN</li>
</ul>



<p class="wp-block-paragraph">Everything below is my own work. The base calibration on this car came from SRD Tuning, but the traction control strategy is mine start to finish, which is the only reason I can show you the tables.</p>



<h2 class="wp-block-heading">The predictive half: torque feedforward</h2>



<p class="wp-block-paragraph">The core of the system is a table that answers one question: <strong>at what engine torque does this car lose traction?</strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1646" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table.png" alt="Heatmap of the traction control torque feedforward table, slip target error -8 to +2 percent against engine torque 50 to 1,250 Nm. Every row is flat from 750 Nm upwards, with the zero slip error row clamped at 575 Nm" class="wp-image-1178" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table-197x300.png 197w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table-672x1024.png 672w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table-768x1170.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-torque-feedforward-table-1008x1536.png 1008w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Torque Feed Forward Table, Nm. The torque at which traction is lost.</figcaption></figure>
</div>


<p class="wp-block-paragraph">It is indexed on engine torque with no reduction applied, against slip target error. The ECU looks up that number and feeds it forward as the torque target before any measurement of actual slip has influenced anything.</p>



<p class="wp-block-paragraph">That is the whole idea of feedforward. If the model is right, the engine never makes more torque than the tyres can take, the slip never happens, and the closed loop has nothing to correct.</p>



<p class="wp-block-paragraph">Look at the first two columns before anything else. At 50 Nm of engine torque the table returns 50, and at 150 it returns 150. Below about 150 Nm it is a pass through: the feedforward is not limiting anything, because at those loads there is nothing to limit.</p>



<h3 class="wp-block-heading">And this is where the normalisation matters</h3>



<p class="wp-block-paragraph">Read along the zero slip error row and the values climb: 245.3, 340.5, 430.9, 478.9, 527.0, 575.0. And then they stop. Flat at 575 Nm from 750 Nm of engine torque all the way to 1,250.</p>



<p class="wp-block-paragraph">That plateau is deliberate and it is the single most important thing in the setup.</p>



<p class="wp-block-paragraph">Extend the slope before the plateau and an unclamped table would be asking for roughly 815 Nm at the top of the range. The engine makes 1,193 Nm. So without the clamp, the feedforward would be handing the PID a target the tyres cannot deliver, and the PID would spend its entire life trying to close a gap that physics will not close.</p>



<p class="wp-block-paragraph">A saturated PID is not a controller. It is an actuator held wide open. You lose all the proportionality that makes traction control feel like assistance rather than interference.</p>



<p class="wp-block-paragraph">Clamping the feedforward at something the tyres can actually deliver means the PID always has authority in reserve. That is what &#8220;normalised&#8221; means here, and it is why the system feels like it is helping rather than fighting.</p>



<h3 class="wp-block-heading">Normalised against third</h3>



<p class="wp-block-paragraph">The feedforward table is written for third gear. Everything else is scaled off it by two correction tables.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="628" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-gear-drpm.png" alt="Heatmap of feedforward correction table 1, gears 1 to 8 against rate of change of engine speed 750 to 4,000 rpm per second, from 0 percent at low dRPM in the low gears to -32 percent in eighth at 4,000" class="wp-image-1177" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-gear-drpm.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-gear-drpm-300x174.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-gear-drpm-1024x595.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-gear-drpm-768x447.png 768w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Correction Table 1, percent applied to the feedforward torque.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Correction Table 1 is indexed on gear against rate of change of engine speed. In first at low dRPM the correction is zero. By eighth at 4,000 dRPM it is minus 32 percent.</p>



<p class="wp-block-paragraph">Which makes sense once you think about what dRPM means in each gear. Engine speed rising at 4,000 rpm per second in first is normal acceleration. The same rate in eighth means the driven wheels are going somewhere the car is not. The correction is reading the rate of change as evidence of impending slip, and pulling the target down before the slip calculation has caught up.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="812" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-slip-error.png" alt="Bar chart of feedforward correction table 2 against slip target error: -40 percent at -64, -20 at -32, -10 at -16, -4 at -8, -2 at -4, -1 at -2, 0 at -1 and +10 at 0 percent error" class="wp-image-1176" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-slip-error.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-slip-error-300x226.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-slip-error-1024x770.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-correction-slip-error-768x577.png 768w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Correction Table 2. Note the axis: it runs out to minus 64 percent slip error, far wider than the gain tables further down. These two tables are not directly comparable.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Correction Table 2 does the same job against slip target error directly, from minus 40 percent at large negative error up to plus 10 at zero. That positive 10 at zero error is worth noticing: when the car is exactly on target, the feedforward is allowed to ask for slightly more than the base table says.</p>



<h2 class="wp-block-heading">The slip target, and what the rotary actually does</h2>



<p class="wp-block-paragraph"><strong>Status: Verified</strong></p>



<p class="wp-block-paragraph">Here is the part I had not seen anyone else do.</p>



<p class="wp-block-paragraph">The target slip table is indexed on <strong>lateral G</strong>, from minus 1.5 to plus 1.5, against the rotary position from the steering wheel.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="2004" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g.png" alt="Heatmap of target slip table 1, rotary positions 0 to 12 against lateral G from -1.5 to +1.5. Most rows peak at zero lateral G, from 2 percent permitted slip at position 0 to 28 percent at position 12" class="wp-image-1179" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g-162x300.png 162w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g-552x1024.png 552w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g-768x1425.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-lateral-g-828x1536.png 828w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Target Slip Table 1, permitted slip in percent. Row labels are the eight discrete CAN values the switch produces, so the ECU never interpolates between settings.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Almost every row is a dome. Maximum permitted slip in a straight line, tapering symmetrically as lateral load builds in either direction. At the loosest setting the car allows 28 percent slip straight ahead, falling to 25 at 1.5 G. At the tightest, 2 percent straight ahead and 1 percent once the car is properly loaded up.</p>



<p class="wp-block-paragraph">Setting 1 is the exception, and I would rather point at it than pretend it fits. It permits 2 percent straight ahead, rises to 3 percent at around 0.75 G in either direction, and comes back to 2.5 at full lateral load. It is the only row in the table that allows more slip while cornering than it does in a straight line.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1200" height="631" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-slip-target-vs-lateral-g.png" alt="Chart of permitted wheel slip against lateral G for three traction control settings, each forming a dome that peaks in a straight line and tapers as cornering load builds" class="wp-image-1120" /><figcaption class="wp-element-caption">The same data plotted. The dome is most pronounced in the middle settings and flattens at both extremes.</figcaption></figure>



<p class="wp-block-paragraph">So the rotary is not a gain switch and it is not an on/off. It selects <strong>how much slip you are allowed as a function of how hard you are cornering</strong>, and the system tightens automatically as lateral load increases without the driver doing anything.</p>



<h3 class="wp-block-heading">And then speed offsets all of it</h3>



<p class="wp-block-paragraph">Lateral G is not the only input to the slip target. A second table offsets it by road speed, and it does a lot of work at both ends.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1382" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-offset-road-speed.png" alt="Heatmap of the target slip offset by front axle speed, 0 to 330 kph, for each rotary position: +9 points below 25 kph (up to +25 at position 12), zero from 45 to 160 kph, and negative from 180 kph, reaching between -2.0 and -9.4 at 330" class="wp-image-1175" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-offset-road-speed.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-offset-road-speed-234x300.png 234w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-offset-road-speed-800x1024.png 800w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-target-slip-offset-road-speed-768x983.png 768w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Target Slip Offset Table 1, percentage points added to or taken off the slip target by road speed.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Below 25 kph every setting adds nine percentage points of slip, and the loosest adds twenty five. That is the launch allowance. You cannot get a car like this moving from rest on a target of 2 percent, and without that offset the system would strangle it off the line.</p>



<p class="wp-block-paragraph">Between 45 and 160 kph the offset is zero and the lateral G table stands on its own. Above 180 it goes negative, and by 330 kph it is pulling back between 2 and 9.4 points depending on the setting.</p>



<p class="wp-block-paragraph">Which is the right way round. Wheel slip at 40 kph costs you a bit of time. Wheel slip at 300 kph costs you rather more than that.</p>



<h2 class="wp-block-heading">The reactive half: a deliberately soft PID</h2>



<p class="wp-block-paragraph"><strong>Status: Verified</strong></p>



<p class="wp-block-paragraph">When the feedforward is not enough, the PID takes over. And the gains are the opposite shape to what most people would write. All three share exactly the same breakpoints, so they go in one table.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="430" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-gains.png" alt="Heatmap of the traction control PID gains against slip target error -25 to 0 percent: proportional 3.00 falling to 0.20, integral 0.000 rising to 0.020, derivative 3.00 falling to 0.10" class="wp-image-1174" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-gains.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-gains-300x119.png 300w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-gains-1024x408.png 1024w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-gains-768x306.png 768w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">Each row is shaded against its own range, because integral peaks at 0.020 and proportional at 3.00. The colour shows the shape, not the magnitude.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Proportional gain at zero slip error is 0.20. At minus 25 percent error it is 3.00. Derivative runs the same way, 0.10 at zero, and it saturates at 3.00 from minus 20 onwards.</p>



<p class="wp-block-paragraph">Both are smallest near target and largest far from it.</p>



<p class="wp-block-paragraph">That is a controller designed to be felt as little as possible. Around the target, where you spend almost all of your time, the loop barely reacts and the feedforward carries the car. Only when things run properly away does it bite hard.</p>



<p class="wp-block-paragraph">Tune it the conventional way round, with high gain near target for tight regulation, and you get a car that nibbles at the throttle constantly and feels like it is arguing with you.</p>



<h3 class="wp-block-heading">Integral is almost switched off, on purpose</h3>



<p class="wp-block-paragraph">Look at the integral row against the other two. Peak gain is 0.020, near target. At minus 25 it is <strong>zero</strong>.</p>



<p class="wp-block-paragraph">Zeroing the integral term exactly where the error is worst is anti windup by design. When the car is genuinely out of shape, the integrator stops accumulating instead of building up a correction you then have to unwind on the way out. An integrator that has wound up during a slide gives you a second event when it releases, and the second one is usually the one that catches people out.</p>



<p class="wp-block-paragraph">The rest of the PID setup backs that up:</p>



<ul class="wp-block-list">
<li>Integral control rate: 200 Hz</li>



<li>Integral positive clamp: 50.0 Nm</li>



<li>Integral negative clamp: -50.0 Nm</li>



<li>Minimum torque clamp: 50.0 Nm</li>



<li>Slip target filter: 4</li>
</ul>



<p class="wp-block-paragraph">Fifty Nm either side is a narrow band on an engine making 1,193. The integrator is there to trim, not to intervene.</p>



<h3 class="wp-block-heading">And the PID does not always run</h3>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1778" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1.png" alt="Heatmap of the PID enable table, driver demand torque 0 to 1,000 Nm against slip target error -6 to +5 percent. The loop is off below 300 Nm, then each extra 100 Nm enables one more column in a staircase" class="wp-image-1173" style="width:640px" srcset="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1.png 1080w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1-182x300.png 182w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1-622x1024.png 622w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1-768x1264.png 768w, https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-traction-pid-enable-table-1-933x1536.png 933w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /><figcaption class="wp-element-caption">PID Enable Table. 1 means the closed loop runs, 0 means it does not.</figcaption></figure>
</div>


<p class="wp-block-paragraph">Below 300 Nm of driver demand it is zero across the whole row. The closed loop simply does not run.</p>



<p class="wp-block-paragraph">Above that it opens up as a staircase. At 300 Nm the loop only runs once slip error is worse than minus 3 percent. Every additional 100 Nm of driver demand brings one more column into play, until at 1,000 Nm it is active everywhere except the far positive corner.</p>



<p class="wp-block-paragraph">So the amount of authority the closed loop has is itself a function of how much the driver is asking for. At low demand, feedforward handles everything alone, which means the PID cannot introduce noise into normal driving, because at normal driving loads it is not switched on.</p>



<h2 class="wp-block-heading">What it is allowed to do about it</h2>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="540" height="195" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/emtron-torque-limit-actuator-priority.png" alt="Emtron torque limit strategy showing priority 1 throttle area, priority 2 ignition retard, and priority 3 set to OFF so cutting is disabled" class="wp-image-1125" /><figcaption class="wp-element-caption">Priority 1 throttle area, priority 2 ignition retard, priority 3 OFF.</figcaption></figure>



<p class="wp-block-paragraph">Emtron gives you three actuators for torque reduction, in a priority order. Mine reads throttle area, then ignition retard clamped at 11 degrees, then <strong>OFF</strong>.</p>



<p class="wp-block-paragraph">Cutting is disabled. On a car making 1,114 whp, the harshest tool in the box is not in the box.</p>



<p class="wp-block-paragraph">The throttle area minimum clamp bottoms out at 10 percent, so it never closes the throttle fully either. Torque reduction happens by moving the plate and pulling timing, and nothing else.</p>



<p class="wp-block-paragraph">That is a road car decision. Fuel or ignition cutting is fast and effective and it feels like being kicked. On a car that has to be pleasant on a motorway and predictable in the wet, an intervention that arrives as a smooth reduction rather than a hammer blow is worth more than the extra tenth of response.</p>



<h2 class="wp-block-heading">Does it work?</h2>



<p class="wp-block-paragraph">One number from a road log, second gear, full throttle:</p>



<p class="wp-block-paragraph"><strong>Torque reduction by retard: 8.1 percent.</strong></p>



<p class="wp-block-paragraph">Eight percent, in retard, on the second priority, with cutting unavailable and throttle intervention having already done its part. That is the system working gently in the conditions where a badly normalised setup would be reaching for everything it had.</p>



<p class="wp-block-paragraph">It is one data point from one log, so treat it as an illustration rather than proof. But it is the shape of result the whole design is aimed at.</p>



<h2 class="wp-block-heading">The principle, if you take nothing else</h2>



<p class="wp-block-paragraph">A PID is not there to make your feedforward work. It is there to handle what the feedforward could not have known about: a damp patch, a change in surface, a mid corner bump.</p>



<p class="wp-block-paragraph">If your feedforward target is unrealistic, the PID spends its authority correcting your model instead of correcting the road. It saturates, it escalates through the actuator list, and the car feels like it is fighting you.</p>



<p class="wp-block-paragraph">Normalise the target to something the tyres can actually deliver, gate the loop so it only runs when it is needed, keep the gains soft near target, and the reactive half stays quiet almost all the time.</p>



<p class="wp-block-paragraph">Which is the point. The best traction control is the one you do not notice.</p>



<h2 class="wp-block-heading">One thing to be clear about</h2>



<p class="wp-block-paragraph">Every number above is specific to this car: this power, these tyres, this gearbox, this weight distribution. <strong>The data is not transferable, but the principle is.</strong></p>



<p class="wp-block-paragraph">I have published the tables in full because seeing how something is structured teaches you far more than reading a description of it. Copy the structure. Do not copy the values.</p>



<p class="wp-block-paragraph">None of this works without trustworthy wheel speeds, which on a staggered setup is less automatic than it sounds. That is covered in <a href="https://blownbytwins.co.uk/?p=1111">Staggered Tyres and Traction Control</a>. The throttle area table that the whole torque model sits on is covered in <a href="https://blownbytwins.co.uk/engine-management/throttle-body-effective-area/">Throttle Body Effective Flow Area</a>. Full specification is on the <a href="https://blownbytwins.co.uk/toyota-supra-mk4-delta/">Supra project page</a>.</p>



<p class="wp-block-paragraph">If you run torque based traction control and have taken a different view on any of this, particularly the gain shape, the setting 1 anomaly or disabling cut, I would like to hear it. This is the part of the calibration I have changed my mind about most.</p><p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/traction-control-feedforward-pid/">Traction Control on 1,114 whp: Feedforward, PID, and Why It Never Cuts</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p><p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/traction-control-feedforward-pid/">Traction Control on 1,114 whp: Feedforward, PID, and Why It Never Cuts</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Staggered Tyres and Traction Control: What the ECU Corrects, and What It Can&#8217;t</title>
		<link>https://blownbytwins.co.uk/cars/mk4-supra/staggered-tyres-traction-control/</link>
		
		<dc:creator><![CDATA[john]]></dc:creator>
		<pubDate>Thu, 10 Sep 2026 09:00:00 +0000</pubDate>
				<category><![CDATA[Engine Management]]></category>
		<category><![CDATA[Mk4 Supra]]></category>
		<category><![CDATA[Tuning]]></category>
		<category><![CDATA[calibration]]></category>
		<category><![CDATA[emtron]]></category>
		<category><![CDATA[traction control]]></category>
		<category><![CDATA[wheel speed]]></category>
		<guid isPermaLink="false">https://blownbytwins.co.uk/?p=1111</guid>

					<description><![CDATA[<p>If you run staggered tyres and a standalone ECU with traction control, there is a field in your configuration that almost certainly matters more than you think it does. It&#8230;</p>
<p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/staggered-tyres-traction-control/">Staggered Tyres and Traction Control: What the ECU Corrects, and What It Can’t</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
<p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/staggered-tyres-traction-control/">Staggered Tyres and Traction Control: What the ECU Corrects, and What It Can&#8217;t</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">If you run staggered tyres and a standalone ECU with traction control, there is a field in your configuration that almost certainly matters more than you think it does. It is the tyre size.</p>



<p class="wp-block-paragraph">Not for speedometer calibration. For whether your traction control knows the difference between wheelspin and a rear tyre that is simply a different size to the front one.</p>



<h2 class="wp-block-heading">The problem, in one number</h2>



<p class="wp-block-paragraph">My car runs 265/30/19 at the front and 295/30/19 at the rear. Work the rolling diameters out:</p>



<ul class="wp-block-list">
<li>Front: 482.6 mm rim + (2 &times; 79.5 mm sidewall) = <strong>641.6 mm</strong></li>



<li>Rear: 482.6 mm rim + (2 &times; 88.5 mm sidewall) = <strong>659.6 mm</strong></li>
</ul>



<p class="wp-block-paragraph">The rear is 2.8 percent larger, so for any given road speed it turns about 2.7 percent slower than the front. Put the other way round, the front turns 2.8 percent faster than the rear, which is the figure you will see between the raw channels.</p>



<p class="wp-block-paragraph">A traction control strategy that compares driven wheel speed against undriven wheel speed and calls the difference slip would therefore see a permanent 2.8 percent slip. At a steady 50 mph on a flat road, doing nothing. Every slip target you set would be sitting on top of an offset that has nothing to do with grip.</p>



<h2 class="wp-block-heading">What the ECU does about it</h2>



<p class="wp-block-paragraph"><strong>Status: Verified</strong></p>



<p class="wp-block-paragraph">On the <a href="https://emtron.world/products/kv12" target="_blank" rel="noopener">Emtron</a> you give it two things per axle: the number of teeth on the ABS reluctor, and the tyre size.</p>



<p class="wp-block-paragraph">In my case that is 48 teeth on the Toyota hubs at both ends, and the two tyre sizes above. The ECU converts each tyre size string into a rolling diameter, combines it with the tooth count, and derives a scalar that normalises one axle against the other.</p>



<p class="wp-block-paragraph">The tooth count cancels here because both ends are 48. On a car with different reluctors front and rear it would not, which is exactly why the ECU asks for both rather than just the tyre size.</p>



<p class="wp-block-paragraph">You can watch it work. At a steady cruise on a flat road, in the same log, at the same moment:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1200" height="631" src="https://blownbytwins.co.uk/wp-content/uploads/2026/09/wheel-speed-raw-vs-corrected-slip.png" alt="Bar chart comparing raw wheel speed channels reading 2.8 percent apart against a corrected Drive Slip channel reading zero at steady cruise" class="wp-image-1128" /><figcaption class="wp-element-caption">Same car, same log, same moment. The raw channels show the geometry. The corrected channel shows the truth.</figcaption></figure>



<ul class="wp-block-list">
<li><strong>Raw wheel speed channels: 2.8 percent apart.</strong> Exactly the geometry, uncorrected.</li>



<li><strong>Drive Slip: 0 percent.</strong> Corrected, and reading the truth.</li>
</ul>



<p class="wp-block-paragraph">That pair is worth knowing about, because if you go looking at raw wheel speed channels and find them 2.8 percent apart, nothing is wrong. Those are sensor channels. The correction is applied downstream, inside the slip calculation, and the corrected channel is the one that tells you whether it is working.</p>



<h2 class="wp-block-heading">The failure mode nobody warns you about</h2>



<p class="wp-block-paragraph">The correction is derived from a tyre size you typed in. It has no way of knowing what is actually bolted to the car.</p>



<p class="wp-block-paragraph">This car has been through 18 inch wheels on Yokohama A052, and is now on 19 inch Rays G025 with a staggered Continental SportContact 7 setup. If the configuration still held the old sizes, every wheel speed on the car would be wrong, road speed would be wrong, and the slip calculation would be wrong.</p>



<p class="wp-block-paragraph">And none of it would look broken. The ECU would be doing correct arithmetic on stale inputs, confidently, forever.</p>



<p class="wp-block-paragraph">So: change your wheels or tyres, change the configuration. It belongs on the same checklist as the alignment.</p>



<h2 class="wp-block-heading">What geometry cannot reach</h2>



<p class="wp-block-paragraph"><strong>Status: Working conclusion</strong></p>



<p class="wp-block-paragraph">The scalar is calculated from the free rolling diameter, meaning the tyre&#8217;s size when nothing is pushing on it. What the wheel actually rolls on is the loaded radius, which is smaller, because the sidewall deflects under the weight of the car.</p>



<p class="wp-block-paragraph">That deflection is not the same front to rear. My rear sidewall is 88.5 mm against 79.5 mm at the front, and it carries more load. So the real ratio between the two axles is not quite the ratio the ECU calculated.</p>



<p class="wp-block-paragraph">Worse, it moves. Under hard acceleration weight transfers rearward, the rear sidewall squashes further, the rear rolling radius shrinks, and the rear wheels read faster for the same road speed. The system sees slip that is partly just the tyre changing shape.</p>



<p class="wp-block-paragraph">Which means the residual error is largest exactly when traction control is working hardest, and it errs in the direction of over-reading slip.</p>



<p class="wp-block-paragraph">Add the slower drifts on top: cold pressure against hot, a fresh tyre against a half worn one, a summer session against a winter one. All of them change rolling radius. None of them change the number in the configuration.</p>



<p class="wp-block-paragraph">I have not quantified any of that on this car. It is reasoning from geometry rather than measurement, and it stays a working conclusion until there is a number behind it.</p>



<h2 class="wp-block-heading">The check that takes two minutes</h2>



<p class="wp-block-paragraph">Flat road, steady 50, constant throttle, no load transfer. Log all four wheel speeds and your corrected slip channel.</p>



<p class="wp-block-paragraph">If corrected slip reads zero, your static correction is right. If it reads a consistent offset, either your configured tyre sizes do not match the car, or your tyres have worn far enough to matter.</p>



<p class="wp-block-paragraph">Do it after every tyre change, and once mid-season. It costs nothing and it is the only way to know whether the number your traction control is acting on means anything.</p>



<hr class="wp-block-separator has-alpha-channel-opacity" />



<p class="wp-block-paragraph"><strong>Why this matters more than it sounds.</strong> Everything the traction control does downstream, the slip target, the feedforward torque model, the PID that corrects what the model missed, is built on the assumption that slip is being measured correctly. Get this wrong and every one of those tables is being tuned against a number that has an offset baked into it. The strategy that sits on top of these wheel speeds is covered in <a href="https://blownbytwins.co.uk/?p=1118">Traction Control on 1,114 whp</a>.</p>



<p class="wp-block-paragraph">Full specification and the wheel and tyre setup are on the <a href="https://blownbytwins.co.uk/toyota-supra-mk4-delta/">Supra project page</a>.</p>



<p class="wp-block-paragraph">If you run staggered tyres and have measured your loaded radius rather than assuming the free one, I would like to know how far apart they were. That is the number this article is missing.</p><p>The post <a href="https://blownbytwins.co.uk/cars/mk4-supra/staggered-tyres-traction-control/">Staggered Tyres and Traction Control: What the ECU Corrects, and What It Can’t</a> first appeared on <a href="https://blownbytwins.co.uk">BlownByTwins</a>.</p><p>The post <a rel="nofollow" href="https://blownbytwins.co.uk/cars/mk4-supra/staggered-tyres-traction-control/">Staggered Tyres and Traction Control: What the ECU Corrects, and What It Can&#8217;t</a> appeared first on <a rel="nofollow" href="https://blownbytwins.co.uk">BlownByTwins</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
