DIY LT1 PCM Programming

Given the choice between shelling out $50-$350 every time I make a modification, and being able to perform PCM modifications myself, I don't think there's much thinking to do.  I'd rather have the ability to make my own modifications, given that I really feel that I know my car best.  And so, I started down the road of DIY PCM programming.
 

Hardware and Software

First, you need to figure out what you're trying to program.  If you have a pre-'96 LT1 or L99, then you're dealing with a OBD-I computer. '96 and later vehicles are equipped with OBD-II PCMs.  Without getting too technical, the OBD-I PCMs use a hardware interface that's relatively easy to understand and duplicate.  With OBD-II came a new hardware interface which is much familar to the DIY crowd.

For those with ODB-I, you can use OBD-I LT1_edit or Tunercat.  OBD-II users are stuck with using the new OBD-II version of LT1_edit, with its special hardware interface and a rather steep pricetag (check out the website for up-to-date pricing).

You also will need an OBD-I hardware interface if that's what you plan on programming.  I'd recommend the interfaces from AKM Electronics, or you can build your own.  I tried using my own design, but I haven't had much luck yet (further troubleshooting will be required - by all means, it really should work).

For those building their own cables, you'll need the following parts from Pioneer-Packard:

Connector shell: 12110252
Pins: 12047581
Clip: 12110254

I think you can also get these parts over the GM parts counter, but I'm not sure.  As explained on AKM Electronic's page, some GM OBD-I cars use the 16-pin "OBD-II standard" connector.  As far as I know, all '94-'95 B-bodies use the 16-pin OBD-II connector.  If there's any doubt, use the info on AKM Electronic's page to determine your connector type.

Converting OBD-II to OBD-I

So, you've got a 1996 Impala SS, but you don't want to pay for an OBD-II programming package?  Well, read on.

For the most part, you can remove your OBD-II PCM and simply replace it with an OBD-I PCM.  The pinouts are the same, and the OBD-I PCM will just ignore the various OBD-II-only sensors.  There are a few differences, though, but fortunately they're easy to fix.

First, the '96 cars got 2 higher-impedance (100 kohm) knock sensors, each with their own seperate inputs to the PCM.  OBD-I PCMs will "look" for parallel lower-impedance (3.9 kohm) sensors which share a PCM input.  You can either replace your knock sensors with the older sensors, or just fool the PCM into seeing the correct resistance.  The knock sensor inputs are pins 21 and 22 on the Blue connector of the PCM.  Simply bridge these pins together if you're going to use the older, lower-impedance sensors.  If you want to keep your current sensors, bridge the pins together, and then place a 2 kohm resistor between the pins and ground (if you're doing this internal to the PCM, there's a very large area of ground plane around the connector).

Second, '96 Impala SS received a tachometer that doesn't work properly with the OBD-I PCM tach output.  For whatever reason, the tach is looking for one tach pulse for every two spark events, while the PCM provides a tach pulse every time the plugs fires.  This means that the tach will read twice the engine speed unless modifications are performed.

I built a tach-correction circuit that corrects the signal coming from the PCM.  While my circuit is currently placed in the wiring harness (there's a small black box that sits under the hood), my next version of the circuit will sit in the PCM.  As I further develop this circuit, I'll post the information here.

No other wiring is required.  Overall, I prefer this solution (especially since the OBD-II PCMs are more sensitive to "extreme" engine modifications).  The real drawback to using OBD-I PCMs is in programming for shift points - the OBD-II computers are much more accurate at shifting the transmission at the correct vehicle speed (apparently, the OBD-II PCM has a much-faster bus speed, which allows the PCM to read the vehicle speed sensor more often).  For all but the wildest vehicles, this isn't a problem if the PCM shift points are set to 3-4 MPH under the desired shift point.
 

Programming

I use LT1_edit, so any hints that get posted here will be slanted towards that software.

For the time being, I'm avoiding any sort of extensive write-up of programming hints.  For that, I'd recommend the LT1_edit FAQ and the LT1_edit mailing list archives  (you should also be able to join the list from the link).

If you want to check out my LT1 file archive, click here.  Be forewarned - I make no claim that any of these programs work properly.  Use them strictly at your own risk.  Downloading someone else's file into your PCM without proper attention is a great way to hurt something.

So what have I done with my programming?  Nothing radical:

- Decreased VE table values at lower RPM and MAP levels (since I'm using a bigger cam)
- Increased in-gear idle speed
- Decreased power-enrichment values (as the stock program is much too rich at WOT)
- Increased redline
- Increased shift points
- Adjusted for 3.73 gears
- Disabled AIR and EGR

Once the 396 goes in, I'm sure this list will grow!

Email me with any questions or comments.