Sale ends todayGet 30% off any course (excluding packages)

Ends in --- --- ---

Variable Cam Control Tuning: Step 1 ECU Configuration

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

Step 1 ECU Configuration


00:00 - The first step of our process is to configure our ECU so that it knows what to expect in terms of the cam position inputs and we're also going to configure some outputs to control the individual cam control actuators or solenoids so let's dive into our Haltech ESP tuning software and see what we need to do.
00:19 We're going to start by heading over to our main setup icon which we'll find up in the top toolbar.
00:26 And while we're setting up our cam position inputs, we're actually going to start here on the engine setup page and we're going to move over to our trigger tab which we can see up the top here.
00:37 The reason we're starting here is because the trigger setup, the main trigger mode that we choose is essential or critical here to the cam control functionality because this really sets the ECU up to understand what it can be expecting in terms of our cam position inputs.
00:54 So let's see what we've got here and in this case we can see that the trigger type we have selected is Subaru EJ25 WRX.
01:02 In this case model year 06.
01:04 And if we click on that drop down menu we can actually see there are a range of Subaru specific options here.
01:12 And this can be a little bit confusing.
01:14 In particular here we are setting this ECU up on a Japanese domestic market engine as we've already explained and this is actually an EJ20 so this is the 2 litre quad cam control engine, despite that the EJ25 WRX option is in fact the correct one so that's why we've chosen that.
01:32 If you are confused here, this is a point where a quick call to Haltech's technical support or an email will clear up for your particular engine and application what the correct trigger mode is.
01:44 If we don't have this right, the rest of the setup and tuning is going to become quite problematic.
01:50 Now there is a little help box that does open up here on the right hand side as well which gives you a little bit more information about this particular trigger setup, in this case we can see that the trigger or the RPM input is a 36 minus 2 trigger.
02:06 The home or ur synchronisation input coming from the camshaft, in this case is 3 teeth 90° apart which for all intents and purposes is a 4 minus 1 trigger.
02:16 So we know what we are expecting there.
02:19 Little bit more information here as well.
02:20 Down the bottom we have the setup for our trigger inputs, remember this is the RPM signal derived from the crankshaft.
02:28 In this case we can see this is a magnetic or reluctor pickup and we can select the edge, typically as we've already learned this should be falling edge if we've wired it up with the correct polarity.
02:40 The home signal or our cam position signal for bank 1 intake, we can see the information's set up here.
02:48 Interestingly in this case Subaru use a reluctor setup on the crankshaft and hall sensors on the camshaft so not completely unusual but important to know what this setup is.
03:01 We would of course be able to tell by the number of pins on our sensors, 2 wire for a reluctor, 3 typically for a optical or digital input here.
03:12 The edge selected there is falling edge.
03:16 This again comes from the base map for the EJ25 so we don't really need to know too much more about that.
03:23 And of course you can see that the pull up is enabled which we already know is generally going to be essential for a hall or digital input.
03:32 So that's our main setup there.
03:35 Now what we're going to do is come across to our functions, so we'll click on the functions and we can see a complete list of the functions that are currently enabled here up the top.
03:46 And we've got here our cam control function which we can see is already green, it's already ticked.
03:52 Now if you're coming into this fresh and cam control hasn't been set up, it's going to look something like this and you can search down the bottom here, if we type in cam, that will give us our cam control options, we can see we've got 2 options there we've got cam control disabled, this is the continuously variable cam control mode which is what we want.
04:12 Below this we've got cam control switched.
04:15 So this would be for a VTEC style operation.
04:18 Obviously we are using continuous so we're just going to tick that again, it'll turn green and it will appear up in our top search box.
04:27 With the function now enabled we can actually look through the setup.
04:30 So when we click on cam control we've got 3 tabs across the top and we'll go through each one in order, starting with our wiring.
04:38 And before we get into the wiring we do have a few options that we do need to select here so we'll go over each of these.
04:45 These are all pretty self explanatory, first we have the number of banks.
04:49 So in our case with a horizontally opposed engine, we've got 2 banks of cylinders Essentially the same as a V configuration engine.
04:55 Just need to tell the ECU this so that if we are for example controlling just the intake cam, it knows that with a 2 bank type engine we will be controlling 2 individual outputs to control the intake cams on both banks.
05:09 Next we have our mode so we can see we've got intake and exhaust selected here, if we click on the drop down menu, pretty simple really, we can have intake only, exhaust only, or both.
05:19 Obviously quad variable cam control, we want intake and exhaust and lastly we've got the number of solenoids per camshaft.
05:27 Now typically this will be one solenoid per camshaft but that's not always the case, there are some engines such as some of the ones from BMW where they use 2 solenoids per cam, one for advance and one for retard.
05:39 In our case, we're leaving that set to 1.
05:42 Now we can move down to our wiring connections which we can see down in this box here.
05:48 We'll go through this reasonably quickly because a lot of it is repetitive.
05:51 We can start here with our intake cam 1 input.
05:55 So this is the intake cam for bank 1 and we can see that the input there is coming from the home input.
06:01 So in this case we don't have a separate camshaft position sensor in synchronisation or home sensor, the signal for cam position is derived from that home sensor so nothing more to do there.
06:13 We've got the output for the actuator for that intake bank 1 cam and in this case we can see that we've selected injector 7.
06:23 Basically we can use any unused output for our cam control.
06:28 Be that a spare injector or ignition output or a spare digital pulsed output or in the case of our setup, we're using some of the stepper functionality which we'll see shortly.
06:39 Important aspect there is the active state on the right hand side, we can see that this is set to low, basically meaning that when the output is pulsed it will pulse to ground, this is important because we've got 12 volts going to the other side of the solenoid.
06:53 The rest of this is basically a bit of a rinse and repeat, there are a couple of aspects I will just touch on here.
06:59 So if we look at the intake cam bank 2 input, position input.
07:04 We can see that in this case we've chosen synchronised pulsed input 2 or SPI2.
07:11 We've got the edge select sensor type and pull up as well that we need to deal with so basically the same here, we're using a hall sensor, we know that that needs the pull up enabled.
07:23 The edge select there, in this case rising, this again comes from the base map, if you're unsure here, this is again something that Haltech will be able to help you with.
07:31 Likewise we've got the output in this case for bank 2 intake cam, this is on injector 8.
07:38 Moving on, basically exactly the same setup for our exhaust cam 1 input that's on SPI1.
07:46 We've got the same selection there for our sensor type etc.
07:50 The output for the bank 1 exhaust is on step 1 P1 so this is one of the designated stepper motor outputs.
08:00 Essentially exactly the same functionality there, we've got our exhaust cam 2 input which is on synchronised pulse input 3 and our output for that particular cam on step 1 P4.
08:13 So all pretty self explanatory, essentially we can use any of our spare synchronised pulse inputs for the cam position and basically any of the spare outputs for our control.
08:28 Now at this point we would typically like to test our inputs and outputs and make sure they're working.
08:34 Unfortunately with the Haltech Elite at this point, there is actually no test output function which is a little disappointing and we don't have a scope function set up on the ECU either, there's no built in scope function so we can physically see what's going on.
08:50 However as we move through the worked example you'll see that testing the functionality here isn't going to be too tricky anyway, we'll soon know if something isn't right but for now we can't test our setup further.
09:03 What we will do now is move over to our cam control.
09:07 And we'll click on that tab.
09:09 This gives us a range of functionality or options for our cam control and we'll just go through these one at a time.
09:16 First of all we have our target angle max delta rate which is set to 90° per second.
09:23 This is just another way we've got of essentially limiting how quickly we can try and make the cam move and this is just trying to bear in mind that the cam is a mechanical system so we can't advance it or retard it instantly, there is going to be some amount of time that's required for the movement.
09:40 Whether or not we need this functionality really comes down to common sense.
09:44 Most ECUs don't provide this and really we can get around this by just using sensible targets in our target map so we're not actually asking for massive changes cross a very short RPM or load change but in this case you do have the ability to limit the cam target change here anyway.
10:05 Next up we've got our intake frequency so you can see this is set to 150 Hz and in the body of the course typically I mentioned this will be probably more likely in the range of 200-300.
10:17 WIth this particular ECU on our V11 STi I've actually found it's problematic if we go much higher than about 150 Hz and we'll try and demonstrate that as we go through our PID setup so in this case a little bit of a compromise made there in order to get good control.
10:34 Next we have our minimum and maximum duty for our intake solenoids in this case 20-80%, that will be pretty typical, we shouldn't need swings larger than this if we've got our PID control dialled in nicely and also if we're targeting reasonably sensible targets and not asking for massive changes across a very small range which I've just discussed.
11:00 Next we've got the intake cam direction so this just defines which direction we're moving from the rest position, in this case our intake cam is advancing from the rest position so numbers in the table will also be positive.
11:14 We've basically got the same control functionality for our exhaust cam here, essentially identical with the exception of course that our exhaust cam direction is, we're regarding from a rest position of maximum advance.
11:27 So all pretty self explanatory there.
11:29 These numbers also don't need to be set in stone at this point, we can come back of course and try for example different frequencies on our outputs while we're actually up and tuning so don't think that once we've set these we can't adjust them.
11:42 The last tab here which is quite unique to the Haltech Elite is their long term trim function, we'll come over and have a quick look at this.
11:51 So essentially what this does is allows the ECU to learn over time, in this case what the base duty cycle position for the cams are.
11:59 So we see we've got a tick box here, if we tick that we can see that we've got the ability on the left hand side here to reset the learned values for intake 1 and 2, exhaust 1 and 2.
12:11 Likewise what will happen is that the learn values will be set up or learned into a separate table and we can then apply these to our base tables for intake and exhaust 1 and 2.
12:24 Let's just close this down for a moment and we'll have a look at what that actually looks like in our table.
12:29 So if we have a look at our cam control tables here on the left hand side in our ECU navigator we can see with the long term trims enabled we have our long term trim options here, we've got this for the intake and of course it's just a rinse and repeat for the exhaust.
12:46 So what we can see here is if we look on our intake 1 long term trim, this is a 2D table which matches the setup for our base position table, don't worry too much about this, we'll get into this when we get into our PID tuning but we can see that we've got some learned values in here so basically if these aren't sitting all at 0, what it means is that the ECU has learned a little bit of discrepancy between the numbers that we've actually programmed into our base duty cycle table and what the duty cycle actually needs to be to hold the cams in the steady state so this is actually quite a good way of fine tuning that and over time basically we'll get a table of values built up here and then once we've comfortable that all of the learning's done, we can come up here and we can click the apply to base table and that will then make any changes required to the base table.
13:36 For simplicity for our tuning purposes here we're just going to leave that disabled.