Advanced LS4 Tuning Information

I haven’t had much to post about my car lately, so I thought I would take the time to post some of the information that I’ve learned and gathered from extensive tuning experience on the LS4 platforms. This is not a guide to tuning in any way, shape, or form. Rather, I’m assuming that you’ve already learned the basics of tuning and have been tuning your own car for a while. I will hit Gen IV and LS4 specific information, along with some cool tricks I’ve learned. Some of this information does apply to other applications, but some doesn’t. Since I put a fair bit of time into this, I’m going to post this on a few forums.

Topics:
MAF Tuning
VE Tuning
Injector Tuning
Ported Throttle Body Tuning
Advanced Filtering
List of Useful Resources

MAF Tuning

In general, MAF tuning is straightforward. There are a few points that I’d still like to bring up. There are some items related curve fitting, AFM/DOD, and sensor performance that I’d like to cover.

Widebands generally don’t like AFM/DOD as much as they do V8s. The extra air time between the exhaust pulses seems to affect the performance of a wideband more than a narrowband. In general, I observe my AEM wideband reading about 2% lean when DOD is active. To avoid the error, I always adjust the MAF sensor with DOD disabled to avoid issues. When I run open-loop with DOD, the wideband will indicate that the MAF sensor is reading too lean at nearly all conditions. However, when I run closed loop I don’t see the same trend in my fuel trims. The only time the narrowband has trouble is at lower RPM, but I have positive overlap at 0.050” of lift. Both the wideband and narrowband have trouble at lower RPM so I run in PE mode (with no enrichment) below about 1250rpm. V8 seems to read false lean below about 1400rpm and V4 seems to read false lean below about 1700rpm. I was able to overcome most of the fuel trim enrichment by adjusting the crossover voltages in closed loop lower.

To get the MAF curve at lower frequencies, which only occur during low rpm operation and deceleration, I use curve fitting. I’ve found that most factory curves fit best with a 4th order polynomial, not a 3rd order like is commonly mentioned. If you are a perfectionist, even a 4th order fit will lead to some inaccuracy at some frequencies. The MAF signal does have some noise (more on that later), so the straightforward histogram/multiply by the error approach leaves something to be desired. What I have found is that the MAF curve does have nearly perfect 3rd order curvature in small segments. For my car, any 9 points on the curve have a close to perfect 3rd order curve. My approach has been to take the existing curve and multiply by a weighted error curve. I get the quickest results, usually two passes, from using a 70% weight. I then take the new curve and start fitting multiple 3rd order polynomials to it. This can be tedious in Excel, so I use software that I wrote for the job. I then sample the middle point of the curve and use that value for that frequency. I use the rest of the curve for the bottom four and top four points of the table. If you do a check on the resulting MAF curve, you’ll usually see an R^2 of better than 0.999x for a 3rd and 4th order global fit, but you’ll get nearly perfect performance (+/- 0.5%) across the entire curve instead of the +/- 2% variation typically observed from a global fit. If you offset your error by 0.5%, you can keep your lambda between 0.99 and 1 at all times in open-loop.

One way to improve your results even further is to use an airflow straightener similar to what is used in wind tunnels. This replaces the stock screen with a different screen that has fewer, but much deeper, cells. I observed a 60-70% decrease in MAF output variation at WOT using 100mm cells with an 8:1 depth to width ratio. At typical cruising conditions the MAF output only oscillates at +/- 10Hz or so. Ideally, you’d like to have a straight section of tubing before the MAF that has a length of about 10 times the width of the piping and MAF (which should definitely be matched for best performance) to achieve laminar airflow across the sensing elements, but that is unrealistic in most underhood configurations. An airflow straightener like described above performs nearly as well. Here is a cheap source of the straighteners I’m describing (it’s a computer parts website; overclockers are hardcore about their airflow):

Honeycomb for MAF

This issue of MAF noise is particularly problematic on the LS4s because the stock MAF sensor only has one sensing element. Most of the other MAF sensors have 2-3 elements, with at least one element on each side of the divider. Because of its configuration, the LS4 MAF sensor is more sensitive than most to changes in the pre-MAF induction tract (the post MAF section has far less influence on MAF performance). The MAF curve of a stock LS4 can be shifted by +/- 20% just by rotating, or clocking, the MAF. The air straightener shown above will lead to a different MAF curve than stock because it will shift airflow from the outside radius of the airbox elbow to flow evenly across the entire MAF area.

