Skip to main content

How to Do Advanced Open-Loop Tuning Using HPTuners

Chriscamaro loves playing sports, modifying cars, and playing video games.

Looking to do advanced open-loop tuning using HPTuners? Here are some techniques to use.

Looking to do advanced open-loop tuning using HPTuners? Here are some techniques to use.

How Is This Different From What I Know?

If you're an HPTuners owner and have been tuning your N/A car, chances are you are still tuning in closed loop using the factory oxygen sensors. You're scanning LTFT and KR. You're updating your MAF table and pulling spark from any part of your spark table where there's knock... and there's nothing wrong with that.

That's where everyone starts out, and it probably nets you a few HP on your car.

However, at some point you will hit a wall. Although you were making impressive strides at first, now you are seeing the same 3% deviation in your data no matter how hard you try to get rid of it. You see KR that seems to come and go and move around from one load point to another. Maybe you're thinking about installing a power adder like a supercharger and are wondering whether the current health of your car is enough to give you the added insurance you need in case your first forced induction run isn't spot on.

At this point, you've tapped out the potential of basic tuning and need to take the next step. This is open loop tuning. It's abandoning the O2 sensors, abandoning the MAF, and abandoning any sort of feedback that the car's relied on so far. It's time to set everything manually because that's how you get the stability and control that you could never hope to achieve using closed loop.

What You’ll Need Before You Tune the Car...

In order to do an advanced open loop tune, there are a couple of prerequisites:

Step 1

Go online and buy yourself a wideband O2 sensor. An example of a brand that sells these is AEM. The kit comes with a gauge that serves as both the indicator and the controller (and from which you will log the sensor readings) and the sensor itself.

Step 2

When the sensor arrives, you'll need to go to a mechanic shop and have them drill a small hole in your exhaust just below the headers, where the collection pipe goes down and back towards the rear of the car. They will need to weld a bung in that hole and screw the sensor in, running the wire inside the car where it can be connected to your gauge. Even after all the necessary wires have been connected there will be 2 more, a data line and a ground, that must be connected to your HPTuners Pro terminal block, which is the green thing sticking out the side of your HPTuners, with screws in it. The data wire goes into position 1 and the ground goes into position 5. Thereafter you will be able to read the sensor directly using your laptop when you conduct a road scan.

Step 3

You will need to upgrade your car's operating system or OS to a VE type OS. This means the VE table will be expanded considerably and the car will use it instead of your MAF table. Depending on the support for your car the manifold pressure axis may be a different range than what your peers may have. Mine goes to 175 kPa, which is good enough for about 11 PSI of boost. This upgrade can be achieved through your HPTuners account and by virtue of your tuning software. This is necessary for you to do open loop tuning.

Step 4

You will need to actually disable closed loop tuning and for this you need to go under your O2 sensor tab in the tuning software and find the "delay" table for entering closed loop. This tells the computer how long to wait after you start the car before entering closed loop. If you enter the largest number that variable holds, it will be long enough that no normal driving session would ever enter closed loop. This way, your car will only consult the VE table, which is what you want.


Setting up Your HPTuners VCM Scanner Charts

Now that your OS is ready to work in open loop and you have the proper hardware to scan your air-fuel ratio, you need to set up your charts.

You should have certain charts at a minimum:

Spark: Logs timing advance, column axis is RPM, row axis is MAP

KR: Logs knock retard, column axis is RPM, row axis is MAP

AFR: Logs User Math 1, column axis is RPM, row axis is MAP

Temp: Logs User Math 1, column axis is RPM, row axis is Intake Air Temperature

In order for these charts to work and to log other info you need, you should ensure you have the following PIDs added in the channel list on the left side of your VCM scanner:

Engine RPM

Engine Coolant Temp

Intake Air Temp

Intake Manifold Absolute Pressure

Timing Advance

Knock Retard

MPVI A/D Input 1

Delivered Engine Torque

There may be other parameters you wish to log but these are the essential ones. After ensuring the PIDs are added and the charts have the same channels picked for the axes and logged values, you will want to set up the axes using the field provided by exactly copying the axes that exist in your tuning software. So for example, if you are setting up the RPM axis in your spark chart, you want to enter the same RPM headers that appear in your VE table in your tuning software, separated by spaces, so that the VCM scanner will display them properly. Something like: 400 800 1200 1600

... etc, until you have the same number of entries in your chart with the same resolution as the VE table your are going to be tuning later.

You will also want to use the Filters field in the chart window to filter out any deceleration data. When your car decelerates it behaves differently than at other load points and can contaminate your data. Hit the "new variable" button and find the delivered engine torque from the list above. This will enter a PID code into the filter field. Next to this type >0, which means that delivered engine torque has to be greater than 0 in order to pass as a valid data point to be displayed on your chart. Do this for the spark, AFR and temp tables.

Special note about the AFR PID

