You don’t have to be Microsoft A+ certified to flash reprogram automotive PCMs, but the process requires a certain amount of know-how as well as special tools and access to the latest OEM software upgrades (which are not free!). What’s more, it’s not a risk-free endeavor. Certain precautions must be undertaken before you begin, and there are pitfalls that can trip up even those who are experienced in this sort of service procedure.
Like any laptop or desktop computer, the powertrain control module (PCM) in a car or truck contains a software program that tells it what to do. The software tells the PCM how to process its various sensor inputs and other requests so the vehicle operates normally. This includes all the things the PCM controls such as spark timing, fuel mixture, various emissions functions (EGR, EVAP, PCV, etc.), transmission shifting and torque converter lockup (unless these jobs are handled by a separate transmission control module), theft deterrence and self-diagnostics (including OBD II monitors and self-test procedures). The software may also include information on how to handle communications from other onboard modules such as the ABS/traction control/stability control system, climate control system, body controller, air bag module, keyless entry system and so on.
There are a lot of lines of code in the programming, and the instructions include calibration information designed for a specific vehicle application. So unlike Windows XP or some other piece of software you might purchase for your personal computer, the programming for a PCM is unique to that vehicle and that vehicle only. The programming will vary depending on the year, make and model of the vehicle, the size of the engine, whether it has California, federal or Canadian emissions calibration, the type of transmission, gear ratios and tire size, and whether it has special options (such as traction control, automatic climate control, etc.) that interact or communicate with the PCM.
Because of this, you can’t simply swap a PCM from one vehicle into another and expect it to work perfectly. The swapped PCM may allow the engine to start and run, but it may also cause weird driveability or emission problems, or various fault codes to set. Also, if the VIN in the PCM doesn’t match the VIN number on the vehicle, it can complicate scan tool diagnostics, future software updates and vehicle documentation and tracking. That’s why replacement PCMs need to be flash programmed with the correct and up-to-date information.
The other reason to undertake a flash programming procedure is to cure an emissions or driveability issue, or to enhance vehicle performance or diagnostics. Sometimes a glitch or oversight in the original factory software leads to problems later on. The OBD II system may be overly sensitive and is setting fault codes where no fault really exists. Or maybe the torque converter locks up too soon and creates a driveline vibration or shudder. Whatever the problem happens to be, it may be possible to correct or minimize it by flashing the PCM with new programming or configuration data.
Software or calibration changes can be used to tweak the sensitivity of the OBD II monitors, to add self-checks that may not have been part of the original programming, to revise various operating perimeters (idle speed, fuel mixture, the timing of various emission functions, etc.) to improve cold start idle quality, idle smoothness or whatever.
GM estimates that 70% of 1995 and newer GM cars could benefit from a flash update, yet few cars have received the updates because many technicians are not aware the updates exist. Unless you happen to discover a flash update as a fix in a technical service bulletin, it may not occur to you that a flash may be needed to solve your problem.
Flash reprogramming is possible because most late-model PCMS and other onboard modules have EEPROM (Electronically Erasable Program Read Only Memory) chips that store the instructions. When the chip receives the correct electronic code, it allows new information to overwrite the old information.
EEPROM chips have been used since the mid-1990s on a wide variety of vehicles. As a rule, most 1996 and newer vehicles with OBD II are flash reprogrammable. Even so, you have to check the OEM service literature to find out if a PCM or other module can be updated. On older GM PCMs, updates required physically replacing the PROM chip on the PCM circuit board.
There were zillions of different part numbers, and the prongs on the PROM chip could be easily bent during installation. Static electricity from touching the chip or PCM could also zap the electronics. That’s why the vehicle manufacturers went to EEPROMs. It make the process much easier by allowing the information to be written over the old information using a scan tool or J-2534 pass-through tool (more on this later).
Flash reprogramming may also be used to update the software in a variety of different modules on today’s vehicles. A partial list of GM programmable control modules includes:
Body control module (BCM), transmission control module (TCM), vehicle stability enhancement system (VSES), rear wheel steering control module (RWS), driver door control module (DMD), memory mirror module (MMM), vehicle communication interface module (OnStar), digital radio receiver (DRR), liftgate control module (LGM), sensing and diagnostic module (SDM), vehicle theft deterrent control module (VTD).
Getting Set Up
Flash programming requires several pieces of equipment. First, you need a laptop or desktop computer. Most require a computer running Windows 98 or XP with a CD drive and network modem. The PC is needed to copy software updates from OEM-supplied CDs, or from OEM websites. For online access, a fast DSL or cable Internet connection is required. A dial-up connection is too slow to handle this type of download and data transfer. Some of these files are quite large (up to 50 megabytes) and may take as long as 40 minutes to download over a DSL connection.
You also need the appropriate OEM installation software (which can usually be downloaded from the OEM website) to download or copy their flash updates from the PC to your scan tool or J-2534 pass-through tool. A list of OEM service websites can be found at www.nastf.org. To transfer the software from your PC to the vehicle requires a scan tool (an OEM scan tool such as a Tech2, Ford NGS, Chrysler DRB III, etc.), a flash capable aftermarket scan tool, or a J-2534 pass-through tool and cables. OEM scan tools are expensive and cost thousands of dollars, and some aftermarket scan tools may require hardware and/or software upgrades before they can do a flash update on a vehicle. The least expensive way to go is to buy a J-2534 pass-through tool.
You’ll also need patience. A reflash isn’t a simple or quick procedure. Some reflash procedures may take an hour or more to complete — and you’d better hope nothing goes wrong during the flash. Loss of voltage to the PCM or a break in the cable connection between the PCM and scan tool or J-2534 pass-through tool during the procedure can totally screw up the PCM. In some cases, the PCM may not accept another flash and may have to be replaced! That’s one of the risks of flash programming.
Before You Flash…
Before you attempt to flash program a PCM or other module, you first need to determine if the software in the module is the latest version that’s available. If it is the latest version, then there’s no reason to proceed. Most OEMs will not allow you to reflash the same information over current information. So if an updated version of the software is not available, the module probably won’t accept a reflash. Also, most flash updates are one-way. You can’t go back to an earlier version. You can only install the latest calibration.
Figuring out if the calibration is current or not takes some work. On GM applications, you first have to use your scan tool to request the current calibration information from the PCM or other module. This will typically be an eight-digit number. You then have to go online to the GM calibration identification website to look up the latest calibration number for the year, make, model and VIN of the vehicle. The GM website is http://tis2web.service.gm.com/tis2web. You then enter the vehicle VIN and click on “Get CAL ID.” You then see a list of supported modules that can be flash programmed. Choose the PCM or other module and you will finally get a list of the latest calibrations. If the number on the website is different from the one in the vehicle, it means updated software is available.
Unfortunately, you can’t download the new software from the website. You first have to pay for a TIS subscription from GM, then GM will mail you a CD that contains the software upgrades. You then have to put the CD into a personal computer, copy the software to your scan tool or J-2534 pass-through tool before it can be loaded into the PCM in the vehicle. Eventually, GM will make their software updates available online, though you will still have to pay a fee to get it. In the meantime, you have to jump through some additional hoops before you can update a PCM.
With Ford vehicles, a somewhat different approach is used. First, you need the vehicle calibration ID number. This can be found on a sticker somewhere in the engine compartment. Next, you have to figure out if there is a newer calibration available. This requires going to the www.motorcraftservice.com website, selecting “quick guides” on the left side of the screen, selecting “latest calibration information” and then downloading a 205-page Excel spreadsheet file to your computer. The file lists all the calibration IDs for 1994-2006 Fords. After searching the list for the vehicle’s calibration ID, you then look for any newer calibration IDs. If you find one and have paid your access fee ($15 for one-day access), you can then download the software through the PC and scan tool or J-2534 into the vehicle. With Ford, the software is not stored on the PC first, so the procedure is “live” and requires a continuous unbroken Internet connection until it has finished.
Chrysler’s flash procedure is sort of a cross between GM and Ford’s procedures. First you go to the www.techauthority.com website and download their “benchtop Programmer” software to your PC. Then you download a huge pdf file (“J2534 Flash Availability”) that lists all Chrysler PCMs and their software updates. Chrysler uses vehicle body codes to identify the PCM in addition to the VIN, and you need to use a scan tool to get the module ID from the vehicle. If the vehicle needs an update, you go back to the Chrysler website, pay their access fee and download the new software to your PC. Then you transfer the software from the PC to a scan tool or J-2534 pass-through tool to install it in the vehicle.
As we mentioned earlier, it’s absolutely essential to maintain a constant, steady voltage supply to the PCM during a flash. If the voltage drops because a cooling fan kicks on unexpectedly, or the EVAP system decides to run a leak test, the voltage fluctuation may interfere with the flash. You don’t want the software scrambled.
The vehicle battery should be fully charged before you start the procedure, and on some vehicles it may be wise to pull fuses on any circuit that might suck voltage out of the battery during the procedure (cooling fan, for example). A battery charger may also be used to maintain full battery voltage, but be warned that some battery chargers do not produce a steady DC current (GM only approves using a Midtronics charger for this purpose).
After a flash procedure has completed, the standard procedure is to turn off the key before you disconnect the scan tool or J-2534 pass-through tool from the vehicle.
On GM applications, the MIL light will usually come on when the ignition is turned back on. A code P1336 will be set in memory meaning the PCM has not yet learned the relationship of the crankshaft position sensor. To get rid of the code and turn off the MIL, you need to perform a “CASE” relearn procedure using a Tech2 scan tool or aftermarket scan tool with the required software. The CASE relearn procedure requires starting the engine and running it at wide open throttle briefly until the PCM relearns the missing information.
If we haven’t scared you away from flash reprogramming with all these descriptions, we at least hope we warned you that flashing PCMs isn’t “plug-and-play.” There are a lot of steps involved, and it takes some time to figure out all the details and nuances of different vehicles. Some shops have created a profitable niche for themselves by specializing in flash programming. Scot Manna of MB Automotive in Des Plaines, IL, operates a small repair shop that does flash programming for other area shops. Manna has made a sizable investment in OEM scan tools, cables and software to pull it off, but once he established a name for himself, the work has been coming in. He also puts on flash programming seminars for the Illinois Air Team, which I attended to glean much of the information I used to write this article.