I wouldn’t recommend using this unless you are tuning your car. The reason is simple: the torque that the ECM calculates, and the TCM subsequently using to set shift pressure, is dependent on the MAF and VE load calculations and not the fuel trims. So even though the fuel trims will correct the fueling, your torque calculations can be far enough off to frag the trans. So yes, your K&N airbox can kill your transmission by throwing the MAF curve off, but it has nothing to do with any change in actual torque. For similar reasons, I emphatically recommend tuning the right way. If you aren’t going to tune your VE, then disable dynamic airflow (VE does still come into play, but not as much). Never adjust IFR to compensate for fueling error, unless you are actually swapping injectors (more on that later).

VE Tuning

Some ignore VE tuning, either due to complexity or the capabilities of their tuner. I highly recommend tuning VE even if you disable dynamic airflow and run exclusively on the MAF. The reason is that Gen IV ECMs no longer handle acceleration enrichment and deceleration enleanment through tables. You will find it very difficult to achieve good transient fueling without VE tuning. The fuel impact and evaporation tables can be fudged to help, but I’ve found the stock tables to be more correct than not. The real concern is flashing lean on a quick tip-in to the throttle.

VE Tuning for the early LS4s can be done traditionally, but once you move the 07 model year the ECM changes to the E67. The E67 allows the engine to meet more stringent Tier 2 Bin 5 emissions standards, but comes with the complexity of supporting VVT. Rather than have hundreds of VE tables for each different cam phasing, the computer uses a set of non-linear (MAP*RPM term is including) 2nd order polynomials. There are terms for intake and exhaust cam phasing as well, but these don’t apply to us. EFI Live includes what they call a Virtual VE table in their software. This looks like a VE table to the user and automatically handles the curve fitting to generate the necessary coefficient deck. Users of HP tuners are not so lucky, although EFI Live does allow users to download a demo of their software. Most people instead use a nifty software program, which was written by Bluecat and is freely distributed. It can be found here:

EQ <> VE Version 3 - HP Tuners Bulletin Board

VE tuning becomes problematic for AFM/DOD. The HP Tuners scanner does not support status bit histogram filters. The status bits are not exported to the .csv files either. The only place to get that information is from the .hpl file directly. To read that file you need to understand how hexadecimal numbers work, and understand how to convert from computer units to engineering units. I am a decent programmer, so I have written software to handle the extraction. I’ll cover this a bit more in my advanced filtering section, but HP Tuners has told me that they consider the file format proprietary. If you have ever worked with Canalyzer or something similar, or if you have knowledge of OBD2 in general, you won’t find anything original or difficult about their file format, but I’ll respect their wishes.

If you have the ability to build your own histograms in Excel or a custom program in your favorite programming language, with a little patience you can filter out the DOD data from the .csv files. When AFM/DOD is in transition the ECM will pull a lot of timing and dump fuel. You can make the transition more apparent in the data by manipulating your Deac in Progress burst knock settings. The transitions always happen on throttle. Since you want to ignore off throttle and decal data anyway, you can pick through the .csv file and delete out the V8 data by looking for ignition timing being pulled and a subsequent doubling in load (dynamic cylinder air). You can see transitions back to V8 with a similar timing advance event and a subsequent halving of load. Burst knock only occurs when deactivation is in progress, but other events like increases in pedal position, decreases in throttle position, and sharp changes MAP, can also be used. The most straightforward method might be the easiest: simply look at the time stamp and status bits in VCM scanner and line up the changes in the .csv file.

Without using histograms, it becomes much harder to find averages. But, with some patience and trial and error, you can also simply look at the wideband reading or fuel trim average value and adjust the VE manually. If you have radically changed the pumping efficiency of your engine with an intake manifold, cam, headers, or turbo, your VE will be out to lunch so you should be able to pick up on trends.

A Note on AFM/DOD

With all of the complexity in tuning DOD, you may wonder why I bother. Simply, DOD saves me a good bit of gas money. With all of the majors in SE Michigan having 45mph speed limits, I average at least 3mpg better with DOD. The same holds on the 70mph highways in MI, but when I’m visiting family in 60-65mph Ohio, I get even better.

Some of the large improvement in my mileage comes from my cam. DOD basically saves gas by driving a larger throttle angle. This makes it easier for the engine to pull air past the throttle. There is also improvement from the higher cylinder loads, but that is separate from the point I’m making now. When looking at the difference in VE between V8 and V4, you can see that the engine is less efficient as an air pump in V4 mode. This difference is larger with my cam than it was with the stock cam. A less efficient air pump requires a larger throttle angle to get the same amount of air into the engine, so the difference in mileage that I see is greater than stock, especially at lower loads.

