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

Or 8 easy 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 first step of our 10 step process is to configure the ECU inputs and outputs and also test them so we know that everything's working.
00:08 Now this can save a lot of frustration and wasted time later on if we find that one of our inputs or outputs isn't working correctly, maybe it's been wired incorrectly to the wrong position on the ECU header plug or something of that nature.
00:21 Making sure that we're very certain that everything that the ECU needs to do its job is wired correctly, calibrated correctly and working as it should, gives us peace of mind as we move through this process.
00:33 Now as we've mentioned, this is a plug and play ECU so a lot of the heavy lifting here has already been done for us.
00:39 This literally just requires us to plug the MS3 Pro ECU into the existing ECU header plug and we're good to go.
00:46 All of the calibrations for the factory sensors are existing and we know that the wiring is correct.
00:52 That being said, we're still going to go through some of this process here so that if you aren't using a plug and play MS3 Pro on a Miata or MX5, then this is still going to be valuable to you.
01:03 Even with a plug and play ECU though it's still always advisable just to check and confirm so that you know everything is working as expected.
01:12 Now one of the first places to start here, I'd always suggest that while you are configuring a freshly installed MegaSquirt ECU, that you start by leaving the ignition system unplugged.
01:23 This just means that if your ignition system settings aren't correct, it's going to prevent any chance of you burning out the ignition coils or the driver while you're getting everything set up.
01:34 So let's head into our laptop software here and we'll have a quick look at our first process which is getting online with the ECU.
01:41 So we've got our Tunder Studio software already fired up here and we've got our ECU powered up.
01:47 Now we've already got an existing project but we're going to start from scratch here.
01:51 So if you are just installing this for the first time, you're going to begin by clicking here on create new project.
01:58 So let's go ahead and do that.
02:00 Now we can give the car or project a name so in this case we're going to add in here, Mazda MX5 and we'll call it NA for the model year.
02:10 We also need to detect the firmware so we can do this by just clicking on the little detect button.
02:17 So this will go through the process of finding the controller or the ECU that is connected so we'll let that go ahead and finish off now.
02:24 Once the software has found the ECU that we're connected to, we can click accept.
02:29 And at this point, if you want, you can make some additonal notes about the particular combination you are tuning and we can click next.
02:37 This will also allow us to display or set up our display options.
02:42 So if for example we want to display our wideband values in AFR or lambda, in this case we're going to go through and make some changes here just to suit my own preferences.
02:52 In particular we're going to display our temperature in degrees C, we're going to display air/fuel ratio in lambda.
02:59 At this point we don't need to make any other changes, we'll click next.
03:03 This gives us our connection type here, we shouldn't need to make any changes here and we can click next.
03:10 We can also select the type of dashboard that we're going to be running here and in this case we're going to start with our default dashboard.
03:20 Click next and we finally will be online.
03:23 Once we are online with the ECU, the first place we're going to head to is our basic/load settings.
03:29 So we'll click on that, it will open a dropdown menu with all of the available options.
03:32 We're actually going to start here right at the top with our engine and sequential settings.
03:38 So if we click on that, it'll open up another window.
03:41 The first place to start here is with our required fuel calculation.
03:45 So essentially this calculates the injection pulse width that will be delivered at 100% volumetric efficiency and 100 kPa.
03:55 Now we can select this manually however we also have the option of clicking this little button here which will perform this calculation for us.
04:04 So here we can enter all of the relevant information including the engine displacement, the number of cylinders, the injector flow and our air/fuel ratio.
04:12 We can choose to display these units in either metric or imperial.
04:17 Again these units are filled in, or the information I should say here is filled in for our Mazda B6 engine.
04:23 However, if you aren't dealing with a Mazda B6 you'll enter your relevant information, click OK and then that's going to calculate that particular number there.
04:31 So this is a way of essentially getting the scaling or resolution of the VE table on point from the get go.
04:39 In this case our number there is 11.7 milliseconds.
04:42 We can then move down and we have our control algorithm here.
04:46 So we will be operating on the speed density operating system.
04:49 If you drop down the menu here you can see your other options.
04:52 Speed density is what you're going to be using for the majority of instances here.
04:57 Moving down, we've also got our next option here which is our number of squirts per engine cycle.
05:03 And this is a little bit unique, this is only applicable to batch fire injection systems.
05:08 And in this case the Mazda B6 engine in stock form actually runs a group fire or batch fire injection so we're unfortunately, without rewiring the injection system, we are limited to batch fire, we can't run a full sequential system here.
05:22 So each injector will provide two injection pulses per engine cycle.
05:26 Moving down we've got our injector staging which we can choose between alternating or simultaneous and this is just defining how the injectors will inject the fuel.
05:36 In this case with our batch fire system with two squirts per engine cycle, we want to be on the alternating option.
05:43 Next we can define whether we are running a four stroke or a two stroke or a rotary engine, obviously we are four stroke here.
05:51 And likewise we have four cylinders.
05:53 We can then also define the number of injectors fitted here.
05:57 In terms of the engine type, we can define whether we are an even fire or an odd fire engine.
06:04 Even fire's going to be the most common option there, although there are some V configuration engines where odd fire is the correct option.
06:12 We've got our engine capacity and our injector size here and then we can define which of our fuel injector outputs are going to be used.
06:20 So again as I've mentioned here, we are running group fire so while we do have four injectors we're only actually using injector drive A and B there.
06:28 You can select which of those are being used.
06:31 We've got of course the ability to enable sequential injection.
06:35 As we've discussed, we can't do that.
06:37 We also have our firing order here for our engine.
06:41 1, 3, 4, 2, relatively common for a inline four cylinder engine like our Mazda B6.
06:49 So we haven't had to make any changes here, we can close down that particular window, we're going to head back to our basic/load settings again and this time we're going to move down to our general settings.
07:02 Our first parameter here involves how the ECU will bring in a barometric air pressure reading.
07:09 So we can add a specific barometric air pressure sensor.
07:13 However in this case you can see that this is going to be an initial map reading.
07:17 So essentially the ECu is using the manifold absolute pressure sensor as a barometric air pressure sensor and it will sample this immediately on key on before the engine is cranked and started.
07:28 Of course this fixes that barometric air pressure reading and if we are seeing large changes in altitude as part of a normal drive cycle then there will be no way of updating that barometric pressure as the actual baro does change.
07:43 Moving down we've got our manifold absolute pressure sensor settings here and in this case we are using a voltage based MAP sensor and if we look at the options here, we can turn this off or we can select a frequency based MAP sensor.
07:59 Be most usual to be using a voltage based MAP sensor and also we can select where abouts the input is so if we look at our drop down menu here, we can select which of the inputs the manifold absolute pressure sensor has been wired to, all relatively simple there.
08:16 Moving across to our load parameters here we can look at our primary fuel load option.
08:23 In this case we are using speed density, we've got the options to select from there as we've already talked about.
08:29 We aren't using a secondary fuel load for this particular engine, relatively basic engine configuration.
08:35 And then moving down we've also got our multiply map option here.
08:39 So this is what we should have in most instances, this basically provides a background calculation where the fuelling is automatically adjusted for manifold pressure, the premise here is that as we double manifold pressure, we need to double the injector pulse width in order to provide a consistent air/fuel ratio.
08:57 So again we've got the option to use the multiply function or to not use it.
09:02 As we see here, we've got a little note that says that 99% of instances we should be using the mutliply function.
09:11 Moving down, we have the ability to select whether or not we're going to incorporate our air/fuel ratio target table in the fuel calculation.
09:18 So we can either choose to include or to not include.
09:22 This is key to understand because how this works will influence the way the ECU calculates the required fuelling.
09:29 In this case we're going to include the AFR target, so we'll have the ECU essentially operating as a full VE based ECU where the fuel table is essentially a volumetric efficiency table and we will need to program our target air/fuel ratio table to represent our desired air/fuel ratio targets before we begin tuning.
09:50 However once we've then tuned the VE table, if we leave the mechanical setup of our engine as is, we can make changes to our target air/fuel ratio directly in that air/fuel ratio target table and the ECU will compensate and get us onto our new target.
10:07 If you do want to use the include AFR target function then it is also important that we correctly set the stoichiometric air/fuel ratio for whatever fuel we're using.
10:16 In this case we're tuning on pump fuel so of course we've selected 14.7:1 there.
10:21 Moving down we've got our primary ignition load option.
10:25 In this case again, just like our fuel we are using speed density and we have exactly the same options.
10:32 So this would be the typical option for a standard engine running a plenum chamber with a single throttle body.
10:39 Just like our fuel, we're not running a secondary ignition load option on this particular car.
10:45 Lastly in this window we've got the ability to set our load axis for both our air/fuel ratio tables as well as our EAE curve or enhanced acceleration enrichment curve.
10:56 I'm not going to touch on the EAE curve within this worked example, it's a slightly more advanced topic.
11:04 However we're going to leave both of those options set to primary load.
11:09 Now just before we close down this window I will just mention that at the bottom you can see we've got an icon here that says burn.
11:16 So any time we've made changes, these need to actually be burned to the ECU in order for them to remain in effect.
11:24 We power the ECU down and power it back up so these changes will take place automatically but if we don't burn these changes then they will be lost.
11:31 And this goes for all of our tuning changes as well.
11:34 So at this point we can close down this particular window and we'll move on.
11:38 The next thing we're going to do is we're going to come up to our tools drop down menu and we're going to come down to calibrate TPS or throttle position sensor.
11:48 This is a simple analog voltage sensor and we need to essentially tell the ECU what voltage it's going to be seeing when the throttle's completely closed as well as when the throttle is wide open.
12:00 Now an interesting point I'll just make here is that in stock form the Mazda MX5 B6 engine actually doesn't have a variable throttle position sensor, instead it's just got an idle switch.
12:12 So in order to get the best possible results with the MS3 Pro installed, it is necessary to add in a proper throttle position sensor and wire that in which we've already done.
12:22 So this is a relatively simple process, all we're going to do is leave our throttle in the completely closed position and we're going to click get current and that will give us the current analog to digital conversion count, in this case you can see that really didn't change much when we went from 180, 190 to 189.
12:40 Likewise we're going to go through to full throttle and again we want to click current.
12:44 We haven't seen much movement there.
12:47 We just want to make sure once we've done this we can click accept.
12:49 If we look at our throttle position guage, we want to make sure that we are in fact spanning between 0-100% and that we're getting a nice smooth movement as we move that throttle through its travel.
13:01 When you are setting the open and closed range there, you do want to be careful, particularly when we are at wide open throttle that you are actually pressing the pedal as hard as you can, making sure that you are on the throttle stop.
13:13 Likewise you want to make sure that the throttle is coming back completely closed, because if you're not getting the full closed reading then this could impact on the ability for the idle speed control system to work as it should.
13:25 Next we're going to come back up to our tools menu, this time we're going to come down to our calibrate thermistor tables.
13:33 So this is where we can calibrate the air temperature and coolant temperature sensors that are connected.
13:39 So in this case you can see here we've got our sensor table that we are looking at is our coolant temperature sensor.
13:46 You can click on this, bring this down to air temperature sensor or also add in a custom sensor.
13:53 The way we're going to be defining this is with a three point thermistor generator.
13:58 And we can choose from a set of preset or pre configured options here for a variety of different sensors.
14:07 So we can choose one that suits the particular vehicle that we are tuning and again we can choose here between celcius or fahrenheit depending on your preference.
14:17 And once you've got the air temperature and coolant temperature sensors set up correctly, it's always a good idea to have a bit of a sanity check and just make sure that they are reading correct or sensible values.
14:29 Now in this case here we've got our coolant temperature sensor sitting at 30°C, below this we've got our manifold air temperature sensor sitting at 25°C.
14:38 Now that's simply because at this point, we have had the car running.
14:41 A good sanity check here is when you are installing this, assuming that the car has at least been sitting for a long period of time without running, preferably overnight, we should see both of these sensors read exactly the same value and they should be reading essentially what our ambient temperature is so it's a good idea just to check that and make sure that those make sense before we move on.
15:04 With some of our basic inputs now set up and our calibrations confirmed, we're going to go across to our ignition settings here, we'll click on our ignition settings box and what we want to do at the moment is come down to our ignition options/ wheel decoder.
15:19 Now we're going to come back and revisit some of this as we go through our trigger setup a little bit later on.
15:24 For now what we want to do though is just make sure that our ignition settings are correct.
15:30 And if we don't have this correct, we can end up burning out our coils.
15:34 In particular the spark output here going high or going low is the one that we're most interested in.
15:41 If we have this wrong we could end up burning out our coils and in most instances we will want this set to going high, there are a few examples where that wouldn't be the case, some Honda engines are a good example here where we will need this set to going low.
15:57 Now if you do need more information about the correct setting for your specific ignition system, you can check directly with DIYAutoTune, they will be able to advise you what is suitable for your particular ignition system.
16:10 So in this case we're not going to go any further through this particular table, we can close that down.
16:16 We'd also want to test our outputs and make sure that everything is functioning here.
16:21 So we can do this by moving over to our CAN bus/test modes dropdown menu.
16:27 And what we're going to do here is come down to our output test mode for injector and spark.
16:33 This will open up our test output window here.
16:37 So first of all what we're going to do is enable our test mode here.
16:41 Now we can select to test our fuel pump, make sure that that's functioning.
16:45 At this point I'm not going to test the fuel pump, we don't want to run the fuel pump right now because that's going to create pressure and when we get to the next step where we're testing our injector output, this will actually end up pulsing the injectors and putting fuel into the intake.
17:00 So we're going to check that last.
17:02 What we'll do though is come down to our coil testing here.
17:05 Relatively straightforward here.
17:07 What we're going to do is test, in this case coil A or coil B.
17:12 We are waste spark here so we only have two coils and they are operating two cylinders each.
17:19 So what we can do here is make sure that we are happy with the settings and we can click on start test.
17:26 Now from the cabin you're not going to be able to hear this but if you are in the engine bay you will be able to actually hear that spark occurring, that's going to give you the confidence that you know the ignition system's working.
17:36 If you've got a timing light hooked up to the ignition lead as well, you'll see that timing light will flash in time with your spark.
17:43 So obviously we can go through and check both of our coils there.
17:46 Moving down we can do exactly the same with our injector outputs.
17:50 Now remembering this is batch fire so we have the ability to select either injector A or injector B.
17:57 Exactly the same deal there, when we press start, we will be able to audibly hear the injectors pulsing.
18:03 So we can check those, we don't want to test them for a long period of time because again if we do have some residual fuel pressure in the fuel rail, this will tend to fill the cylinders in the intake ports with fuel.
18:14 So once we're confident that our injectors and our ignition coils are operating as expected we can test our fuel pump.
18:22 Now even from the cabin when I click fuel pump test here, we should hear our relay click in and I'll be able to audibly hear that pump running.
18:32 Pretty obvious there that our fuel pump is running.
18:34 If we've got a fuel pressure gauge on there we will also be able to check our fuel pressure while this is all operating.
18:40 Again, if we've made any changes here, we can click on burn, what we do want to do though is disable our test mode before we close that down.
18:49 So at this point, we've got the basic configuration for our ECU set up, we've tested our outputs, we've checked our calibration for our sensors and we've also calibrated our throttle position sensor.
19:01 We can now move on with 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?