Our VIP Package gets you every single course at 80% off the individual price. For a limited time, save an additional $100 with coupon code 100VIP. Learn more

Practical Reflash Tuning: Step 5: Optimising The Tune

Watch This Course

$229 USD

-OR-
Or 8 weekly payments of only $28.63 Instant access. Easy checkout. No fees. Learn more
Course Access for Life
60 day money back guarantee

Step 5: Optimising The Tune

30.55

00:00 - Now we're finally ready to start optimising our tune.
00:04 And if we did our job correctly in the last step, this should actually be relatively straightforward, at least as far as tuning our fuel delivery goes.
00:14 Now, we're going to begin before we flash our ROM file into the PCM, we're going to make one more change, and that's to our wide-open throttle power enrichment air fuel ratio targets.
00:27 You'll remember in our last step we set these to an across the board, a target of 0.85 Lambda, so that we weren't chasing a moving target when we were optimising our VE table.
00:40 Now, we don't necessarily want to run our engine at 0.85 all of the time in power enrichment, so we're going to put some more realistic numbers into our power enrichment tables.
00:50 So, I've got our power enrichment equivalence ratio target table here, and what I'm going to do is bring up our calculator, and at low RPM what I'm going to do is target a Lambda value of 0.90, so let's enter 0.9.
01:09 And we'll use the inverse function, and we find that that's equivalent of 1.111 equivalence ratio.
01:16 So, I'm going to set the equivalence ratio to 1.111, everywhere between zero and 2,500 RPM, so that's gonna cover my low RPM operation.
01:27 At high RPM, though, I'm going to want to target a little bit richer, so I've got a little bit more fuel there to help cool and control our combustion charge temperature.
01:37 And I'm going to target 0.86 at higher RPM, so we'll enter that into the calculator, we'll use our inverse function again, and that gives us an equivalence ratio of 1.163, and I'm going to set that all the way from five and a half thousand RPM and above, so 1.163.
02:00 And then, for simplicity, I'm going to just highlight those two zones, 2,500 and 5,500, all of the cells in between, and we'll use the horizontal interpolation tool to give us a nice, smooth interpolation between these bounds.
02:18 So, we can see that we've got that shape to our power enrichment target table.
02:22 Now, all right, we can save our file, and what we're going to do now is flash that into our PCM, and we'll be ready to make our first run.
02:32 All right, we've got our engine running, we've got our scanner operating, so let's have a look at some of the key aspects that we're going to want to take notice of while we're running the car.
02:40 Now, first of all, let's have a look at our fuel trims, and you can see that we now have our short term fuel trims are doing a little bit of work, albeit you can see that our short term field trims are still very close to zero, so, again, this is a good sign that our VE table is accurate, you'll see our longterm fuel trims are sitting at zero because, for the purposes of this demonstration, those are disabled you'll recall.
03:05 We've got our commanded and measured Lambda, and this is what we're going to be using for confirming our wide-open throttle fuel delivery, making sure that our fuel delivery is on target.
03:16 And if we move back up, we're also, for this part of our process, we're going to be taking a lot of notice of our knock retard and our spark timing to help us optimise our ignition timing.
03:28 Now, we'll just talk quickly about the process we're going to go through.
03:31 I find particularly when you're just beginning to get used to tuning, it's easiest if we can focus on one task at a time, so we're going to break up our tuning exercise into two aspects.
03:44 First, we're going to have a look at optimising our fueling, now, as I've mentioned, if we've done our job correctly, we should have very little to do here.
03:53 Once we've got our fueling matching our commanded point well, then we can move on, and we'll look at optimising our ignition timing.
04:02 And once you're familiar with the process, you'll tend to do both jobs simultaneously, but initially, we're going to just separate these out for simplicity.
04:11 Another thing I'll talk about is any time we are running a car on the dyno, I'd recommend that you use audio knock detection equipment to confirm that the engine isn't suffering from knock.
04:23 Even though our GM PCM does have quite a sophisticated knock detection strategy in it, it's always best to confirm and validate that that's working properly using audio knock detection equipment.
04:37 All right, with that out of the way, let's get our first run on the dyno and we'll see how well our air flow ratio is matching our target.
05:09 All right, we can see we've got our first run there on our dyno, and you can see now our air fuel ratio is a little bit different to what we saw when we were optimising our VE table, we've got a bit of a shape to it, we start at a target around 0.90, you can see it higher up here, we're dropping down to our 0.85 target.
05:31 We're not too worried about power at the moment, let's move across and have a look at our scanner and see the results of that run.
05:38 Now, when we've done any full throttle run, the first thing I always want to do is have a look and see if we've got any knock activity.
05:45 And you can see we actually do have a very small amount of knock activity sitting here, right in the middle of our run at 4,600 RPM, it's not significant, we've only ended up removing about half a degree of ignition timing, and I'll just talk briefly about this now.
06:01 When we're trying to tune our ignition timing, optimise our ignition timing, obviously we want to try and achieve and complete knock free operation, that's ideal, knock can be dangerous, it can be damaging to the engine, so we don't want any knock occurring.
06:17 However, what we will find as occasionally, even in a very well-tuned engine, we may get the occasional knock event occurring.
06:26 What we're trying to ensure we don't end up with is consistent or repeatable knock occurring in one particular rev range and load range in our engine's operation.
06:37 If we've got repeatable knock, we're going to need to address that.
06:41 If I get an occasional knock event, and in this case, here, I'm going to, for the moment, ignore the small amount of knock we've seen at 4,600 RPM, and we'll see if this continues to be a problem.
06:55 For now, we can concentrate on our fueling, and let's have a look at our fuel curve, we can see, first of all, our engine RPM for the actual run, this is the area that we're operating through, and we can see, for the most part, if we look at our commanded versus measured Lambda, we're very, very close to our target.
07:16 Certainly, for the most part, we are well within about one percent error, which is great.
07:22 We do have a couple of areas that we could address, though, particularly you can see in here, between about 4,000 RPM and about 4,500 RPM, we are a little bit lean, in fact, we're about two percent lean in that area.
07:39 So, if we've go something like this, and generally if we've done our job correctly, we should straight away find that our Lambda matches our target very closely.
07:48 This, however, gives me the opportunity to demonstrate how we would correct an area like this, so we've got a lean area here, another thing, if we look we've also got a very slightly rich area between about 1,900 and about 2,400 RPM.
08:06 So, let's see how we can address those.
08:09 First of all, we'll look at our 1,800 to 2,400 RPM, we want to find out whereabouts in our VE table we're operating, because this is where we're going to correct this error.
08:22 So, we know we're between 1,800 and 2,400, we also need to take note of our manifold absolute pressure, 'cause that's going to give us a guide as well, so we're running at about around 95 KPA there.
08:35 Okay, and now we need to calculate the error that we've got, so let's look here and generally if we look at about the worst part, we're around about 0.89, this is our target of 0.899.
08:50 Let's bring up our calculator now, and we'll see how we can use our calculator to correct this error.
08:58 So, in this case, we want to enter our measured lander, which is 0.89, and we wanna divide this by our target which is 0.899, and if we press enter, that gives us a correction factor of 0.989, so basically, what this is saying is we were one percent rich in this particular area.
09:23 Let's see how we can apply that correction to our VE table.
09:28 Let's bring up our VE table now, and what we want to do is find the area that we're operating in, and remember we're looking at 1,800 RPM, and we were looking at up to 2,400 RPM.
09:44 Now, remember we're operating at 95 KPA across those zones, and what I've done is I've made my changes, or the changes I'm going to make here, go all the way from 105 KPA, we're not going to be operating there, but all the way from our highest load point down to, I've just extrapolated my change down a little bit below the area we're operating in, down to 93.8 KPA.
10:08 All right, so now we want to simply apply our correction.
10:12 Now, if we were rich, which we were, we now we were one percent rich, what this means is that the PCM thinks more air is entering the engine than is actually going into the cylinders, so we want to reduce our volumetric efficiency numbers by the same amount.
10:31 So, what I'm going to do is enter my correction factor in here, 0.99, and we'll press multiply, so that's taken one percent out of our VE in this area.
10:41 Let's have a look at our other error, and we were looking at 4,000 through to about 4,800 RPM, and in this area let's have a look at our error, we'll bring up our calculator again to see what exactly we have, and we have a measured Lambda of 0.896, and we have a target of 0.876.
11:06 So, this means we're around about two percent lean in this area, so what we're going to do is apply our correction factor of two percent between 4,000 and 4,800 RPM, again, I'm just looking at our manifold air pressure, absolute pressure, 94 KPA at higher RPM, so we know exactly where to make these changes.
11:27 If we go back to our VE table and we find 4,000 RPM, and we're going to go out to 4,800 RPM, and, remember, this time we're down at 94 KPA, so it's starting to get quite close to our next break point, down 90.9, and we're going to probably find we'll be interpolating between those cells, so what I'm going to do is actually extend the area I'm making my change down a little bit, down to 90.9.
11:54 So, this time we need to add some values to our VE table, we need to increase them to tell the PCM more air is entering the engine, so we're going to multiply these values by two percent by entering add two percent by multiplying by 1.02.
12:10 So, I press enter, its made that change.
12:12 Now, if we've done our job correctly, we should be only needing to make very small changes to our VE tables, or, in fact, possibly none at all.
12:21 If we do need to make any dramatic changes, it suggests we probably didn't do our job thoroughly in the last step.
12:31 If we are making reasonably large changes, though, of anything more than about one or two percent, we do want to make sure we keep a smooth shape to our VE table, so it's advisable to then blend the areas around where we've just made our block changes, so in this case, for example, if our changes were a little bit larger, we might blend by making a change at 3,800 RPM and then likewise at 5,000 RPM as well, just to keep a smooth shape to our VE table.
13:04 Right, now what I'm going to do is copy the changes we've just made to that table, and remember, we need to paste those into our other two VE tables as well, so that those are all remaining the same.
13:18 Let's flash that change into the PCM now, and we can see if that's corrected our Lambda error.
13:24 All right, we're back up and running, so let's see what our results are.
13:50 Okay, so that's our second run complete, as you can see, we've got exactly the same power as our previous run which is to be expected, if we look at the overlay on our dyno, you can see compared to our previous run, we've corrected the lean area through the middle of the rev range.
14:05 Let's look at what we've got logged on our scanner during that run, and first of all we're going to have a look at our ignition, or our knock events, and you can see that we do still have a little bit of knock retard happening at 4,500 RPM so that's indicative that we do need to retard our timing in this area.
14:24 We're going to have a look at that shortly, but let's start by talking about our fueling, and remember, we've made two corrections there, we've richened up our low RPM area where we had that slight lean spot, and we've leaned out an area through our mid range where we were a bit rich, and you can see throughout this run now, we are very, very close to our target.
14:47 If we click through the run we can see that we're generally either right on our target or within around about one percent of our target, so I'm pretty happy with that.
14:59 Of course, we can apply the same correction factor to any further errors, you can see we still have a slight lean area here at 2,500 RPM, and likewise if we move across, we're still just a little bit rich here at 5,000, 4,900 RPM, so we can continue going through and applying our correction factor to any errors we've got.
15:22 I'm not going to continue for this worked example, we're close enough, and we've demonstrated the technique to apply.
15:30 I will just mention, though, what we should be looking for here, it'd be nice to think that we're going to see an exact measured Lambda that matches our target every run, and unfortunately that's just not the case.
15:43 The measured Lambda will always move around a little bit, and you're even going to get a very small discrepancy from one run to another.
15:51 So, when I say, for example, I'm targeting 0.86 Lambda, generally what I mean is I'm going to be looking for a Lambda value somewhere between perhaps 0.87 and 0.85, so plus or minus about .01 Lambda, I've got a range that I'm going to be comfortable with, and as long as I'm within that range then I'm not going to continue trying to get my air fuel ratio close than that.
16:20 When you're deciding where to leave your air fuel ratio as well, if you do notice that your air fuel ratio does move a little bit rich and a little bit lean through our run as we can see here, it's always best if we're moving slightly richer than our target, that's always going to be our safest option.
16:37 So, for now, we're going to leave our fuel delivery, we're going to move on to our spark.
16:43 And, given the fact that we do have our little blips particularly here at 4,500, I've got another one right at the very top of the run after the dynos clamped the car and started pulling the RPM back down, and we've got a very small amount of activity down here at 3,000 RPM.
17:01 What this suggests straight away is we're probably already very close to our knock threshold with this particular ignition advanced table.
17:11 Let's start, though, by removing some timing in the area that we do have some knock, so we're going to remove some timing at 4,600 RPM, but in order to know where exactly in our table we need to alter, we need to look at our cylinder airmass, and remember, we've mentioned that even on our speed density system, we're still using the ECU's calculated cylinder airmass as the load axis for our spark table.
17:38 Now, we've got our cylinder airmass being logged here on our chart logger, and we can also see, just to mention, we can see that we're sitting at 0.84 grammes per cylinder, so 4,600 RPM and 0.84 grammes per cylinder.
17:57 We can also use our histograms as well, so if we just drag these back across so we can view them, and if we look at our spark advance, this histogram is gonna show us where exactly we were operating in our spark tables at any particular point.
18:14 So, we can see that at low RPM we have less air flow, we're sitting at around about 0.64 to 0.68 grammes per cylinder, and as we move through the rev range, we see our air flow increases, our mass air flow increases up to around about 0.84 grammes per cylinder, and we actually see it at higher RPM drop off again a little bit.
18:38 The other way we can check the activity from our knock control system and see exactly where any retard is being applied is with our spark retard histogram.
18:47 Now, in this case, because we've got so little ignition retard being pulled, released in half a degree, so that's bringing average back to zero, we're not actually seeing any values in this table right now.
18:59 If we're getting more knock occurring, we'll we able to say we are exactly the ignition timing was being removed, though.
19:05 Right, let's make a change to our ignition table, and remember, we wanted to remove some timing from about 4,600 RPM and .84 grammes per cylinder.
19:16 So, let's bring up our spark table, and we want to be altering our high octane spark advanced table, and the first change we're going to make is to remove that knock, so remember we were at 4,600 RPM, and you can see we don't actually have a break point at 4,600 RPM, we have one at 4,400 and 4,800, so what I'm going to do is make changes to both of those sites.
19:42 And we were operating, you'll remember, at 0.84 grammes per cylinder, so these are the two cells we're effectively operating in.
19:52 And when I'm removing timing, what I'm generally going to do is remove timing a little bit around the cells that the PCM was operating or accessing at the time, just to ensure that I don't have any chance of knock occurring.
20:07 So, I'm going to start the change I'm going to make from 0.80 grammes per cylinder, and I'm going to make it to the 4,400 and 4,800 RPM columns, and I'm going to make my change all the way through to the highest load reading we have here, 1.36 grammes per cylinder, and I'm simply going to press the minus key once to remove one degree of timing.
20:32 Now, as I've said, looking at the activity we've got in that logger, my gut feeling is we're probably not going to take a lot more timing, however for the purposes of our demonstration, let's add a little bit more timing, both above and below this point, and we'll see what our results are.
20:51 Now, we know that our engine is a little knock prone, particularly around about this area here, 4,600 RPM.
20:58 So, I'm going to advance the timing, but I'm going to wait til our RPM has increased a little bit.
21:05 So, we'll leave the timing at 5,200 RPM as it was, and from 5,600 RPM and above, I'm going to highlight all of our cells out here, in this case I'm going to add two degrees, and we're going to see if that's enough to show either an improvement or result in knock occurring.
21:28 When we first start making changes to our ignition timing, I like to make a change of two degrees because this is usually going to be big enough to show a difference.
21:38 Once we start really fine tuning our ignition table, we can start making smaller, finer changes to get our timing optimised.
21:47 Now, the other thing we want to do when we're making changes to our ignition timing is to make sure we keep a smooth shape to our ignition curve.
21:55 And you can see here, because I've made this change down to 0.72 grammes per cylinder, we see the values below this, and they are less, generally, as a rule of thumb, we see ignition timing values increase as our load decreases.
22:12 So, what I'm going to do is just blend these values in so we have a relatively smooth shape to our ignition table.
22:22 If we start seeing a lot of erratic changes in our ignition timing, this is going to end up effecting the drivability, or the smoothness of our engine.
22:30 The other thing we're going to do is make a change to our ignition timing at lower RPM or advance our timing down here, and I know that particularly at very low RPM the engine is first settling on the dyno, we're very prone to knock occurring in this area.
22:47 So, I'm going to select an area from about 1,800 RPM and above, and what we'll do is add some timing out to about 3,800 RPM.
22:58 The reason I'm trying to do this is we know, again, that our engine was prone to knocking at around about 4,600, so we want to be a little bit careful with the timing as we get close to that RPM range.
23:12 So, we're looking at an area from 1,800 RPM and .64 grammes per cylinder, and we'll go up to 3,800 RPM.
23:21 So, let's find those areas in our table, and we'll go from 1,800 out to 3,800, and again, I'm just going to simply increase the timing here by two degrees, and I'm still going to have a quick look at my numbers, and I've just made a change there to make sure that my table is going to remain smooth.
23:43 And remember, of course, we can have a look at the shape of our table graphically in three dimensions, so we can see if we've got any outliers in that table.
23:55 All right, we've got our first change made to our ignition timing, now let's flash that into the PCM, and we'll see the results of that change.
24:05 So, we're back up and running and ready to test and see what the results of our ignition timing change are.
24:11 Any time we've made a change, particularly when we've advanced our ignition timing like we've just done, we want to be extra vigilant of watching our scanner and watching for any knock retard during our wide open throttle ramp runs.
24:24 So, let's get our run done and see what our results are now.
24:50 All right, let's have a look at our results from that run, and first of all, you can see that we have actually picked up a little bit of power, we've now got 252.9 kilowatts at the rear wheel, so 339 horsepower.
25:04 We've overlaid over our last run though, and for the most part, you can see that the two runs are directly one on top of the other, there's been no change.
25:13 Well, we have seen our improvement has only been from about 5,300 RPM and above where you can see that green line from our current run, just slightly sneaks ahead of our last run.
25:26 So, the changes we've seen there haven't been that dramatic, remember, we added timing at lower RPM, currently that hasn't shown any improvement whatsoever.
25:35 And if we see a situation like this where we've added timing and we've seen no benefit from it, we'd simply go back into our spark table and remove that timing, and it means that we were already at MBT, or perhaps, even we were already beyond the MBT in our starting point.
25:52 Okay, let's have a look at our scanner, and we can see that, first of all, our knock that we previously had here at around about 4,600 RPM has gone, so that's as a result of us removing that one degree of timing in that area.
26:08 But we haven't actually seen our power on the dyno drop as a result of that either, so that's all positive, that's great news.
26:16 You can see now at higher RPM though, we are now showing a little bit of knock retard up above about 5,800 RPM.
26:26 Now, that coincides with where we have seen that additional power, and this is where we do need to be a little bit careful.
26:33 Ultimately is doesn't matter how much power our engine is making, if the engine is suffering from knock, we can't have that ignition timing in there, because the engine can end up being damaged, so any time where we see a situation where we've advanced our ignition timing, we've seen an increase in our power and torque, but we've also seen the onset of knock, it means that we have reached the knock limit, and we need to retard the timing to remove that knock.
27:02 Now, we've added two degrees, we've seen a very minuscule amount of knock activity, in this situation, I'd probably be more inclined to run the engine again and see if this knock was repeatable, was sustained.
27:16 Knock, however, for the purposes of this demonstration, what I'm going to do is I'm going to remove one of the two degrees of timing that we added in, so let's go back to our spark map, and we can see we've got our spark map here, where we've made our changes.
27:33 So, what I'm going to do is highlight the area where we've just added two degrees, and I'm simply going to remove one degree.
27:41 Now, remember, we also added two degrees into our lower RPM operating area, and that's had no effect, so I'm going to simply remove that timing back out, it hasn't helped us so we'll remove it.
27:56 Right, let's flash that change into the PCM and we'll see what our results are.
28:01 All right, let's perform another run.
28:21 All right, let's look at our results there, and on the dyno you can see we've got 254.5 kilowatts, so we're actually up a very small amount, you can see right on the top end we've removed that one degree of timing, remember, we've dropped a very small amount which we would expect, however, through the rest of our run, we're essentially overlaying directly over our previous run, which is what we would expect.
28:45 So, the process here is just about complete.
28:48 Let's have a look at the scanner, and we'll see what we've got.
28:52 Now, first of all, let's have a look for any knock, and you can see that we do have a very small amount of knock retard being displayed right here, but it's important to understand what's actually happening there, we can see that that is actually past the top of the run where the dyno has increase the load to pull the engine RPM back down and clamp it right at the top of the run.
29:15 So, this isn't actually occurring during our full power acceleration run, so to speak.
29:22 Through the rest of the run, though, you can see that we now have no knock being displayed, so that's really positive, we've made sure that we've got no knock occurring, but our timing is optimised to MBT.
29:35 We'll have one more look at our Lambda, and you can see that our commanded Lambda and our measured Lambda are still very close, we're matching very, very accurately there, so we're happy with that.
29:47 So, the process we've gone through there, we've managed to tune out our engine there and the wide open throttle in just a handful of runs.
29:56 Now, of course we were starting with a base calibration for our ignition timing, the end engine turned out to be very close, and this is quite common with reflashing tasks, particularly when we haven't made that many hardware modifications to the vehicle.
30:12 So, we can expect that our final ignition timing won't be that much different in some instances to what we actually started with.
30:22 So, at this point we're finished with the dyno, we've got no knock occurring, we know we've got our ignition curve optimised, we know we've got good control over our air fuel ratio, in both wide open throttle open loop operation, as well as under closed loop operation with our short tune fuel trim setting very close to zero.