Tuning for Different Injectors

The first thing to do when swapping injectors is to make sure that have your induction tract and MAF curve in their final format. Changes after the MAF are less critical. If you are changing a lot of things at once, this can be harder, but try to run with the stock injectors (even if they are insufficient at WOT) at first. Having a nearly perfect MAF will really help you when you do swap the injectors. I made this mistake and had to go back to my stock injectors get my MAF dialed in and then swap in the new injectors.

The most obvious upgrade for our engines is the 42# injectors found on the LS3, LS7, L99, etc. engines. They drop right in and use the same electrical connector. These injectors can also be used with the LS1/6 intakes and fuel rails with the use of injector extenders. Once you have them in, start by pulling the tables from a stock 2008 Corvette. The 08 ECM uses the same axis as our engines do, which simplifies things. Make sure and get the IFR, Offsets, and Short Pulse tables. There is also some injection timing information that seems to help mileage and torque a bit, but that’s a whole different conversation. One thing to note is that the IFR table does not have an ideal Bernoulli curve, but I trust GM to have the data to back that up.

Now that you have them in, in a perfect world you will have the exact same performance. However, any massed produced item has variation. The variation injectors can be as large as +/- 6%, but typically is less than 1%. If you do see a constant difference across the entire MAF curve, you’ll have to make a judgment on whether it is the stock injectors or the new injectors that are off. If you were forward thinking enough to log data with the bone stock car, you might be able to determine which is off. That is, if you saw -1% stock, retuned the MAF, and now see +1% with the new injectors, you may want to adjust your MAF curve. Otherwise, it’s a safe bet to assume that it is your new injectors that are off. You are likely using them with a different fuel rail, wiring harness, etc.

Before you start logging, make sure that you are getting voltage along with all of the usual suspects (pulsewidth, injector delta pressure, etc.). Both my stock injectors and 42# injectors tended to run a little lean when RVC was on (voltage under 13). Since we don’t have any way to compensate for the possibility that the fuel pump is sagging at lower voltages, you’ll have to compensate in the offsets. Unlike the Gen 3 ECMs, the Gen 4 ECMs report the theoretical or fueling pulsewidth. The offset (which accounts for the time it takes for the solenoid to energize) are not included in the reported value. This feature avoids having to use a couple lookup tables to back out the theoretical pulsewidth. Adjustments to IFR can be done by looking at error directly. Adjustments to offsets can be done by looking multiplying the error by the pulsewidth to get a time adjustment. From experience, I recommend weighting error by 50% for IFR and 30% for offsets and short pulses to avoid overshoot.

The process for tuning starts with IFR, then offsets, and finishes with the short pulse. I recommend against changing the IFR slope. Because the offset is more significant for shorter pulses and the IFR is more significant for larger pulses, you should start by doing some WOT runs. If you see error at WOT, it can be safely attributed to IFR. For reference, I found that my injectors flowed about 0.5% more than advertised (again, this could mean the stockers flowed 0.5% less than advertised…). Even though your data comes from only the 58.xx injector delta pressure range, you should apply any change to the whole IFR curve. The next step is log during a variety of normal driving circumstances, and hopefully across a range of voltages. Make sure and use a filter that only allows data above 4ms pulsewidths, and apply your results. The offset tables are relatively course, so you’ll have to judge whether or not the correction should be made or not. For reference, I had to reduce my offsets below 58psi by 1-2 values (-0.0078 to -0.0156ms) at 14V and 15V, and increase my offsets by 3-4 values (0.0243-0.0313ms) at 12V and 13V. Once the offsets have been fixed, you need to filter data to look exclusively at pulsewidths below 4ms. For reference, I ended up increasing the short pulse adder by 3-4 values. After these corrections, my existing MAF curve performed the same as it had before the swap.

Extensively Ported Throttle Bodies

While extensively porting a throttle body will make it less of a restriction at WOT, the porting generally hurts the part throttle performance. The shape of the throttle body was designed with ridges that give the driver more control at part throttle. A ported throttle will let more air in for a given throttle position. The change in the relationship between airflow and throttle position is the highest at idle. In general, a ported throttle body isn’t worth the tuning pain for a daily driver where throttle manners are critical. A ported throttle body can lead to undesired bucking and surging. However, you can tune this out.

