396 setup and PCM calibration

OK, I've got an assembled engine - now what do I do with it?

First, I need to know a few things about the completed engine.  I ended up with a final compression ratio of 11.3:1, based on the following dimensions - 5cc valve reliefs in flat-top pistons, 0.034" deck height, 0.051" compressed gasket thickness, 54.5cc head chamber volume, and 49.5 cid cylinder volume.  Since this is a bit higher than stock, careful attention will need to be paid to ignition timing.

Next, the new engine needs some serious fuel, so I upgraded to SVO/Bosch 30 lb/hr injectors.  Since these are pintle-style injectors, they open slower than the stock ball-style Delco Multec injectors.  I need to take that into consideration along with the larger flow rate when reprogramming.  Something else to consider is that SVO and Bosch rate their injectors at 39.5 PSI, while Delco rates theirs at 43.5 PSI.  Taking that into account, the SVO/Bosch injectors flow something closer to 32 lb/hr.

Although I didn't make any changes to the axle gear ratio (I already had 3.73s at this time), I did add a looser torque converter.  This will require higher part-throttle shift points to keep the same "feel", and lower full-throttle shift points to account for the added slip of the converter (the transmission looks at the output shaft speed to calculate shift points, and doesn't take the engine speed into account).  Additionally, the new engine makes more power at any given throttle position, so a bit more line pressure at smaller throttle openings will help the transmission survive.

I had made some hardware changes before, due to my headers.  The EGR was deleted (as it's not really required for larger cams, due to the increased overlap providing plenty of "internal EGR"), as was the AIR pump (per GM's TSB for the '95-'96 B-body).  The part-throttle and WOT fuel tables and the timing tables were improved a bit for my ZZ3 cam.

So, with that being said, let's jump into it.  I used LT1_edit, so users of Tunercat will need to "interpret" what I'm doing.

Main Screen


Starting off with a "virgin" file for a '95 Impala, I first when to the options on the main screen.  In the "Function Enable" menu, only "Vehicle Anti-Theft" was turned to "on".  To be honest, I'm not sure what affect the "Traction Control" flag has on the rumored traction-control timing retard.  I've got it turned off and haven't seen any timing retard despite enormous amounts of wheelspin.

Engine Screen

Going into the "Engine" section, the "EGR Enable" values were set to 99.4 kPa of MAP and 6375 RPM (the highest allowable values).  The "EGR Disable" was set to the same.  The hardware test for Code 32 was disabled.  Going into the "Idle Speed vs. Temperature" table, 300 RPM of idle speed was added to the entire stock table.  This seems to work well with the cam that I'm using, and my motor idles with a beautiful lope at about 900 RPM.

Fuel Screen

This is where we do the majority of the work, since delivering proper amounts of fuel is pretty dang important.

VE (volumetric efficiency) tables

The VE tables scale the fuel delivery at part throttle.  Ideally, one wants to maintain a BLM value of 124-128 throughout the operating range. By logging data over the normal operating range, it's possible to determine how to change the VE table to bring the BLMs into the desired range.

Start by logging as much data as possible, of course.  Sort it out using a spreadsheet so that you can determine the BLM value vs. MAP and RPM, as this is how the VE tables are arranged.  You'll want to determine the change to the VE table using the following formula:

% change = [(Current BLM - desired BLM)/desired BLM]*100

So, say we've got an average BLM value of 116 at 2000 RPM and 60 kPa of MAP (this is a pretty common area for my car to cruise during my drive to work).  Targeting a BLM value of 128, you'd want to decrease the VE tables values by about 10% in that area of operation.

Tuning VE tables takes time, and it's not entirely clear what effect they have on the operation of the LT1 PCM while in MAF mode.  Be patient, and make small changes.

The other option is to use Joe Georger's VE Master program.  It takes your logged data and current PCM file as inputs, and adjusts the VE tables accordingly.  It's pretty slick, but I haven't played with it much - yet.

PE (power enrichment) tables

PE tables are used to deliver extra fuel during heavy acceleration.  This enrichment provides additional power and prevents the engine from melting down.  Too much fuel and the engine won't live up to its potential (way too much fuel will contaminate the oil and cause major wear problems); too little fuel and stuff will melt down.  Clearly, it's best to err on the side of too rich;)  There's a table for PE enable that uses engine speed and throttle position.  I'd recommend keeping this table stock unless you've got a good reason to mess around with it.

Before tuning WOT mixture, you need a way to determine the air/fuel mixture.  The stock O2s aren't really accurate at anything other than 14.7:1; since we're tuning with air/fuel ratios between 11:1 and 13:1, they're of very little use.  So, that leaves two good options - a wideband O2, or plug reading.  Many dynos now offer wideband monitoring of AFR during each pull, and this is a really good way to tune WOT fuel delivery.  Plug reading is a bit more difficult to master, but offers more insight into what the engine's doing.  For example, it's possible to get inaudible spark knock with certain tunes (usually involving a cold thermostat, very rich mixtures, and way too much timing).  The knock sensor won't pick up this detonation, but plug reading will provide clues.

OK, now that there's a method in place for monitoring the AFR, it's time to tune.  There's two main tables for WOT AFR tuning - PE vs. Coolant Temp, and PE vs. RPM.  Each adds a certain percentage of additional fuel when in PE mode, according to the following formula:

