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

Ends in --- --- ---

Practical Standalone Tuning: Step 1: ECU Configuration and Testing

Watch This Course

$229 USD $114.50 USD

Or 8 easy payments of only $14.31 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 - Alright for the very first step of our 10 step process, we're going to go through and configure the ECU to suit our vehicle, our engine, our inputs and outputs that we're going to be using and essentially rest and make sure that everything is working exactly as we expect.
00:14 Our life is made a little bit easier here because this is a plug and play ECU so essentially we can just select the base map for this vehicle.
00:23 The car is essentially standard, that should do most of the heavy lifting in the background, set us up ready to the point where we should be able to start and run the engine.
00:32 However, just in case you're dealing with a wire in or something universal, so that this worked example is going to be relevant to a wider audience, we're going to go through some of the processes anyway.
00:44 So for a start, let's dive into the PC Link software for the G4X and for anyone who's come from the existing G4, G4+, this should start to look pretty familiar.
00:54 And what I'm going to do just very briefly is show you how you can manipulate the display to make it suit your own requirements.
01:04 As we can see we've got quite a large area of our screen real estate that's essentially doing nothing so let's have a quick look at how we can change this, I'm not going to get too in depth here because you can do this to suit yourself but what we'll see here is each of these list of channels.
01:20 We can see there is a little X up in the top right corner here.
01:24 So at the moment this is in the locked position and if we just left click on this little X you can see that now it's open, we can now manipulate and move it around.
01:34 So for example what I'm going to do is just make a little bit more space here so we can display more of our fuel and our ignition tables so all we need to do here is just hold down and we'll bring that down, maybe not quite to the bottom, that allows us to manipulate the channel list and where we want to locate it.
01:53 Likewise you can do this with everything else so let's just jump ahead here a little bit and we'll move the rest of these down.
01:59 Alright so we've manipulated the screen layout a little bit there just to get a little bit more screen real estate and this makes a little bit more sense but again the actual set up that you're going to want to use is totally up to you and what you're trying to display.
02:13 And let's have a quick look at a couple more elements here.
02:16 So you can see I've got a numeric display here for my lambda target and below this I've got lambda one so this is a setup that's going to work really nicely if we've got a wideband input to the ECU.
02:29 That'll give us at a glance the target lambda vs our actual current running lambda so this is something I would use a lot when I'm doing my steady state fuel tuning.
02:38 In this case we don't have the benefit of an onboard lambda sensor, we're going to be relying on our dyno for that information so this is a little bit less relevant and we could remove that if we wanted, likewise we can see here I've got my closed loop lambda fuel correction, so this gives me an indication if I'm running in closed loop control, from that wideband I can see what sort of level of correction is being applied and obviously that's again not relevant because we don't have that wideband.
03:05 If we want to remove anything, we can just click that little X and it will just ask us to confirm that we want to get rid of it, click OK.
03:12 Let's see how we can manipulate this particular display here of our lambda and our target.
03:16 We right click on that and we go down to properties and that's going to show us the two channels that we will be displaying here, of course our lambda target and our lambda one.
03:27 And we can just click on lambda one, let's say we didn't want that there, we'll click X, get rid of that, click OK and now we can see that we're just displaying the lambda target on its own.
03:39 So again all of these we can manipulate them, we can add if we want, if we right click somewhere that we don't have a gauge or a channel list at the moment, we go new view and we can see that we've got all of these options on how we want to display anything so a lot of flexibility there.
03:55 Let's just come up to our fuel table which is what we're looking at at the moment.
04:01 So at the moment we can see that we're looking at this as a numeric display.
04:05 Couple of the really important shortcut keys that we're going to want to keep in mind here and we'll learn about more of these as we go through.
04:14 F will take us straight to the fuel table, I will take us through to the ignition table, F to go back and these are the two key tables obviously we're going to be dealing with a lot.
04:25 Nice little feature in the Link ECU though is up in the top left corner we can see we've got this green back arrow.
04:31 So that will take us back to the previous table, now the green forward arrow, we can click on that and that will take us through to where we were so a few ways that we can manipulate or move around.
04:43 Now the other element that's important here is there is this little 3D table view here or graphic view.
04:49 So we can click on that top left corner, it'll give us what is currently looking like a pretty ugly fuel table.
04:57 We can manipulate that around and using our arrow keys basically get a sense for the general shape and trends within that table.
05:06 I always find it's a good idea to be able to view in both numeric and graphical formats.
05:11 Often, particularly when we're just looking at a table of values like this, particularly if we don't have any colour grading attached, it's really easy to overlook a mistake and by that I mean let's say we were looking at this cell here, we've been going through and entering all these values and we've got a value of 63, let's say accidentally we enter a value of six there.
05:33 Now other than the fact that currently that's highlighted because I've made a change, we'll press F4 and we'll store it, if we're looking at all of those values, really really easy to miss that one value and not see that you've got a potential mistake there in your fuel table.
05:48 If we look at it graphically though and this will actually require a little bit of work to see this, but we can see right here we've got this big hole in the table and that is indicative that we've got a mistake that we've made there so generally much easier to see that in a graphical format than looking at numbers alone.
06:08 Now another way that we can help bring our attention to a mistake like that one that I just mentioned there is by using the colour gradient on the fuel and ignition tables.
06:19 So we can turn that on by right clicking here and if we come down we will see that we have colour gradient visible or the hot key, shortcut key H so let's just select that manually from that list.
06:33 So now we can see that we've got some colours associated with this table and now unlike before we've got a really quick and easy way of seeing that that value of six definitely is not right.
06:46 Another element that's worth keeping in the back of your mind because often we will make a change that we didn't like or maybe accidentally as this one, we can use the control Z to undo that and that's taken us back from a value of six back to the original value of 63 in that table.
07:02 The next element that I want to focus on here is the ECU settings menu and we can access that just by pressing the escape key and we can see that that menu then pops out from the left hand side.
07:12 We can choose to pin that so it's permanently in location, and this really comes down to personal preference and the amount of screen real estate you've got.
07:21 Alternatively we can press the escape key to bring it up, escape key will then shrink it back down and hide it.
07:27 There's a few ways of navigating through this ECU settings menu, you can see at the moment we've got this sort of structure where we can find for example fuel, we can expand on that, maybe we want to look at our fuel setup so we can expand on that and then main setup, that will take us to what we're interested in.
07:46 So that's one way of navigating that menu structure.
07:49 The other way which I find I use a lot is by using the auto fill search box up the top here.
07:56 So if for example I wanted to look at fuel main which we were just in, and maybe I don't know exactly where I'm going to find this in the menu, we can just start typing and I'll enter the word fuel.
08:07 Everything that has fuel in its name then autofills there.
08:13 Go a little bit further and we were after fuel main so of course if I enter main we've only got that one option and that brings us back to where we were so really quite a flexible way of working with that ECU settings menu, depending on your familiarity with the ECU.
08:29 Even if you don't know exactly the name of what you're looking for, it's generally pretty easy to narrow it down and as you get more familiar with the ECU, working your way through this menu structure becomes incredibly quick and easy.
08:43 I personally like the way that I can hide it back down when I'm not using it as well.
08:47 Alright now that we've had a very brief tour of the software, and there will be more of this tour going on as we go through our worked example, let's start by loading in our base map.
08:56 And this is the benefit that we have here, given that this is a plug and play ECU.
09:01 If you are starting from scratch, don't worry, we'll be still covering off every element of the setup so you can configure this basemap to suit.
09:07 And a word of warning here, as with any basemap, just because it is coming from the ECU manufacturer, that still doesn't give you free reign to just assume that everything has been set up to suit your application so you absolutely do still need to go through and check, double check and confirm that everything suits everything that has been done to your particular engine.
09:27 Alright so what we'll do is we'll come up into the top left corner and we'll select file and then we'll select open.
09:34 This actually takes us straight to the base maps folder here and what we want to do, we can just enter Subaru and that will narrow everything down here.
09:44 So we are version 7 STi here so let's just open our version 7 map, it'll ask us if we want to open the file and download the settings to the ECU because we are online so we will click yes and that will download everything and then asks us if we want to carry out a store and that's exactly what we've done here.
10:07 So at this point we should be in a position where we can actually start and run the engine, again this will depend on how close to stock form the engine configuration is.
10:19 Particularly when it comes to the likes of the injector size, fuel pump etc, that can have a really big impact on whether or not you're just going to be able to turn the key here and get it up and running.
10:31 However, for our purposes, we're going to go through this process in a little bit more detail so let's look at that.
10:37 Alright let's start by looking at our configuration, so again if we press escape and we open up our configuration menu structure and what we want to do here is click on configuration.
10:49 So again a lot of this will be done for us because of this base map but we'll just quickly cover it off.
10:55 We start with our number of cylinders, obviously pretty straightforward here and also the fact that we are dealing with a four stroke engine.
11:04 Connection speed is worth mentioning a little bit.
11:06 The G4X seemingly is a little bit sensitive around the connectivity to our laptop and you may find that if you are having the ECU drop out of communications, if we go into this, which we can just double click, you can choose between fast and slow.
11:22 I would absolutely always start with fast which is default but if you are having communication issues, dropping that back down to slow can help you.
11:31 Custom TDCs here for odd fire engines, important, not really relevant for the majority of engines.
11:39 Coming down further, nothing we really need to worry about here, we can give a description to this particular vehicle so let's call it Subaru version 7 STi rally.
11:53 So this will just give us a bit of an idea of what we're actually dealing with here.
11:57 We can if we want enter the vehicle identification number or alternatively a registration plate, whatever you prefer and you can also enter some text here in your memo text which is the next option down.
12:11 This will allow you to add a little bit of information about maybe the configuration the ECU setup etc so that it can jog your memory if you're coming back to this at a later point.
12:22 Lastly for this, if we double click on our firing order table, we've got the ability to enter our firing order, again this is pre defined for us here so no need to change that.
12:32 Again we can press that little green previous menu icon that's going to take us back to where we were.
12:38 So that's our base configuration there dealt with.
12:41 Again you can make modifications to this if you are installing this as a universal wire in ECU.
12:47 Next we're going to have a look at setting up and testing some of our inputs and outputs, we'll start with our inputs and what we're going to want to do here is come down to our analog inputs in our menu structure and this is an area where there are some subtle differences between the G4X and the G4+, we'll work through that.
13:07 So let's open up our analog inputs menu structure.
13:10 So we can see in this case we've got some pre defined inputs here for barometric air pressure, engine coolant temperature, exhaust pressure, etc so if we are adding one of these sensors, we can start straight there.
13:23 So for example let's have a look at our engine coolant temperature sensor.
13:27 So the way we go through this is that we first of all define what analog temperature input that sensor is on, obviously in this case analog temperature two.
13:37 We can then set an error low and error high.
13:41 And this is just going to be used for the ECU to default to what is in this case the error value, we've got that set to 100°C.
13:50 If there is a faulty sensor, if maybe there is a wiring issue and the sensor input to the ECU either goes open circuit or shorts to ground, basically that will put us above or below these maximum values.
14:03 Default values here are generally absolutely fine.
14:06 There is also the ability to adjust your pull up resistor, we can see that that is set to a 1 kiloohm internal pull up to 5V, we can double click on this.
14:16 So we can turn this off, that's going to be important if you want to piggyback a NTC style thermistor temperature sensor and share that signal with the factory ECU.
14:28 Probably rare situations where that's going to be the case but in that case you would want to turn off that pull resistor.
14:35 We also have the option of choosing a 10 kiloohm pull up resistor.
14:38 1K would be the norm though there.
14:41 So we've got our error value of 100°C and then we have the actual calibration for this.
14:47 So in this case this is a standard Bosch NTC sensor.
14:52 Double click on this and we can choose from a fairly healthy list of pre defined calibrations there.
14:59 Bosch NTC is going to be pretty much one of the most common.
15:05 You can also set up your own calibration tables if you've got something pretty unique that you need to work with.
15:11 In this case, we haven't so we're good to go here.
15:15 Alright so that's our analog temperature for engine coolant temperature.
15:19 Let's press escape again and what we want to do here is have a look at our intake air temperature.
15:26 So we can see our intake air temperature setting is here so let's double click on that.
15:31 Now this is actually a bit of a problem for us because what we can see at the moment is that our IAT in our gauges down the bottom here is sitting at 100°C which as you can see here, that is our error value.
15:46 So the reason for this is that at the moment we aren't using the temperature input that is defined for this, analog temperature three which we can see up here.
15:56 This is because we're using the existing wiring for the air temperature sensor fitted in a mass airflow meter.
16:02 This is problematic for our purposes because having it pre turbocharger, pre intercooler like this doesn't really give us the information we want, we really want the air temperature as it's entering the cylinder.
16:16 So this is an area where if you don't already have an intake air temperature sensor fitted to the inlet manifold, and this will depend on your engine generation, you're going to actually need to add your own temperature sensor which we've done.
16:27 We've got that in the outlet side of the intercooler and we've wired that up to the mass airflow sensor so what we want to do here is choose the appropriate channel.
16:38 So let's just come down here and we can see that at the moment, analog temperature one is set up as a mass airflow sensor temperature, that's the one that we are going to be using for our main IAT input, for the reasons I've just explained.
16:53 Double click on this and it comes up with a warning saying general purpose temperature one is already connected to AN temp one, would we like to disconnect? Well yes absolutely we would like to do that, thank you very much.
17:03 And our job is done, straight away we can see now, we're actually getting a valid reading.
17:08 This is one of those areas where there are a couple of challenges thrown up for us because we don't know the calibration of the sensor, we need to be mindful of that.
17:18 At the moment, as we can see from our engine coolant temperature, I have had the engine up and running today.
17:25 So a nice way of getting a sanity check on this is when we haven't had the engine running, particularly if it's been overnight or something of that nature, then understandably when we power everything up and we haven't started the engine, we would expect our engine coolant temperature and our inlet air temperature to match, probably within a degree or so anyway, and ultimately they should be pretty comparable to what we'd expect our current atmospheric temperature to be.
17:50 So it's a good sanity check to go through just to make sure that everything does make sense.
17:54 In our case, the calibration for this sensor isn't actually Bosch NTC so we'll open that up and we'll just cycle up, this one is a Delphi sensor from memory so we will choose our Delphi IC IAT.
18:08 And you can see that that also changed the value being displayed there.
18:13 So this is the process we use for our analog temperature inputs.
18:17 Really not too difficult here, it's just a case of choosing the source for, again we'll open up, for these pre configured inputs here and going about it that way as opposed to just choosing a random analog temperature input and then defining through that input what it's going to be doing.
18:37 Let's have a quick look at a couple of other inputs here, so we'll come back across to our menu here and we can see we've got our manifold absolute pressure sensor.
18:46 So let's just click on that and we can see that that is configured to analog volt one.
18:51 In this case this is correct, again because it is plug and play.
18:54 We've got the same details really which I won't cover in too much detail here just in terms of our error values low and high.
19:02 We've also got our error default value and in this case the calibration which is the important part, you can see that that is Subaru version 7 to 8.
19:10 As I mentioned, this does limit our maximum boost but that's absolutely going to be fine for our application.
19:17 Double clicking there, we can choose between just about any of 1000 different sensors that would be commonly used.
19:25 In this instance as well, just the same with our engine coolant temperature and our inlet air temperature, we do need to be mindful of choosing what we can in terms of a sensible value.
19:34 Difficult with a manifold absolute pressure sensor because the entire calibration of the engine and the way it runs is going to be dependent on that MAP value so it's going to be impossible to get one that'll fit all purposes if we do genuinely have a map sensor failure.
19:50 What I'd probably suggest here is somewhere around 100 kPa at least, that should be enough to be able to limp the car along.
19:58 If we chose 30 or 40 kPa something, we might see it idle for example, we're not going to have enough fuel, the thing's going to be running too lean to actually be able to limp it home if we needed to.
20:09 Engine coolant temperature though, I'd always be choosing a value that should be high enough to trigger our fans to run just so we don't overheat it which is why you'd have noticed that that was set to 100°.
20:19 Now once we have chosen that MAP sensor though, what we also need to do is go through one little task here, we'll come up to our ECU controls menu top left here and what we want to do is cycle down to MAP sensor calibration, that will ask us if we want to calibrate the MAP sensor, we want to click yes.
20:35 This is something we only need to do when we are doing our first setup of the ECU and that just calibrates the sensor in conjunction with the onboard barometric air pressure sensor.
20:46 Worth mentioning at this point, any time we do make a change, to make sure that change stays permanent and is stored, we want to press the F4 key or alternatively if we come up to ECU controls and click on that menu we can find here, store to ECU, control S will also do that.
21:04 So that's going to give us the same result.
21:06 Alright so that is the process we're going to use with our input setup and testing.
21:11 Basically, process of setting up any individual inputs that we've got and basically testing them to make sure that the values that we are seeing on them do make sense.
21:20 Let's move on now and we'll have a look at the output setup and testing.
21:24 Alright let's head back across to our menu structure, we've dealt with our analog inputs, this time what we want to do is come up a little bit further and we're going to deal with our auxiliary outputs so let's expand out the menu structure and have a look at what we've got there.
21:37 Alright so at the top we've got alternator control which I'm not particularly worried with, we don't have a electronically controlled alternator in this vehicle.
21:44 Check engine light through, let's have a look at that and we'll click on our check engine light.
21:49 We can see that that is wired up to auxiliary four, sorry auxiliary five and that is wired to the factory gauge cluster obviously right in front of me.
21:58 Really there's no need, strictly speaking, to have a check engine light but it will bring your attention to the fact that maybe there is a fault, something's wrong and then you can plug and have a look in a little bit more detail at what's going on here.
22:12 As we can see with the engine running here, the check engine light is on when fault codes are active.
22:20 So we won't deal with that anymore, let's go back into our menu structure here and we want to come down to some of the more common outputs that we would be setting up.
22:29 For example here, we've got an engine fan so let's click on that and see what our settings are.
22:35 Alright so looking through our settings here we've actually got the ability to set up multiple fans, in our case we've got two fans set up.
22:43 So if we come down to our engine fan one output, we can then define what output on the ECU that is actually connected to.
22:52 In this case we can see that that is connected to injector five output, we've got eight injector drives on this ECU, obviously we're only using four at the moment.
23:01 If you want to move this around though, of course you can, double click and that will give you the full list of your outputs that are available.
23:07 So in our case, injector five and, what's always a good idea with any of our outputs is just to test and make sure that it is functioning as expected, so we can do that by clicking on our aux fuel number five test and of course we want to turn that on.
23:21 Now hopefully you can hear the fan relay did click in, I can audibly hear the fan running now so that's our first fan here.
23:30 We can see that the temperature there is set to come on at 96°, personal preference here, let's just drop that down a little bit, we'll take that down to 92°.
23:39 At the same time if we come down one more option, we've got our fan one hysteresis so this is simply the amount the temperature is going to need to drop for the fan to switch back off so the operation will be that it will hit 92°, the fan will switch on, then needs to drop by the hysteresis value of 1°, so back to 91 before it is switched back off.
23:59 That hysteresis just stops the fan cycling on and off really quickly.
24:02 I'm going to actually set that to 2° meaning we'll have to drop back down to 90 in order for that to switch back off.
24:10 We can also set our engine fan one to come on with the air conditioning.
24:14 That will be typical unless you've got an auxiliary fan purely for air conditioning.
24:19 So we can see that is set to yes.
24:21 Irrelevant in our application because the vehicle has no air conditioning.
24:24 Alright let's move down and we can see that fan two output, interestingly we've got this set to none so this is just an element of the way the base map has been set up.
24:35 We do have two fans but the second fan is actually defined interestingly as engine fan three output and we can see that that has been selected to be on injector eight output.
24:46 Exactly the same, we can click on that and choose any available auxiliary output to suit and we can again come down here to our auxiliary fuel number eight test.
24:57 Double click on that, we can click it on.
25:00 Again we should be able to hear our relay click in and our fan operating which is exactly what I can hear.
25:07 So we've got our engine fan three temperature.
25:11 So we can see that that's set to 98, remembering that our fan one was set to 96 and I've dropped that down a little bit.
25:18 So this is just staged here and what I'm going to do just to follow suit is bring this down a little bit as well, bring this down to 4°, 94° I should say, and we'll set our hysteresis to 2°.
25:30 Again we've got this coming on with the air conditioning which makes absolutely no difference to our application.
25:36 We'll press F4 and that will store those changes.
25:40 Let's head back to our auxiliary outputs and we'll have a look at one more setup so we'll press escape and we've got our fuel pump control here, we'll double click on that and we can see that the fuel pump control method, we've got this set using a three speed pulse width modulated module, so it's just the factory speed control module.
26:00 Double click on this and conventionally we would be using this as standard which will just be that the fuel pump is either on or off but in this case we are using the existing Subaru speed control here.
26:13 The pulse width modulated output there is auxiliary seven, so aux seven is the output that will actually control the fuel pump.
26:21 As usual, double click on this, we can choose from any of our available outputs.
26:26 The active state here, we do want this to be high and normally that would be low.
26:31 This is really dependent on how the output is wired and how it's being controlled.
26:36 Essentially whether this will switch high or whether it will switch low when the output goes active.
26:41 We can go again as usual and test out output so we'll double click here and we'll click on and we should be able to hear our fuel pump run and that will let us know that the fuel pump is actually configured and working properly.
26:56 So then we've got our actual settings for this, in this case a prime time, so basically when we key on, the fuel pump will run in this case for three seconds, we've got our pulse width modulated frequency and then we're going to have whereabouts we're going to transition between our stages, low to medium, will happen at 3000 RPM or 10% fuel flow and then at 5000 RPM we're going to go from medium to high or 20% fuel flow so that will just allow us to basically drive the pump as hard as we need to in order to maintain the fuel supply we need without going too far and basically pumping fuel needlessly and overheating it.
27:33 So this is the same configuration and setup we'd use for any of our outputs.
27:38 Let's just get back here and have a quick look and we can see that for example, we've got a tacho output which will drive the tacho, that is set up.
27:47 And we can also see that we've got various other options here, plus if we open up our general purpose outputs, we can see that in this case output one is set up as an O2 heater for the factory narrowband sensor.
28:02 I don't need to use this so what we can actually do is come in here and turn that off and that will basically disable that particular setting so again, same process for setting up any of the other outputs that you may want to use and run on your particular application.
28:20 One more thing that might just be worth having a quick look at is our setup for our boost solenoid.
28:26 So if we come up to our menu here at the top, our search box, and type in boost, we can see that we've got everything relevant to boost here and auxiliary six we can see is boost control so let's double click on that, that is pulse width modulated, we can double click on it further and open that and we can see that our boost mode at the moment is set to open loop, we've got our pulse width modulated output is auxiliary six which we already know and again always a good idea just to test this.
28:56 If we test it as a pulse width modulated output, we will be able to hear that clicking when we are doing that pulse width modulated test.
29:05 Little bit easier to hear that occurring than just turning it on where we'll get one single click.
29:10 Worth mentioning here, pulse width modulated frequency, this depends on the solenoid we're driving, generally I find between about 20 and 30 hertz is the happy place that works quite well with some of these mainstream boost control solenoids, we'll split the difference there and start with 25 hertz, we can always come back and adjust that later won't go into the further settings for our boost control solenoid, I'm just really showing the principles of making these changes in setup rather than getting too down in the weeds with the specifics.
29:39 OK the next element that we want to look at is our configuration for our fuel system.
29:44 So let's have a look at that, we'll press escape again, that'll bring us back to our ECU settings menu and what we want to do of course is head up to our fuel.
29:55 Now we'll open that up, there's a few configurations here that we need to go through so we'll start with he basics which is our fuel setup and fuel main which we've already briefly looked at.
30:05 There's a few options on how we can set this up so let's just go through this briefly.
30:10 Alright so let's start with our injection mode here which we can see is set to sequential and realistically this is driven by the trigger input data that the ECU has, where possible we always want to run sequential, just gives us more control of the injection and unless you're running a very basic engine and a very basic trigger setup, there would be no need to run anything else.
30:34 If we double click on this, we can see we can go single point group, multi point group, staged, etc.
30:39 So we'll leave that where it's set to sequential.
30:42 The fuel equation mode is worth digging into here a little bit.
30:46 We can see that by default this base map is set up as traditional and we'll talk about what that actually means.
30:52 Let's double click on this, so we have the option of traditional, modelled or modelled multi fuel.
30:57 We can take the modelled multi fuel or flex fuel as we'd probably more often refer to it as completely off the table, we're not running ethanol so that's not an issue.
31:05 So we have the traditional versus the modelled fuel equation.
31:08 Now let's just changed model just briefly and we'll see what pops up because some of the configurations here, some of the available options will change so we can see now, and I won't actually make this change but we can see now we've got our engine capacity has come up, we've also got some information around our fuel pressure and our fuel density, fuel density, temperature coefficient and our stoich air/fuel ratio so we'll just click no here, which is our charge temperature approximation table.
31:37 And what this modelled essentially is, it's Link lingo for volumetric efficiency based fuel tuning.
31:43 So this is something that's definitely far from new now, you'll have seen this demonstrated in a number of our other worked examples and the volumetric efficiency based fuel model means that instead of having a fuel table, we actually directly have a volumetric efficiency table and what we're really doing when we're tuning the fuel delivery is we're telling the ECU how much air is going into the engine at each combination of load and RPM, in other words, how completely the cylinder is filled with air.
32:11 As long as we've got all our configuration correct then the ECU can provide the right amount of fuel.
32:17 Nice feature with the modelled fuel equation is that once we've got everything tuned properly, if we want to change our air/fuel ratio, we can change that directly in our AFR target table.
32:28 Works really really nicely with flex fuel because for all intents and purposes, our volumetric efficiency doesn't change as our ethanol content changes.
32:38 So we only need to work from one fuel table.
32:41 The other element that comes into this is if we do change our injectors, provided we started with good solid injector data and we then fit injectors with another set of good usable injector data, we don't need to go through and fully remap the fuel table so that's a nice option.
32:58 In this instance, I am actually going to go through this worked example in the traditional fuel mode.
33:04 If you don't want to do that, the process of configuring this, you can see in our other worked examples, for the modelled or volumetric efficiency based fuel model, essentially though the process of tuning is absolutely no different once we've actually got our configuration done so personal preference here, we're just going to demonstrate this using our traditional fuel mode.
33:26 So we'll talk about what that means and it really comes down to, moving a little bit out of our order here, comes down to our master fuel number here which you can see is 13 milliseconds, so what's that number mean? For a moment, let's just jump across to our fuel table and what we'll do is we'll put in a value here of 100%.
33:46 So what master fuel value simply means that if we are running in our fuel table, we have a value of 100% in here, then that means that we are injecting 13 milliseconds of fuel, in other words opening the injector for 13 milliseconds of fuel.
34:04 Before we take into account compensations for air pressure, manifold absolute pressure, that's why I put that in there at 100 kPa.
34:12 So that's the principle of the traditional fuel model.
34:15 Relatively straightforward, ECUs have been running like this for a very very long time so absolutely no downsides necessarily to this, no problem with doing this over a volumetric efficiency fuel model.
34:28 One consideration we do need to make though around this master fuel number, the master fuel number we choose now is going to be driven by the fuel requirements of the engine and the injector size and this in turn will have a big influence on the numbers that we'll need in our fuel table or in other words the resolution of that fuel table.
34:47 It's a little bit hard when we're setting this up knowing what number to put in here because if we go too large, what we're going to end up finding is that the numbers in the main fuel table are really low, we might only reach a maximum of maybe 30 or 40%.
35:00 On the other hand, if this number is too small, we're going to go the other way and we're going to find that we run out of resolution, we need numbers that are really big so generally I like to see numbers in the mid range of the map around about 50%, 60%, and maybe maximum in the 80 to 90%, that gives us a bit of head room.
35:20 As you'll see though as we go through this, very easy to change that if we find that our numbers aren't quite right.
35:25 Let's move back up here and we can see our equation load source.
35:30 So load equals MAP and essentially this is something that on face value isn't particukarly intuitive.
35:38 This would be the normal setting, we'll double click here and we can see we can have load equals barometric air pressure, a baro/MAP crossover or load equals off.
35:46 In a nutshell, what this does is follows the principles that if we double the amount of manifold pressure, then we need to double the amount of fuel being delivered in order to maintain a consistent air/fuel ratio.
36:00 So this is essentially a background calculation, it's just happening in the background, we don't need to worry about it and it just gives us better resolution in the fuel table so we would almost always be running with the equation set to load equals MAP.
36:13 Let's move on a little bit quicker here.
36:16 Our master fuel trim, pretty self explanatory, we can trim the overall fuel up and down.
36:20 I don't think I've ever used this.
36:24 I would be more inclined to highlight the entire fuel table and increase and decrease the entire fuel table instead but absolutely it's an option there, personal preference.
36:33 Next one, our open loop lambda correction, bit of a mouthful here, again not overly intuitive, we can see that that is turned on.
36:41 So what this does is essentially gives us almost a crossover between that traditional injection time based fuel model and volumetric efficiency and what it will do, let's just show this here, it will work in conjunction with our air/fuel ratio target table which we'll open up.
36:56 And basically we want to be able to set this table to suit our desired targets and the ECU essentially in the background is going to do our measured over desired calculation that we learned in our EFI Tuning Fundamentals course and apply a correction to our fuelling.
37:16 So essentially we're no longer working solely on our fuel table, there is also a interaction here with this table.
37:24 So the important points to note is that we want to make sure that this table is actually set to our desired running target air/fuel ratios which absolutely right now it is not, we'll deal with that a little later in the worked example.
37:36 Then what we're going to be doing is tuning our fuel table so that we're actually meeting those targets at every combination of load and RPM.
37:42 Then just like a VE based fuel model, if we decided here that maybe at 220 kPa, 3000 RPM if we could get that, that we don't want to try 0.835 lambda and maybe we want to try 0.78 which is probably a little closer to the mark, we can simply change that value to 0.78.
38:02 If everything's worked correctly, all of our inputs are correct, we should essentially get exactly that so again, bit of a crossover there between the traditional or injection time based fuel model and this volumetric efficiency based fuel model so just important to understand how that works, otherwise you can get yourself into a bit of a predicament.
38:21 Let's head back to our fuel main settings now.
38:25 Moving down, we also have our lambda target table overlay.
38:29 In this case, we aren't using that option, that's turned off, again probably pretty normal.
38:33 Charge temperature correction, so at this stage this is turned off.
38:37 Personal preference here, we already have an intake air temperature correction table which is 3D, generally I will set this up on load, be that manifold pressure or throttle position vs RPM.
38:48 Gives us pretty good control over the correction for air temperature fluctuations.
38:54 Charge temperature goes a little bit futher and tries to estimate the actual charge temperature based on the engine coolant temperature sensor, the intake air temperature sensor and the amount of airflow that we've got.
39:06 Principle being that at very low air flows, maybe idle or light load, the air speed through the engine through the intake manifold, through the intake port, allows it to pick up a lot of heat from the engine coolant temperature or the coolant in the engine, basically transferring through and the heat being transferred into that air, whereas at high air speeds, maybe 6000, 7000, 8000 RPM, wide open throttle, the air speed is so much higher that the charge temperature entering the cylinders is going to be closer to intake air temperature sensor reading.
39:38 So complex, if you want more information on this, we do have a webinar that covers this in bit more detail.
39:46 Again for simplicity I'm going to leave this switched off.
39:49 Moving down, we've got our stoich air/fuel ratio, pump gas, 14.7:1, nothing to do there.
39:54 Our minimum effective pulse width, so this will be a parameter that we should have data on from our injector manufacturer.
40:01 If in doubt, I'm going to set this to zero and that will mean there is essentially no minimum pulse width.
40:07 We do want to be a little bit careful with this and make sure that if we have this data, it is set to suit the minimum injector pulse width that the injector supplier, manufacturer has defined, that will ensure that we're getting good control over our injectors.
40:21 We've got a couple of settings here, synchronous injection and our wall wetting compensation.
40:25 I'm not going to deal with those inside of this worked example, we'll cover these in some webinar content but essentially these can be used to aid and improve our transient enrichment over and above normal acceleration enrichment.
40:37 Lastly we've got our injector duty cycle fault value, so if our injector duty cycle goes over 100% or reaches 100%, it will be considered to be in fault so again personal preference there as to how we set that up.
40:49 Alright so that's our basics with our fuel main.
40:51 Let's press the escape key here, we'll bring our menu back up and let's go a little bit further into this and look at our injector setup.
41:00 So click on our injector setup, injector deadtime table here, we can see we've got this set up as a 2D table.
41:07 We can set this up as 2D or 3D, if we've got a manifold pressure referenced fuel pressure regulator, which we do here, then essentially we should be having reasonably consistent differential pressure across the injector which means that we only need to deal with this in 2D which is battery voltage vs deadtime.
41:26 If on the other hand we had a returnless or deadhead style fuel system, what this means is that our differential pressure across the injector is always changing based on manifold pressure so manifold pressure, sorry differential pressure across the injector and battery voltage both influence the deadtime, we'd set that up as a 3D table so in this case it's set up correctly.
41:46 We can come down to our injector deadtime table, double click on that.
41:51 This again is just purely from the base file here.
41:55 The important point to note is the deadtime around 14V, 0.68, which is probably pretty realistic, I don't have solid data for these injectors which is a problem when you are dealing with factory injectors.
42:11 If we're buying aftermarket injectors, we'll have this data so it's very easy to fill out this table.
42:15 0.68, I don't have any better data so I am going to simply leave this here and assume that Link have actually done the testing and given us good data here.
42:26 Look at the table graphically and we can sort of see that typical shape that we see with an injector deadtime table.
42:33 Little tip here, people get very very hung up on the deadtime values and of course if we have this data, absolutely we want to use correct data.
42:42 It is going to make a difference, it's going to give us more accurate control of the fuel delivery, particularly as our battery voltage tends to fluctuate or our differential pressure as the case may be.
42:53 So absolutely I want to use the correct data but we also need to keep in mind that sometimes this can be difficult to source or maybe even impossible.
43:01 A good rule of thumb for a factory injector is that probably at 14V we're going to be somewhere around about the 0.85 to maybe 1 ms with larger scale injectors so what we can do here, if we don't know any better is basically scale this entire table up or down until we've got a value of maybe 0.8 to 1 ms in at 14V.
43:24 Now it's unlikely that that's going to be perfect, it's not going to be correct but we're going to be very close to the ballpark and as we learned in our EFI Tuning Fundamentals course, this has a much bigger impact at idle and very very light loads than it does under wide open throttle so it is a minor consideration but a consideration nonetheless.
43:46 Let's use our little green back button here and the last thing that I want to deal with here is our injector short pulse width adder and this is another element that we may have data with depending on the injectors we're dealing with.
43:59 Basically another way of dealing with the lower non linear area of injector flow.
44:05 As we can see, this table, currently filled with zeros, pretty typical, it's very unlikely to have this data for factory injectors.
44:12 We will get this data with good quality aftermarket injectors so again if we've got it, obviously we want to use it.
44:18 Again not the absolute end of the world if we don't have this data, what we're likely to find though is that we might end up baking in some errors into our fuel table in order to account for those short pulse width fluctuations from the linear line of best fit that the ECU is expecting so not the end of the world if we don't have this.
44:39 Alright let's get back over to our ECU settings menu.
44:42 And we now want to test our injectors so we can come down to injector test here.
44:47 So we've got a little bit of control here on our injector test.
44:51 We can see at the top that's set to off.
44:54 We can select injector one, two, three, four right through to eight and that will pulse at 2 ms, 10 Hz and basically what we want to do is turn that on and we should be able to hear the injector actually pulsing and clicking.
45:10 I'll turn that back off and we'll just talk a little bit more about this.
45:12 So couple of things, first of all, before we do this we want to make sure that the fuel pump isn't running, we don't actually have fuel pressure because otherwise of course we will be injecting fuel into the cylinder so we don't want to be doing that.
45:23 Very easy to disable our fuel pump relay or turn it off within the software while we're doing this test.
45:30 The second element is that we want to make sure that our injectors are actually wired up and configured in the correct order so in other words, the injector for cylinder one, we want to make sure that when we are doing that test output, the injector on cylinder one is the actual injector pulsing.
45:44 So the other elements here is we've got, if we double click on this again, an advanced test for injection one.
45:51 So this will actually give a very finely controlled output, in this case we'll use all of our test information here.
45:59 So injection counts 10, injection frequency 100 Hz and the pulse width 2 ms.
46:04 This is useful if you want to get really granular with your injector testing, for our purposes we don't need to do that so we can carry on.
46:13 So this covers at this point, our fuel injector setup.
46:17 We've done our basic setup for our fuel system, we also have tested the injectors, we've got our injector deadtime values at least as close as we can so we know that our injectors are operating as expected.
46:29 Let's move on and we'll essentially rinse and repeat this process for our ignition system.
46:33 Let's bring up our ECU settings and we'll close down fuel and next option here of course is our injection, ignition sorry.
46:42 We'll go to ignition main.
46:44 So we start with our injection, ignition mode, going to struggle to get the right words here by the looks of it.
46:52 So what we want to do is double click on our ignition mode here and select the mode suitable.
46:57 Again that has been done for us, direct spark, we're essentially a coil on plug arrangement here, we've also got options for distributor or waste spark but in this case direct spark is the correct option for us.
47:08 Spark edge, this is really really important, for almost all installations this is going to be falling, there are a couple of options here where that's not going to be the case.
47:20 Honda and some MSD ignition systems, maybe some Ford as well, will be rising edge.
47:26 Why this is important is that if you don't know what this is or you get it incorrect, you will end up almost certainly destroying your coils because essentially they'll be charging when they should be dormant or vice versa so falling again, from our base map this is the correct setting so we don't need to worry about that.
47:46 We've got our ignition delay here, not going to worry about that now, we will talk a little bit more about that in a upcoming step of this module.
47:53 We've got our minimum spark duration set to 1 ms and our maximum advance here, 45° before top dead centre.
47:59 What this means is that irrespective of what advance value we put into the main table, we will find that it's going to be limited to 45°.
48:09 Important to make sure that that is sensible so you don't catch yourself out.
48:12 Maybe you set that to 20° and you overlook that, it's going to be a struggle to figure out why your tune is not responding properly.
48:21 We'll come down to our ignition test here and just like our injection test, if we double click on this, we can fire each of our coils.
48:32 We will be able to hear this actually operating, although you will need to be quite close to the coil to actually hear that occurring, you'll hear that spark clicking inside the cylinder and again we want to test and make sure that we do have the correct coil wired up to the correct cylinder and basically everything is going to be functioning.
48:52 And this is, this and the fuel injector output test is just a bit of a sanity check here to make sure that when we actually go to fire the engine, we are basically dealing with any barriers that could trip us up and actually cause us issues so if we've done all of this, when it does come time to start the vehicle for the first time, we should be pretty confident everything is going to operate exactly as we'd expect.
49:16 Let's just press the escape key again and we also want to come down to our dwell control table.
49:22 So the dwell control or charge time, really important to have this set up properly.
49:26 If we don't have this set up properly we can either overcharge or overdwell the coil which could end up damaging the coil, or alternatively we could end up underdwelling the coil which means it doesn't charge fully and we won't get the spark energy so this is set up as a 3D table, we've got battery voltage on our vertical axis and we've got engine speed on our horizontal axis and typically around 14V which is what we've got here, we generally end up with a dwell time somewhere in the region of about 2-3 ms for most coils.
50:00 Again this is a base map so it is configured for these coils, should have a bit of confidence that this is done correctly.
50:07 Interestingly we can actually see that the dwell time reduces at higher RPM.
50:11 Normally we don't actually take RPM into this equation, we could set this up as a 2D table purely based on our battery voltage.
50:20 What we can see is that as the battery voltage drops, our dwell time is increased because we don't have as much potential energy from the charging system to actually charge the coils so we need to charge it for longer and conversely as our battery voltage increases, our dwell time will typically also decrease.
50:38 So at this point, we've got our base configuration there done, we've tested our inputs and our outputs and we can move onto the next step of our process.

We usually reply within 12hrs (often sooner)

Need Help?

Need help choosing a course?

Experiencing website difficulties?

Or need to contact us for any other reason?