The throttle body is an actuator for engine torque. When driving, the driver functions as the controller. Being a human, you’ll adjust how you move your foot to quickly adapt to the change in the actuator. At idle the computer takes over, and it is not so good at adapting. A ported throttle body has a higher mechanical gain. To compensate for the higher mechanical gain, you’ll have to reduce the idle control gains in the ECM. Without having a background in control system design (which I do), the easiest way to do this is to simply proportionately scale down the idle proportional and integral gains. This will give you a lower system gain without altering the location of the moving zero (if you don’t know what that means, don’t worry, just start by multiplying by 0.9, then 0.8, and so on until things settle down). You will likely still get a little undershoot and overshoot, but they will be much smaller. DO NOT reduce them too much, or the throttle will hang open and we’ll hear about you on the news. Better results can be achieved by reshaping the gains, but read up on PI controllers and control systems first.

If you have a cam, things get even more complicated. There are several resources out there on tuning idle for big cams, but just be aware that a big cam and a ported throttle body combine for potentially many hours spent tuning your idle. I wouldn’t jump in with both feet and try both at once!

Advanced Filtering

With some experience in Excel or programming, you can write your own software to generate histograms. While the VCM Scanner provides very powerful histogram generation features, once you get into AFM/DOD, VVT, VE Bias, and other of the more difficult features to tune, you’ll need to get creative with your filters and histograms. Street tuning also falls into this category, as without a load bearing dyno you’ll have trouble getting the steady state data needed for the tabular control approach used by every ECM out there (dynamic models require transient data, but generating those models and getting them to run in real-time is time and cost prohibitive and doesn’t provide enough of a benefit).

Aside from an AFM/DOD filter, the most beneficial filter you can make is one that seeks out steady-state data. After a lot of experimentation with analog and statistical filtering, I’ve found that the best filter is fairly straightforward. What I do is pick out a moving window of pedal position, and look at the difference between the highest and lowest values. I’ve found about 80 samples to work well, with a little bit of an offset so it’s looking the last 50 and next 30. If the pedal changes more than 1% in that window, I throw that data out. If you are looking a wideband, you can also filter on lambda changes to get rid of any burps in the data. I’ve also found looking at RPM change or transmission shifts to be useful, but they generally can use a smaller window of 40 samples or so.

Perhaps ironically, once you start using these filters you’ll find that they become less and less useful at each cut. Once you are close to done tuning, you’ll observe very little change during pedal transitions and shifts. Obviously, a load bearing dyno is the easiest way to get real steady state data, but then you introduce error in the way the engine is loaded and the temperatures at which it operates. Ideally, you would use a dyno for VE and spark tuning and the street for everything else. For those without access to a dyno, or if you are just cheap like me, the pedal change filter can get you most of the same data (high-load, low-rpm being the ultimate exception).

Another benefit of building your own tools is the ability to process data multiple times. For example, when tuning injectors you can build your offset histogram with data above 4ms and make a second pass with the data below 4ms, but instead of looking at the predicted correction directly you can apply your proposed corrections from your offset histogram to the data and generate a short pulse correction that takes them into account. This kind of tool can be very powerful for anybody, although if you only tune one personal car it only makes sense if your commute doesn’t give you enough data to avoid driving around just to tune.

Another potential feature that can come from writing your own tools is the ability to string multiple logs together. Even though Excel has a size limit that is similar in size to what VCM Scanner can record, in practice it is very difficult to log that long. It is also very easy to cut and paste multiple logs together. Once you write your own tool, you are limited only by memory. It is also advantageous to string multiple logs together from days with different weather conditions when tuning VE, as you can generate 3D histograms (using MAT or something more complicated) to tune MAT bias. I recommend using cold starts and the difference between MAF airflow and VE airflow to get a solid first cut for that task, but I hope you see where I’m going.

List of Useful Resources: My Scanner Settings

Finally, here are the scanner settings that allow me to tune basically anything engine related. You can pare this down to get faster sampling for MAF and VE tuning, or add more to do work on the transmission. I’ve been able to use this one config for nearly everything. Throttle position and calculated torque are the only two other variables that I’ve looked at, but neither proved as generally useful. One thing to note is that I built an instrumentation amplifier with a gain of 0.2 to bring my wideband into my secondary O2 sensor input.



List of Useful Resources: Websites

HPTuner experiments: Three Airmass Models
Read Me!!! Tuning How-To's & General Information - HP Tuners Bulletin Board
EFILive Forum (No good sticky here.)

List of Useful Resources: Books

http://www.amazon.com/Engine-Managem...6486446&sr=8-1
Amazon.com: Designing and Tuning High-Performance Fuel Injection Systems (9781932494907): Greg Banish: Books
http://www.amazon.com/Performance-Fu...6486446&sr=8-3

Note: Also check your local library for the books.