The prevalence of vehicle programming

Sept. 15, 2016
J2534 programming continues to become more commonplace for many independent shops. But how do shops make the most of this service?

Editor's Note: This article was orginally published Sept. 15, 2016. Some of the information may no longer be relevant, so please use it at your discretion.

We will be discussing how and when to program computer modules on today’s vehicles.

First, let’s come to agreement on some terms: Flash, reflash, program, reprogram and software update are universally used to mean installing or updating software in a module or modules of a vehicle. Personally, I do not like the terms “flash” and “reflash” because I need to sell a job or process to my customer, and it is much easier to do so when they understand what service I am performing. Flash or reflash means nothing to most consumers.

It is much easier to achieve customer acceptance when they can relate to a procedure. The terms programming, reprogramming, and software update are much more familiar because customers already have experience with those processes on their laptops and smartphones. There is a difference between a program and a reprogram, though. Typically, a program is the process of installing software into a module after that module has been replaced. A reprogram is when current operating software in a module or modules is changed in order to operate differently.

The need to perform programming services is now more relevant in the aftermarket than it ever has been, but it seems there is still a lot of resistance from shops to get in the market. With the advent of CAN networks, there are many more instances where programming is necessary when a component is replaced. Many vehicles now require a programming event when seemingly normal service repairs, like battery replacements, are done.

When programming is necessary, there are a few different options available to the technician. One option is to purchase factory scan tools that have programming capability for each make of vehicle you repair. Depending on how many different types of vehicles you work on, that could be quite expensive.

Another approach is to use either a mobile service or another shop to perform programming services. The positive aspect is that you do not need to invest your time and money into a technology. On the down side, eventually you will need to perform those services in-house in order to both improve profits, and the ability to repair vehicles on your schedule rather than relying on someone else.

We will discuss the need to perform programming services, as well as the tools required, and some of the pitfalls that can occur if the proper steps and precautions are not taken.

Step 1: Determine the need

Programming a module is necessary when the module is replaced. First of all, a module typically is built to fit many different applications, and the variations between vehicle models and options usually uses different software programs to function properly. The other reason is modules need programming to be “introduced” to a CAN network of the vehicle or initiated to be able to communicate properly with other modules.

Reprogramming modules is done to either correct emission issues or resolve issues affecting operation of a specific system. In most cases, an issue requiring reprogramming, a TSB (Technical Service Bulletin) will be issued by the vehicle manufacturer. It is important to keep in mind if you are reprogramming for an emission update, once the update is installed, you will not be able to revert to the prior version of software because the vehicle would no longer be in emission compliance.

There has been a shift in the repair industry on when to obtain information and/or repair assistance during the repair process. In years past, technicians would reach out to information sources and hotline help desk services toward the end of a diagnostic strategy after they had exhausted their traditional test methods. I have done that many times in the past. Part of that is admittedly ego; there is not a car around I cannot fix. The other part is in the past most of the available help services did not have a lot of good, reliable information that would assist in the repair.

Now with much better help services, relevant diagnostic information and more current TSBs it is best to check for applicable repair information, TSBs and common failures through sources like IdentiFix at the beginning of your diagnosis. Doing so does not mean you can ignore essential diagnostic procedures such as verifying the customers’ concern or testing all the systems that can affect vehicle operation, but it can save a lot of time by providing a shortcut to a likely issue.

Part of determining if a reprogram is warranted per any TSB is to verify the applicability to the vehicle. This is done be verifying if the VIN and production date fall within the ranges specified in the service campaign. It is also necessary to verify the TSB is relevant to the vehicle by checking if the symptoms are present. If the symptoms designated by the TSB are not present in the vehicle, changing the software could cause drivability issues that were not present before the update

For example, a reprogram would be warranted if the vehicle manufacturer determined that during some conditions a false EVAP system leak DTC will be set. The vehicle manufacturer determines if any hardware changes are necessary in addition to changing the operating or monitoring of the EVAP system by a software update that prohibits the false code from occurring. Another software change could be necessary if the vehicle manufacturer has found that, after a specific number of miles, some vehicles exhibit harsh gear shifts. In this case the manufacturer will change software to reduce the engine rpm shift point or transmission pressure to soften the shift.

In either case, if the issue was not relevant to the specific vehicle, changing software could cause drivability concerns. In the case of the EVAP update, an EVAP leak may not be detected by the PCM. In the case of the transmission shift update, the transmission now may slip between shifts due to lower pressure.

Step 2: Perform a complete system diagnosis

In every case of programming or reprogramming it is necessary to diagnose the system completely and properly. In the case of a module replacement it is necessary to determine why the module failed. Was it just a faulty module, or was there a short in the wiring or another component that damaged the module?

Start with obvious, but sometimes overlooked, essential diagnostic tests. Use a battery/charging system tester to check the battery and charging system. Use a DMM or a circuit tester like the Power Probe IV to test for opens and shorts in the system. Always test solenoids that are controlled by that particular module for shorts. This is necessary because those solenoids only operate under certain conditions and may cause the new module to fail when those conditions are met after the repair.

Use your scan tool to both monitor PIDs to see if components are either working correctly, or if they are operating in the fashion laid out in the TSB. It is also a good idea to observe Mode $06 test results to see if any issues exist that pertain to the customers’ concern. You should also use bi-directional controls to make sure systems are responding properly to commands.

All of these tests are necessary to determine the functionality of components. Two specific reasons to test in this manner are to understand why a module failed, and how an improperly working component can affect the overall operation of a vehicle after a software change. For instance if a camshaft timing actuator is sticking and affecting timing, when new software is installed it assumes the cam timing is at its zero setting. If, in fact, it is already retarding cam timing, the vehicle will not operate properly.   