WOT AFR = 14.7 * (previous BLM/128) / (1 + PE vs. RPM value/100 + PE vs. Coolant Temp value/100)

The PCM will use the BLM value of the cell that was in use before going into PE mode, as long as that value is greater than 128.  If not, then the PCM will use 128 as a "default" BLM for PE calculations, which then makes the equation look more like this:

WOT AFR = 14.7 * (128/previous BLM) / (1 + PE vs. RPM value/100 + PE vs. Coolant Temp value/100)

The factory B-body tune uses a PE vs. Coolant Temp value of 16% in the normal operating temperature range, and a PE vs. RPM value of 2-16% across the rev range. This means that the minimum AFR is around 11:1, which is way too rich for peak horsepower.  It's tempting to just knock down the PE vs. RPM table to something like 4% across the whole range - don't!  It's extremely risky to make changes to the PE tables without any way of verifying the actual AFR.  Leaning out the mixture might be worth 10 HP on a relatively mild engine; it also might just melt down the pistons or pound the bearings when detonation sets in.  If 10 HP is worth that sort of risk to you, fine; otherwise, approach the PE tables with caution.

Open-loop AFR vs. MAP vs. Temp

This table is used when the car is operating in "true" open-loop mode (that is, closed loop operation has not yet been enabled during that particular run cycle).  For those with large cams, it may be necessary to look at the values around 30-40 kPa of MAP and transfer those to the 50-60 kPa region of the table, as larger cams will idle at higher MAP values.

Tips and tricks for fuel tuning

If you find yourself making big changes across the entire VE table, consider changing your injector constant.  Using a larger injector constant will lean out the fuel delivery, and smaller injector constants deliver more fuel.  Be careful, or else it's easy to screw up the WOT tuning!

If you're having difficultly with BLMs at low RPMs and you have non-stock injectors, you may have a problem with your injector offset table.  This table allow the PCM to compensate for the increased opening time of many aftermarket injectors; without accurate values, the PCM can't determine the correct amount of injector "on" time and this will show up as inaccurate fuel delivery at low engine loading.

If you've got a hacked MAF sensor, it's likely that you'll have a difficult time when trying to tune the VE tables.  Either return to a stock MAF (B-body MAF for cars under 300 RWHP; F-body MAF for highly-worked cars), or have fun playing around with the MAF calibration table.

Often, you'll find the dreaded "split BLM" problem when running more aggressive cams.  This most-often shows up at low engine speeds and MAP values, and the right side BLM will typically run 10-20 counts higher than the right.  If you've ruled out mechanical problems (header leaks, vacuum leaks, lazy O2 sensors, etc.), try playing around with the opening of the throttle plates at idle to achieve about 80-100 counts of IAC opening.

Bigger cams will typically result in decreased VE values at low revs and increased VE values at high revs.
 

Ignition

Proper ignition timing is critical to good performance.  Let the engine's performance determine what timing values to use; don't force a certain amount of timing on the motor just because you think it'll work better than what you're currently using.  Hint: the stock timing tables are pretty aggressive.  Keep in mind that there's about 4 degrees of additional advance that's added on top of the base timing tables (I'm not sure if this is added by the PCM or by the mechanical positioning of the Opti-spark; I've heard conflicting stories - most scan tools take this into account and report the "true" total timing).

Basically speaking, the majority of one's time will be spent with the two main advance tables - 0-4000 RPM, and 4000-up.  With larger-than-stock cams, there's often a bit of work that needs to be done in the idle and part-throttle areas to smooth out the cam.  It's tough to give general advice for tuning in this range; try to stay below 30 degrees of advance around idle (especially if you need to pass emissions), and tune slowly and carefully.  If tuning for maximum fuel efficiency, try adjusting the tables up and down by about 2 degrees at a time and monitor MAP at your normal cruising speed; decreased MAP readings typically indicate an increase in efficiency.

The Maximum Retard vs. RPM and Maximum Retard vs. MAP are used to set the maximum amount of spark retard allowed by the PCM.  I don't typically advocate decreasing the values in these tables as a way to avoid knock retard (due to false or real knock), but hey, it's your engine.  The MAP-based table is used during part throttle, with the RPM-based table being used during Power Enrichment.

Burst Knock Retard occurs during large changes in throttle position, MAP reading, or MAF readings.  It's pro-active knock retard, so no actual knock events need to occur for this retard to take place.  If you're finding that this knock retard is too persistant in removing timing, try to reduce the values in the Burst Knock Retard vs Temp tables, and the value for the # of crank 1/4-revolutions ("DRP") that the retard will last.  This is one area where the stock calibration is very conservative; actual burst knock events are unlikely during normal operation with reasonable timing values.
 

That covers the actual engine part of the PCM calibration.  Automatic transmission calibration is a whole 'nother thing, and one that I'm no expert in.
 

Additional Resources

Check out these links for more LT1 tuning info:

LT1_edit list

Christopher Bennight's LT1 Glossary

Carputing (home of LT1_edit)

Tunercat (tuning software for many GM ECMs/PCMs)

Dave Plummer's LT1 XML Schema (very cool!)

Ludis's GM ECM website (not much LT1 stuff, but plenty of good general info)

GM_ECM (general info on GM ECMs and PCMs; a great advanced resource)

My LT1 file repository (feel free to send in your files to eric@bryantperformance.com!)