Wideband O2 sensors record voltages, not AFR values. Therefore if you just scan the channel your wires are plugged into, you will get nonsensical voltage values that mean nothing to you. You need to use the HPTuners "Math Parameters Manager" to define a new transfer function under "User Math 1". A transfer function is a small formula that converts the voltage values into AFR values so they can be interpreted on the charts. The transfer function should be readily defined in your AEM instruction manual so all you need to do is pick the A/D channel you are logging and incorporate that into the transfer function so that the "User Math 1" variable you are defining will spit out an AFR value on the charts. That's why you're charting "User Math 1" and not "MPVI A/D Input 1".

Road scan your car!

With your charts set up and wideband O2 sensor connected to your HPTuners module, go out and scan your car. Best practice is to scan for a good hour or so, driving normally, as you would in real life and trying to hit a variety of different load points. On your return leg, have a quick look at your charts to see where there are "holes" in your data. Knowing roughly what RPM and pressure values these holes are at, try to hit those load points before you finish your scan. Hopefully after 2/3 of your scan is over you won't have many holes to fill.


Advanced VE Tuning: Picking Your AFR Targets

Now it's time to make a personal decision. It's up to you and nobody else. Your VE table is rather large and you have to decide what AFR values you want in which parts of the table. It's hardly worth your time to just target the same AFR value everywhere because this will result in a mediocre tune at best. You want to examine how you drive and how you want to customize your driving experience by setting your own AFRs at each load point.

Copy your entire VE table from inside your tuner software and paste it in excel. Then delete all the contents, leaving the row and column axes intact. You now need to decide what AFR you want for each cell. For example at 800 RPM and 30 kPa (idle) what AFR do you want? At 4800 RPM and 100 kPa (max torque) what AFR do you want? Jump around the table and assign AFR values as you see fit. Remember that 14.7 is stoich, with lower values being rich and higher values being lean. You don't have to fill out every single cell, just a few at key load points. The rest of the table can be interpolated between your targets for a nice smooth progression in your fueling.

Advanced VE Tuning: Calculating Your AFR Deviation

In order to utilize your new AFR matrix, you need to also copy and paste your scanned table from your VCM scanner into Excel. If you set your charts up right, it should look just like the one you created with the target AFRs. So now you will have the scanned AFRs and the ideal ones.

Now once again go into your tuning software and copy paste your current VE table into Excel. This will be table 3 and represents the current state of your VE table.

Now make 1 more table below that (your 4th table) and delete the contents so that it's empty. You should now have 4 tables with identical axes: 1 with scanned AFRs, 1 with ideal AFRs, 1 with your current VE values and the last one will contain the corrected VE values. In this last table you will start with any arbitrary cell (I suggest the top left most cell) and define a formula in Excel's formula field at the top. You will reference the cells in the other 3 tables so I cannot give you the exact cell addresses but your formula will look like this:

=(((Actual AFR/Ideal AFR)-1)*0.1+1)*VE

Pick the cells in Excel that correspond to those values and then hit enter. You should notice that the new cell in chart 4 is populated with a VE value that is slightly different than the one in the same position in chart 3. Now drag that cell across the rest of the chart's empty cells until all are populated. You will now have a completely filled in chart 4 with all new VE values. These corrections will bring your AFRs in line with the ideal table you created earlier. Copy chart 4 and paste it back into your tuner software's VE table so you can upload it back to the car.

The Bottom Line

Naturally you're not done yet and you can adjust your spark table and even the IAT multiplier table for AFR, using the Temp chart in your scan but here's the bottom line...

The VE table you are using in open loop has hundreds of data points in it - a far cry from what your MAF table had. With your target AFRs in place, nicely interpolated, your fuel delivery will no longer be all over the place like it was before. Once you go through this tuning process a dozen or so times you should have the error down to less than 1% and it will not change unless you physically alter your car. There is no sensor creep to adjust for or anything like that. Your car will run like a top and any KR you get will definitely not be a result of uneven fueling so you can more easily correct it since you won't be trying to hit a moving target anymore. The great thing about open loop is that you can have your cake and eat it too. You can make that 15 MPG gas guzzler run lean on the highway and rich on the strip - something your closed loop system would never allow you to do. Once you have this technique in your toolkit, the rest is gravy. You can change all the settings in the car but these are mostly simple on/off switches or scalar values you will only change once. Spark tuning is also fairly easy for anyone to pick up. It's the VE table where most of the magic happens. Everything else depends on it so before blindly adding 4 degrees of timing and wondering why 1 cell takes it and the one above it (at lower pressure) is knocking, go back and make sure your open loop VE table is sublime. It will pay dividends with everything you tweak afterwards.

This article is accurate and true to the best of the author’s knowledge. Content is for informational or entertainment purposes only and does not substitute for personal counsel or professional advice in business, financial, legal, or technical matters.