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

Variable Cam Control Tuning: Optimising Switched Cam Timing

Watch This Course

$149 USD

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

Optimising Switched Cam Timing


00:00 - In this module we're going to take a look at the process involved with optimising the tuning with a switched cam control engine.
00:06 For our particular demonstration we're using our Toyota GT86 which has been engine swapped with a Nissan SR20 VVL engine which is also turbocharged.
00:15 Nissan's VVL cylinder head for all intents and purposes is identical in operating principles to Honda's popular VTEC engine so here we are looking at a switched cam system that simply switches between a low RPM cam lobe and a high RPM cam lobe.
00:31 The exact same tuning process however can be applied equally to engines which use switched cam advance where typically the intake cam will be advanced and retarded between two mechanical limits.
00:44 Again different here to a continuously variable cam control engine where we are only either at maximum advance or maximum retard.
00:52 For our demonstration we will be using the MoTeC M150 ECU so let's just jump into the software and we'll have a quick familiarisation with what we're going to be adjusting.
01:02 So at the moment we are on our main tuning worksheet or workbook and at the moment we are on our fuel tuning worksheet so here we have our volumetric efficiency table.
01:13 Now for our demonstration here we won't be making adjustments to the VE table, we will be relying on the closed loop control to make adjustments as we go along but we will be monitoring our progress with how the closed loop fuel control is working and what it's actually doing.
01:28 Now in terms of cam control we do have a worksheet here that is labelled as camshaft but this is purely for engines that run continuously variable cam control.
01:38 So setting up cam control, switched cam control on the MoTeC M1 is a little bit more involved.
01:45 What we're going to do is come into our menu structure on the left hand side.
01:47 We'll come down to our engine systems workbook and what we want to do is end up over here on our auxiliary outputs worksheet.
01:56 So with our auxiliary outputs, we have 5 auxiliary outputs labelled 1-5 and each of these outputs has slightly different functionality depending on what you're trying to achieve.
02:08 We're actually using here for our demonstration, auxiliary output 1.
02:11 So you can see what I've done here is I've configured this to be operating on our low side ignition 9 output so this is just one of the unused ignition outputs.
02:21 Equally we could use an auxiliary output or a spare half bridge, basically any auxiliary ouput that is unused.
02:29 We do have the ability in the M1 to run a test mode for this.
02:33 So particularly here we've got our test disabled at the moment of course and a duty cycle that we can run that test at, so we click on that we can simply select enabled from that drop down menu.
02:45 And this is really helpful when we are initially configuring the ECU just to make sure that we can physically hear that cam solenoid pulsing when we run that test.
02:56 A good way of diagnosing problems potentially with your wiring.
02:59 We've got our polarity here so we can have this normal or inverted depending on the way the solenoid is operating.
03:06 And then we have our frequency.
03:09 So this is an important part with our frequency here.
03:11 You can see I've got this set to 0 Hz and in the little help over to the right hand side here, we can see if the frequency is set to greater than 0, what that's going to do is allow pulse width modulated control.
03:23 We don't need that specifically for our switched cam control so frequency equals 0 there we can see that that functionality will be switched, it's either on or off so that's how we've got that set up.
03:36 Now we've got our duty cycle table here and this is where we're going to be making changes to where the cam is going to switch on so we can see we've got just 2 zones in that table at the moment and this is something you do need to be mindful of with the auxiliary outputs in the M1.
03:54 So if I click on that table and I press the A key for our axis setup, we can see the axes that are available for that particular auxiliary output, we are limited to the axes as they sit right now so this would allow engine speed vs throttle position.
04:08 That's going to be fine if your main volumetric efficiency table is set up based on throttle position.
04:15 As you'd have been able to see, let's just switch back over to it, our VE table is actually using manifold pressure as the vertical axis so this could get us into some trouble here and this is where we'd want to be careful.
04:27 Let's go back over to our engine systems worksheet again.
04:30 In our case I am keeping this nice and simple given that this is a racecar.
04:36 We are only switching on one parameter here and that's what we're going to be setting up for our demonstration so purely RPM so I have no problem using that particular auxiliary output.
04:46 However if we come down to auxiliary output 3 here which is currently not configured and we'll just set this up so we can see.
04:53 So I'll just choose an unused output at the moment, that then gives us all of the rest of the available parameters for that auxiliary output and what we want to do is just come down to our duty cycle table here, obviously no zones active in this at all because it hasn't been set up.
05:09 If we click on the A key, now we can see we've actually got 3 axes for this table available.
05:14 We can use as few or as many of these as we want.
05:17 So we can now set this up on engine speed vs inlet manifold pressure and we could also have an over riding table for vehicle speed as well.
05:27 So this would conventionally be how we'd set that switched cam control operation up if we were running an engine with inlet manifold pressure as our load axis.
05:36 Let's close this down now, what I'll just do for simplicity here is I'll disable our output here because we won't be using this further and we'll have a look at the rest of the options for our auxiliary 1 output.
05:48 So we've already looked at our duty cycle table.
05:51 We're going to need to make changes to the axis break points here in order to get our switching to work where we want it to work.
05:58 We also have the ability to control when that output is going to become active or limit where it's going to be active.
06:06 So obviously in the table itself we're going to define the RPM or the RPM and throttle position but we can also define the minimum and maximum manifold pressure that will allow the output to become active as well as a hysteresis for that.
06:20 We also have the ability to use a race time function that is a specific function on the M1.
06:27 It's a little bit beyond our demonstration today so I won't go further into that.
06:32 And we also have activation for minimum and maximum road speed, vehicle speed I should say as well as hystersis around that.
06:39 So basically I've got these all set up purely so that irrespective of manifold pressure or road speed, the VVL system here will switch so on this basis, everything is solely going to come down to this table.
06:54 Alright so what we're going to do now is perform a couple of runs on our dyno and just get broadly in the ballpark of where we want that VVL switching point to occur so let's go into our table here and actually for our first demonstration we can simply set all of our zone points to 0 meaning that irrespective of our RPM the VVL won't trigger.
07:15 Now generally we do want to be a little bit mindful of this because we're going to find that at higher RPM where the VVL traditionally would want to be active, our volumetric efficiency is going to suffer so you're going to see your power and torque nose over and you're also possibly going to find that your engine starts to run very very rich.
07:36 Now personal preference here, there's no real need here to strictly run the engine out to let's say 7500 or 8000 RPM with the VVL not active, because simply put we know that we're going to want to switch the VVL on probably somewhere in the mid range somewhere, maybe between 4000 and 6000 RPM.
07:56 But for the sake of completeness let's get our engine up and running and we'll perform our first ramp run with our VVL non active.
08:02 Alright we've got our engine up to operating temperature so let's get our first run underway.
08:27 Alright we've got our first run complete there we can see we've got 390 horsepower at the wheels, we've also been logging here our air/fuel ratio in terms of our lambda as well as our boost pressure during this ramp run so what we're going to do is we'll save this run and what we're going to call that one is no VVL.
08:49 Alright I'm going to leave that run active up on the screen so the next run that we're going to do is going to overlay directly on top of that.
08:56 Before we make our second run though, let's jump back into our tuning software and we'll head back over to our engine systems and our auxiliary output, we'll come back across to our table here and what we want to do is generally switch the VVL or VTEC on relatively early.
09:13 Now do need to be a little bit mindful of this it does depend on the type of system you are tuning.
09:19 With systems like Honda's VTEC, Nissan's VVL, it does use quite a large quantity of oil so while you might thing to yourself that switching this on at 800, 1000 RPM might be the easiest way to get a good idea of where the 2 lines are going to overlay, that's generally not advisable so again I know that chances are the VVL system is probably going to want to switch somewhere between perhaps 4000 and 6000 RPM.
09:48 So what I'm going to do is set it initially at 3000 so let's jump into or table here and we'll set our initial point at 3000, I don't really need to be too fussy here but we'll set our second point at 3001 RPM, click close, that'll close down and now what we're going to do is just set our duty cycle to 100% there at 3001 RPM so essentially pretty easy to understand here, the VVL system is going to be active anywhere from 3000 RPM.
10:16 Let's get our second run underway, remembering this will overlay with the last run so we'll be able to see the exact trends as they occur.
10:44 Alright our second run there, massive improvement in the top end performance and you hopefully were able to see that occur as we went through the run and that VVL switched in so we've gone from 390 from our last run up to 428 horsepower for this run.
10:58 Let's save this and all we're going to do here is give this a reference and we'll call this VVL 3000.
11:06 What I've done here is I've overlaid the 2 power graphs, one on top of the other but below this we've also got our lambda data.
11:13 And this is important just to keep in mind while we are looking at the performance because we can see here our blue line from our first run where the VVL wasn't switching at all, I've got this nice trend here, we've started at lambda 1, admittedly at the beginning of our run we've really got essentially no boost.
11:31 As the boost comes in we can see that the lambda tracks down nicely, eventually down to our target of 0.78 as the boost continues to climb.
11:38 Now on our second run where we switch that VVL system on at 3000 RPM you can see straight at 3000 RPM or slightly before here, we've got this big rich dip down to 0.84 lambda in our lambda trace.
11:55 Now not necessarily a problem but we do just need to be mindful of this because if we do have a very rich or very lean swing here, that in itself can easily influence our results.
12:05 So if we're seeing those sorts of swings and we know that we're there or thereabouts with the VTEC or VVL switchover point then we've want to come back and just tidy up the fuel map and make sure that we're not influencing our results purely based on an error in our air/fuel ratio.
12:21 In this case, I'm not too worried about that right now, let's have a look at our power graph and we'll see here that in this case, the 2 graphs have actually switched over there at about 4700 RPM and you've got a really clear indication of that point.
12:36 So what we're going to do for our next run and it might not be the optimal point but we're going to set our switchover point at 4700, we'll do another run and we'll see if there's any improvement to be had so let's go ahead and make that change now.
12:50 Now before we actually adjust the axis break points here just a little trick with the MoTeC is that when we do change those break points higher in the revs, it's going to interpolate the finished table which will often result in our cam switching on here at idle which we don't really want so I'm just going to zero the duty cycle table, we'll press A and bring up our axis break points and we're just going to simply set our 2 break points to 4700 and 4701 so nothing particularly unusual there, we'll click OK, those break points will update and now we're going to set our second break point to 100% duty cycle.
13:25 So this is a little bit cumbersome the way MoTeC deal with this.
13:28 Typically we'd have an auxiliary output that was defined for something like switched cam control and we'd simply be setting the RPM point that it will switch so there's a little bit more work with the way MoTeC do this but we're essentially getting the same result.
13:43 Alright let's get our engine back up and running and we'll perform another run.
13:47 Alright all of our engine temperatures are under control so let's get our run underway.
14:15 Alright our third run complete there, we can see we've lost a little bit of power in the top end which is interesting given that the VVL was active in both of those last 2 runs.
14:23 Let's dive in though and we'll analyse this, overlaid with our other 2 runs so we'll save this and of course we're going to give this a reference here with VVL 4700.
14:35 Let's see what we've got.
14:38 So again just taking note first of all of our lambda and we can see because we're switching closer to the point where the volumetric efficiency table has been dialled in for.
14:48 We've got rid of this big rich and lean swing around our target and for the most part our lambda is tracking our target really nicely.
14:55 Obviously we're still relying on our closed loop control to do that for us.
14:58 Let's look at our results here.
15:01 So we can see that our yellow run which is the one we've just done.
15:04 We do basically follow the no VVL quite nicely down through the bottom end.
15:10 Remembering here because we've got a turbocharged engine, we are always prone to a little bit of variation depending on our boost control so that's something we want to watch there.
15:19 In particular here we can see at about 4250 RPM our last run there, our yellow run that we've just done is showing 163 horsepower.
15:28 Our blue run which is where we had no VVL active at all, so essentially at this point the operation is identical, we can see we're actually showing a little bit less power here, 158.
15:40 Now if we're overlaying boost on top of this as well, we'd most likely see that this is simply a result of a little bit different boost response, probably most likely due to the heat in the exhaust manifold so we just need to be mindful of this.
15:53 In this case common sense dictates that the VVL position, our fuelling and our ignition hasn't changed so we shouldn't be expecting to see that change.
16:01 The same goes for our top end performance between our yellow run and our red run.
16:07 But we always will see some minor variation run to run.
16:10 What we are interested in however is if we look at this particular point here, from around about 4800 RPM up to about 5280 RPM, we actually see that our red run does show slightly better performance and this is something we may quite often encounter where we've optimised our VTEC or VVL switchover based on 2 runs, we've chosen the ideal point but then we may find that there is actually benefit here in adjusting our VVL point maybe plus or minus 100 to 200 RPM.
16:45 So it looks like there, potentially switching our VVL just slightly earlier could be beneficial.
16:51 So we can simply test that, let's jump back into our tuning software here.
16:55 We'll hit A for our axis key, let's just advance that point by 100 RPM to start with, well make it 4600 and of course 4601 RPM.
17:05 Click OK to close that table and again we need to update our duty cycle table because it has interpolated.
17:13 Let's get another run underway and see if there's any improvement there to be had.
17:35 Alright we've got our run complete, let's save it and we'll see what that actually gave us.
17:40 Alright so if we look at our results here, and we are starting to split hairs, what I'll do just to clean things up a little bit is we'll get rid of our blue run with no VVL completely.
17:49 And what we're analysing here is our green run which is the run we've just completed, VVL switchover at 4600 vs our yellow run with our VVL switchover point at 4700 and if we click at this point here, 4900 RPM, we can actually see that as a result of that switchover point we have gained a little bit of power switching it a little bit earlier.
18:13 So we still haven't quite matched what we've got in our red run here.
18:18 This is the process we're going to go through here, simply a rinse and repeat of making 100 RPM or 50 RPM incremental adjustments until we essentially get our optimal performance across that VVL switchover point.
18:31 Remembering again we may be chasing our tails a little bit here with some minor run to run variation but it is a relatively quick and easy process to optimise our switchover point.
18:41 Now at this point we've obviously only looked at optimising our VTEC changeover point based on 1 parameter which is our engine RPM.
18:49 if we are going to incorporate windowing and we're going to use manifold pressure or throttle position as a separate axis to that table, the process is identical.
18:58 Generally what I'll do is optimise the VTEC changeover point under high load or wide open throttle and then what we can do is some ramp runs on the dyno at a lower load point and optimise our VTEC changeover point at that lower load point.
19:13 Obviously it should go without saying here if you're going to do that it's critical that you make sure you are very consistent with your lower load point, otherwise you're going to artificially skew your results.
19:24 That deals with our actual VTEC changeover point and as you can see it's relatively quick and easy to complete.
19:30 Now our task's not quite complete just yet because we may need to also deal with some changes to our VE table.
19:37 In this case we are tuning off a single volumetric efficiency or fuel table as opposed to switching between tables.
19:45 The MoTeC M1 doesn't make it inherently that easy for us to do that although it is possible, we've dealt with this just with a single table because this is still the most common way of tuning a switched cam style of operation.
19:57 So let's just have a look at the logging from our last ramp run and we'll see what we can learn from that.
20:05 Now what we've got here is our key parameters, at the top we've got our RPM during that ramp run, we've got our manifold pressure and then of course our throttle position.
20:15 The ones that we're most interested in right now though are our air/fuel ratio or lambda vs our target so here we can see in orange we have our target lambda, in yellow we've got our measured lambda.
20:26 Now for the most part we can see that that is tracking pretty close.
20:29 However down in this area here which coincides with that switching of our VVL system, we can see we've got quite a large lean spike.
20:38 I'll just talk about the other 2 channels we've got displayed here so in red below that we've got our auxiliary one duty cycle so this just allows us to see exactly where abouts our VVL was switching and in this case if I click on that, of course we can see that we're right at that 4600 RPM point.
20:58 The next channel is our closed loop fuel trim so this is sitting in the background just trimming the fuelling to get us onto that target.
21:06 Now at the changeover point here we can see that our lambda, this particular point that I've just highlighted, our peak, 0.91 vs our target 0.84 so we're around about 7% leaner than our target.
21:18 Despite that we can actually see that at that point we already had a positive 5% trim and the closed loop fuel trim actually maxes out here at about 10% before it's really corrected that error.
21:32 Now because it's added so much fuel we then conversely see the fuelling swing richer than our target, not too bad there are 0.81 vs our target of 0.84.
21:41 So we want a way of fixing this.
21:44 Remembering again that all of this occurs right at that 4600 changeover point.
21:48 So let's see what we've got in our volumetric efficiency table.
21:52 And we can see at the moment we've got fairly conventional break points here, every 500 RPM.
21:58 So this makes it a little tricky, we can't really fix this right now because if we add fuel at 4500 RPM, this is going to end up with us too rich prior to that changeover.
22:10 The fuelling right now at 4500, let's just have another look into our logging there.
22:16 We can see if we find 4500 RPM there, we're right on our target there and we've got a slight positive trim, about 3% but we're pretty close to our target.
22:26 So right now, if we close that back down, if we added fuel in at 4500 RPM, we're going to end up with our fuelling too rich.
22:34 So conversely adding fuel at 5000 RPM, it's too late, that's still 400 RPM after our changeover point.
22:42 So what we're going to do here is we're going to hit the A key which stands for axis setup and we're going to simply add a couple of break points here and we're going to match, understandably our VVL changeover point.
22:53 So we're going to add a zone at 4600 and another one at 4601.
22:59 Now I'll click OK and that's going to add those zones here but right now all the ECU has done is simply interpolated.
23:06 So if we run the car as it is right now, we're going to end up with no change actually taking place.
23:12 So what we want to do of course is leave our fuelling at 4600 RPM untouched.
23:18 Our switchover point, 4601, what we're going to do is highlight this and for the moment for our demonstration here we'll just come down to 100 kPa.
23:26 Obviously the process of optimising any of these cells is exactly the same regardless where you're actually running through the table.
23:33 And what we can do is learn from our closed loop trims and we know that we probably needed somewhere in the region of about 10 or 12% more fuel so what we'll enter is 1.1 and then the multiple sign and that gives us a 10% jump in that table.
23:47 So straight away you can see that we've created this quite sharp transition.
23:51 Which isn't normal for a conventional engine but when we are making such a large switch in our volumetric efficiency with our cam switching, this is exactly what we may end up encountering.
24:03 Now what I'm going to do is just smooth that as well, we'll highlight from 4601 out to 5500 and I'll just use the horizontal interpolate there just to smooth that out.
24:14 Now that's not necessarily going to give us a perfect result in one shot but now we've actually got some sites, some break points in that table that are going to let us clean up this error that we've got in our fuelling and we should be able to get a pretty consistent fuelling trend across that VTEC changeover point with no inconsistencies like what we're seeing now.