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 Standalone Tuning: Step 1: ECU Configuration and Testing

Watch This Course

$229 USD

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 1: ECU Configuration and Testing


00:00 - The very first step of our 10 step process is to begin with the configuration of our Ecumaster ECU, this is the process where we're essentially telling it what inputs and outputs are connected to it, making sure that all of the inputs are calibrated and reading correctly and making sure that all of the outputs are correctly assigned and are again operating as expected.
00:22 Now we are starting here from a base map that was supplied by Ecumaster so some of the work here is done but we're going to go through the process anyway.
00:32 And it's always a good idea to be able to do this from a complete clean slate so that you know how to do all of this and you can make sure that you're not relying on a base map that may end up having errors baked into it.
00:45 So we'll head across to our laptop software and we can see we've got a menu structure down here on the left hand side of the Ecumaster software and this is where we're going to be focusing our energy to start with and we're essentially just going to work down this menu structure in order so we can see that the first option that I've just closed down there is our sensor setup.
01:06 Let's click on that and have a look at our options.
01:09 Now we'll start by clicking on our analog inputs here and this gives us the option to set up all of the analog inputs to the ECU and when we are setting up a analog voltage zero to five volt sensor, we're going to want that particular input set up, as we can see here, with a one megaohm pull down resistor.
01:29 At the bottom here we can see for our CLT coolant temperature and IAT our intake air temperature sensor we've got the ability to select a 2.2 K pullup resistor, that's the little tick box.
01:42 It's important to understand here that under most installations we will want that box ticked, otherwise the sensor won't give us a reading, however if you are piggybacking the ECU in and you're sharing an intake or coolant temperature sensor with a factory ECU, you'll need to disable the pullup resistor.
02:00 In our case we've got no work to do here so we'll close that back down.
02:04 The next parameter that we'll have a look at here is our oxygen sensor.
02:07 We'll double click on that to bring up the parameters.
02:10 We can see that we've got the ability here to select a variety of different sensor types, if we click on that we have narrowband, LSU 4.2, 4.9, we can use an external controller, Ecumaster, lambda to CAN or in this case there is also the option of the Haltech lambda controller.
02:26 The option there is going to depend how you've installed the ECU.
02:28 In our case we did already have a Haltech WB2 wideband fitted to the car so that is why we're using the Haltech option.
02:35 We also need to select our fuel type here, so in this case this is to display the units in air/fuel ratio.
02:42 We are running on gasoline so we'll leave that selected.
02:45 If you are running a v configuration engine, you do have the ability to also install a second lambda input.
02:52 In our case we're not using that.
02:54 So we can close down our oxygen sensor input.
02:56 Next we're going to come back over to our menu structure and the next parameter we'll look at here is our TPS so our throttle position sensor.
03:04 We are running drive by wire in this particular car and we'll go through our drive by wire setup in just a moment however we still need the driver's accelerator pedal position set up.
03:15 So here we can see we've got the ability to select our minimum and maximum voltages from the input for our throttle position.
03:24 And this just defines our zero and 100% opening position so if we just drag our graph log up here, I've actually got our TPS voltages being displayed here.
03:35 So we can see what we've got.
03:37 Right now we can see our voltage is sitting at 0.67 volts, that's our minimum so we want to make sure that that is our value here which we can see it is.
03:46 We can now go through to wide open throttle and we just want to take note of our maximum voltage there which we can see is sitting at 3.96 volts.
03:56 It's important when we do this to make sure that we do go through to full throtle and push quite aggressively on the pedal, making sure we're getting a realistic value.
04:04 It's actually just dropped to 3.94 volts so it's moving around, there not too much variation there so let's enter that as 3.96.
04:12 And that will configure out throttle position from zero to 100.
04:16 We can also look at that, our black parameter here is our throttle position, we want to just make sure that that is in fact moving between zero and 100% as we move our pedal.
04:25 We want to also make sure that it is moving smoothly.
04:28 And we can see that's the case so we'll just shrink our graph log down a little bit again so we can carry on with our calibration.
04:35 We'll close down our TPS setup and at the same time, considering we've just been talking about TPS, let's go to our tools drop down menu, we can see down the bottom here we have our DBW or drive by wire calibration tool.
04:48 Now it's important to mention, depending on when you're watching this worked example and what firmware you are running, this was a relatively recent firmware upgrade so just make sure that you are on the latest firmware available if that drive by wire calibration tool isn't available.
05:05 We can select this and all we want to do here is press start.
05:08 This is a relatively time consuming process, there's no input required from the user though, basically it's going to drive the throttle body fully open, fully closed, it'll define the maximum opening and closing voltages, it'll also configure the PID control algorithm.
05:25 We've already got that done so there's no need to go through that process again.
05:29 It's just a simple case of clicking start, following the on screen prompts and it will do all of the heavy lifting there for you.
05:35 It is worth mentioning here at this point as well that any time we make any calibration changes then these need to actually be burned or flashed into the ECU.
05:44 We can do this in the tool menu up here in the top left, you can see we've got the little option that says make changes permanent.
05:51 We can click on that and that will write these changes into the ECU.
05:56 Let's move down and the next parameter that we're interested in looking at here is our intake and coolant temperature.
06:02 Obviously two of the more important inputs to the ECU.
06:06 We can manually calibrate these but there are some pretty simple setups that we can go through, let's start with our intake air temperature sensor wizard.
06:14 And what we can do here is choose from a drop down list of pre defined options, in this case we are using a GM intake air temperature sensor.
06:23 Important to mention here that this is actually an additional sensor that we have added, so this is not the factory Subaru intake air temperature sensor.
06:32 Once we've selected that, basically the job is done there and we can make sure that our intake air temperature is reading correctly.
06:40 We'll just go over our coolant temperature before we do that, that's exactly the same process here, just choosing from one of the drop down menus.
06:46 Particularly for coolant and air temperature, there are only a handful of common calibrations for the sensors that we'll see so it's most likely you will be able to choose this from the drop down menu.
06:58 As a sanity check, once we have selected our intake air temperature and coolant temperature, it's always a good idea just to have a look and make sure that these are reading sensible values.
07:10 Now of course at this point we've got our engine up to operating temperature, it has actually been running prior to filming here so under normal conditions, we'd be doing this prior to the engine running and we want to make sure that our coolant temperature and our intake air temperature are reading pretty close to what our ambient temperature is and they should also be within perhaps one or two degrees of each other.
07:32 That's obviously not the case here because we have run the engine but it's always worth checking before we move on.
07:38 The Ecumaster black does include a built in MAP sensor so as long as you're operating within the measurement range of that MAP sensor, that's a sensible option.
07:46 So we can see here that we have got the use built in MAP tick box ticked.
07:51 Alternatively you can use an external MAP sensor with a custom calibration, whatever you require in order to span the range of manifold pressure you are going to be experiencing.
08:03 We can see if we come down here to baro sensor, we've got the option of do not use which we've got ticked at the moment.
08:09 If you have chosen to use an external MAP sensor then you can utilise the internal MAP sensor on the ECU for barometric pressure, or alternatively you can use an external baro sensor.
08:19 In our case we're not using barometric air pressure correction so we can close that down.
08:24 If you do want to use custom calibrations this is where we can select those, there is also the ability to filter the MAP sensor as well.
08:32 We'll close that down and we can come down to our pressure sensors.
08:36 The only pressure sensor other than our MAP sensor which we've just covered that we have got fitted here is a fuel pressure sensor.
08:43 It's an external sensor that we've added into our fuel rail here.
08:48 Now we can click here on our parameters and we can look at our individual sensors.
08:53 In this case you can see that most of the sensors that we've got here, we've got selected as none.
08:59 Of course our fuel pressure sensor we have selected with analog input number four.
09:05 It's just wherever we've wired that in.
09:07 We can also use a filter just to smooth the sample out there.
09:11 So we can close that down, we've got our fuel pressure sensor selected and we can click here and manually select our calibration for our fuel pressure.
09:20 However we can also use the sensor wizard so we'll double click on that and what we want to do here is select the sensor that we are using, in this case we've got a 10 bar sensor which is a relatively common sensor.
09:32 We've selected that for our fuel pressure calibration, you can select whatever calibration you're applying that to.
09:38 We have the points for this particular sensor.
09:41 In this case our voltage zero point is 0.5 volts, our voltage one point is 4.5, relatively common for some for some of the popular Honeywell style sensors.
09:50 And then we've got our pressure for our zero voltage point, zero bar and at our pressure one point, 10 bar in fact this is actually slightly higher than that, we are at 10.3 bar so we're going to apply that, click OK and now if we come down to our fuel pressure calibration, we can see that that change has been applied.
10:10 So basically just two ways of achieving the same aim.
10:13 And again once we've done that we can check that our fuel pressure being displayed down here is correct.
10:19 At this point we're reading 1.5 bar but this is just residual pressure in the fuel rail, we can of course test that once the engine is up and running and make sure that we're getting what we'd expect, around about three bar differential pressure.
10:32 Alright we can close down our pressure selection there.
10:35 We've also got the option to add additional temperature sensors in here for any of these parameters.
10:41 We're not running any additional temperature sensors into this so we can close that down.
10:45 We'll come down to our other sensors here, nothing that we are running here but again you can click parameters and we can see the different sensors that we can configure in that particular option.
10:57 So at this point we're done with our sensor setup, we want to come down now and have a look at our fuelling.
11:05 We're going to start by looking at our general options, we'll double click on that and we can see there's some basic parameters here for a start we have our engine displacement.
11:14 It's important to have this accurate given that the Ecumaster EMU Black does work essentially on a volumetric efficiency based fuel model principle.
11:22 We've then got our fuelling type and if we click on our drop down menu, we can choose speed density, Alpha N, Alpha N with map multiplication, Alpha N with MAP based ignition and then Alpha N with MAP multiplication as well as MAP based ignition so that last one in particular we would be using that for the likes of a turbocharged individual throttle body engine.
11:44 In the majority of instances though, speed density is going to be our parameter that we'll choose there.
11:50 If you do want to run barometric correction you can enable that here.
11:54 We've also got our injector size here, 560 cc per minute injectors so this just comes from our base Subaru STi map, important again for accurate fuelling to make sure that that is set correctly.
12:07 We've also got the option there to use MAP for our lambda target so it's important here, we'll move into this as we get through our table configuration by making sure that our air/fuel ratio or lambda target tables are set to our desired lambda targets and we'll be tuning the VE table to suit.
12:25 We can now close down our fuelling general and I just want to come down through one of our other corrections here which we can find in the corrections section of our fuelling menu.
12:35 There are a variety of corrections available, the one I just want to focus on here for a moment is our IAT correction so we'll open that up.
12:42 Now because the Ecumaster EMU Black works on a volumetric efficiency based fuel model, it is important to understand that intake air temperature is automatically compensated for in the main fuel equation.
12:56 What this means is that we don't typically expect to need much in the way of corrections in this table which is why you can see at the moment they're all set to 100%.
13:06 Now what we want to do ideally is start with this table set like this and we may find that in some situations the automatic compensation for air temperature may be a little bit overbearing, we may see lambda variations as our air temperatures get very high or very cold.
13:24 If that is the case and the automatic compensation for air temperature is not doing the job to our satisfaction then we can come back and address this IAT correction table.
13:34 The flipside though is that we set this table to what we would use in a traditional fuel model where we're varying the fuelling by around about 2.5, maybe 3% per 10°C air temperature change.
13:47 That's going to be essentially doubling the compensation that is being applied and we're going to have some really strange results, we're not going to be able to track our lambda properly so just worth touching on that and making sure that those numbers are all set to 100% before we get started.
14:02 We want to come down to our injectors and first of all we've got an injector wizard again allowing us to choose the injectors that we are using from a drop down menu here, or alternatively you can enter the data specific for your injectors.
14:17 In this case, what we do want to consider here is our injector dead time offset or dead time or offset values which we can see in this table.
14:27 Simple 2D table there relative to our battery voltage.
14:30 Now this will be pre configured if you have chosen an injector from that drop down menu.
14:35 We'll close down our dead time table there and we'll just come back up to our injector phase and first of all we have the ability to select our injection angle control.
14:46 This can be a table for either start of injection or end of injection.
14:49 Or a single value for start of injection.
14:53 While it's not set in stone, generally it's most common to use end of injection table for that particular parameter but we can also then define the phasing of the four injectors that we have got connected to this ECU.
15:06 We'll close that down now, we'll close down our fuelling and we're going to move down to our ignition.
15:14 What we're interested in looking at here is our coil setup and we can start by looking at our ignition outputs.
15:21 First of all we have our spark distribution here, we can see that we have coil selected because this is a coil on plug setup.
15:27 Alternatively distributor or dual distributor.
15:30 We also need to select our coil type so whether these are a coil with a built in amplifier or whether we're using an external igniter module.
15:40 These are built in amplifier style coils so we don't have anything to do here.
15:44 Then for our four ignition events we can select the ignition output that we have wired that to, the one that will be used.
15:54 Once we've got that set up we can close that down and we also will just mention here our coil dwell wizard.
16:01 So again this is where we can choose our coils from a set of drop down options and if our coil is included in here, this will automatically set up our coil dwell.
16:12 Alternatively we can come across to our coil dwell table and do this manually.
16:17 Now the dwell will depend on the specific coil you're running.
16:21 It's usual to be in the region of about three milliseconds, plus or minus a little bit at 14 volts, in this case we can see that the dwell we've got set up there at the moment is actually at two milliseconds.
16:32 It's important to make sure that this is correct because if it is set incorrectly we could have insufficient spark energy or alternatively we could end up damaging the coils themselves.
16:41 Alright let's close our dwell table down and we can shrink down our ignition.
16:46 The last aspect we're going to have a look at here is some of our outputs so we'll open up the structure of our menu here.
16:54 So a couple of the options that we are interested in here, let's double click on our coolant fan so first of all we can set up the activation temperature and the hysteresis so in this case our fan will come on at 90° coolant temperature and it will need to drop down by 2° of hysteresis before it'll switch back off.
17:11 We also need to define which output we are using and in this case auxiliary two is the output we're using.
17:18 We have the ability here to invert that output and this is quite a quick and easy way to test the outputs here.
17:24 If we click on this, and we won't be able to hear it on our audio but audibly we should be able to hear our fan running and we can visually check in the engine bay and make sure that is the case.
17:35 As long as we're happy with that we can switch it back off.
17:37 There are a range of other parameters available here for our fan operation.
17:41 Particularly if you are running a pulse width modulated fan control, in our case we're not going to dwell on any more of those parameters, we can close those down and we'll double click on our fuel pump.
17:52 Much the same here, a little bit simpler, we've got the setup for the output we have chosen, in this case auxiliary four.
17:59 In this case the fuel pump will prime for two seconds when we key on just to build pressure and again we can use the invert output function here to test run the fuel pump, in this case I can hear it running, straight away we can see our fuel pressure has jumped up to 2.8 bar just to confirm that it is in fact running.
18:16 The output will depend whether we need to be inverted or not under normal operation will depend on the way the output or relay for that particular output is triggered, whether it needs to be triggered to ground or whether it be triggered when it's in the high position, it will just be dependent on how the relay is activated, very simple to test there though.
18:37 Alright we'll close down our fuel pump and we'll set up any other additional outputs in exactly the same way there.
18:45 Now there is another way we can test our outputs as well, if we come to our tools drop down menu here and click on that, we can see at the top we have our test outputs option, alternatively that option is also available directly from our tool bar, we can click on the little icon here.
19:01 Now this will allow us to test any of the outputs, we can select the output we want to test here from the drop down menu.
19:07 In particular we can use this for testing our injector outputs as well as our ignition outputs, making sure that they are firing on the correct cylinder before we go to the trouble of trying to start the engine for the first time.
19:19 In this case we can set the number of cycles, so how many times that output will be triggered and of course the on time versus the off time.
19:27 We do ned to be a little mindful with this, with both fuel and ignition outputs because if we set an excessive on time, we do risk either filling the engine up with fuel if we're operating a fuel injector, or alternatively we could end up doing damage to the coils.
19:45 So the idea here is we'll set these up with conservative values, we will test the output.
19:50 With the injectors we can audibly listen to them clicking, likewise we should be able to audibly hear our coils clicking away as well as it fires a spark and this just allows us to then confirm that all of the outputs are correctly wired and correctly allocated to the right cylinder on the engine, this is going to fast track the further steps of the process when we finally get to a point of starting the engine.