Step 3: Prepare for the software update

In preparing for the software update, there are some processes that are required for all J2534 compliant tools as well as manufacturer-specific programming tools. In order to obtain both programming and tool requirements from vehicle manufacturers, it is necessary to go to the vehicle manufacturer’s website. An easy way to do this is to link through either www.oem1stop.com or www.nastf.org. Both of these sites provide links direct to vehicle manufacturer websites that provide the necessary information to determine the specific requirements of the vehicle to assure success during the programming event.

It will be necessary to have some information from the vehicle including the current software version, the VIN and production options, also referred to as RPO codes. I typically use my phone to take pictures of the VIN and RPO labels, which includes the RPO codes, in order to easily access this information.

One of the most important things is to make sure the vehicle battery voltage is sufficient and will not go below a minimum voltage during the programming process. Vehicle manufacturers in many cases specify which battery maintainers are approved to use during a programming event. It is extremely important to have a battery maintainer that will keep the supply voltage at a specific level. Voltage that drops below or rises above that level can cause not only the programming to fail, in some cases it can make the module unusable. Normal battery chargers are not acceptable because their output rates are not stable or conditioned to prevent voltage spikes.

J2534 tools by definition all provide programming capability. To meet the SAE J2534 specification, all tools need to be capable of being a universal programming tool to all makes and models. After purchasing a programming tool, software will need to be loaded onto your laptop. When doing this, make sure the laptop operating system you have is compatible with the programming tool. If you are using Windows 10, make sure the programmer is capable of operating in that environment. If other software is loaded onto that laptop, make sure it is compatible with the programming software. In most cases this is not an issue, but in some cases a vehicle diagnostic program may interfere.

A high-speed, stable Internet connection is required. In most cases it is best to not use a wireless connection to either the Internet or the vehicle. Background programs such as anti-virus or screen saver programs should be closed during a programming event. It is advisable to have your laptop plugged into a power source to make sure it does not shut down during the programming process.

Where J2534 tools differ is their support. Many of the tools come with a “toolbox.” The toolbox provides information to the user about how the tool works with a specific vehicle, what issues may arise, and what precautions and steps may be necessary during the programming process. The better a toolbox is in providing correct information regarding what is necessary to do during the programming event, the more valuable it is. Another difference between tool makers support is how easy it is to access help if issues arise.

This “toolbox” also provides a link to the OE website in order to purchase the necessary program software. This software is available for purchase either on an annual, monthly or daily basis for most manufacturers. One of the leaders in support is Drew Technologies. Using their CarDAQ line of programmers not only provides a state-of-the-art tool, but unsurpassed support and a very strong toolbox.

Step 4: Perform the software update

Once you purchase the software, the J2534 programming tool is connected to the vehicle DLC and your laptop. Think of the J2534 tool as the interface or communication link between the laptop and the vehicle.

After you start the update process, instructions will appear on your screen. Some of the instructions may be to disconnect certain fuses, components or modules in order to perform the update. These steps must be done in order or it can affect how, or if, the program works. There will be many key on/off cycles that need to be done. Make sure to follow these instructions closely and take care to not start the vehicle until told to do so.

I have found that it’s best to place your laptop on the roof of the vehicle and reach in through the driver window to cycle the key in order to keep from having to open and close the door. Be aware in many cases some components like cooling fans or other relay driven components can operate during the programming process. Again, it’s important to maintain proper battery voltage via a battery maintainer while these components are operating.  

One of the last steps in programming is to configure the software to match the specific vehicle. Configurable items may include tire size or gear ratios.

Step 5: Verify operation

After installing the software it will be necessary to perform a few tasks such as cam/crank relearns, resetting steering angle sensors, idle speed and other “learned” strategies. In some cases, it may be necessary to relearn key codes for anti-theft systems. In those cases, information was most likely provided during the program process on how to accomplish this. Be aware many Ford products will require at least two ignition keys to perform this function.

It will be necessary to perform a drive cycle on the vehicle in order to complete monitor tests. Use Mode $06 on your scan tool to verify all monitored systems are functioning within their test limits.

It is also a good idea to use your scanner to recheck communication between all the modules to assure they are functioning properly.

The process of programming or reprogramming seems intimidating from a time standpoint, but in many cases it is a very quick process only taking 15-20 minutes. Some vehicles can take a few hours to program all the modules. Once you have a better understanding of the process, you can make an educated decision on which vehicles you will choose to program and which you decide are not profitable and use other resources to service them.

A final word

With Right-to-Repair legislation changing the aftermarket landscape in the very near future you will most likely need to perform more programming services to stay competitive.

I will paraphrase part of a quote widely attributed to President John F. Kennedy in order to determine if you should program vehicles:

If not you, who?

If not now, when?

Sponsored Recommendations

Tesla service, repair, and diagnostics

Keep update-to-date on how to maintain your customer's Tesla vehicles.

Tool Review: Ascot Supply 3/4" Drive 600 ft-lbs Split Beam Torque Wrench, No. 168-00600

Reviewed by Eric Moore, manager at DeMary Truck in Columbus, Ohio.

Diagnosing an engine misfire

Recognizing a misfire is the easy part; the challenge is determining its cause.

The ‘Iron Giant’

This technician spent two and half years putting together his ‘giant’ of a toolbox setup.

Voice Your Opinion!

To join the conversation, and become an exclusive member of Vehicle Service Pros, create an account today!