Bits and bytes on J2534 module programming

Jan. 1, 2020
  Many of today’s service fixes are accomplished exclusively with software updates simply meaning that if you don’t do module programming – you don’t fix the vehicle, period.

Sometimes knowing “just a little bit” about something in today’s auto repair world is more than enough for me. I know just enough about automatic transmission rebuilding, for example, to know those jobs (for me personally anyway) are best left to a transmission specialist. Not so with other areas of our repair world.

Like this article? Sign up for our enews blasts here.

Some technologies are so intertwined in the entire vehicle you really need to embrace that technology before it runs you over. Case in point: For more than 20 years, every technician performing electrical or drivability work has needed more than “just a little bit” of knowledge about standard electrical theory, proper Digital Volt-Ohm Meter (DVOM) usage and scan tool know-how. More recently, we can add oscilloscope testing and module programming to our required knowledge set. Maybe you’re reading this and thinking to yourself, “I’m fine with electrical theory, meter usage and scanner operation and I’m getting there on the scope but module programming? Come on! That’s for the new car dealer who has the factory scan tool!”

We all know that dealers and independents that are fortunate enough to own factory scan tools can perform various software programming and configuration procedures on Engine Control Modules (ECMs) on today’s vehicles. What many independent techs and shop owners don’t know is that most OEMs are migrating toward field programmable software for non-emissions-related modules. That list is extensive for some OEMs and includes everything from Body Control Modules (BCMs) to heating, ventilation and air conditioning (HVAC) heads.

Many of today’s service fixes are accomplished exclusively with software updates simply meaning that if you don’t do module programming – you don’t fix the vehicle, period. The generation for improvements to drivability, false DTCs, system performance, in car odors, false airbag deployments, even making parts last longer all through software updates has arrived.

Not that many years ago, modules either were replaced or had a pluggable chip replaced to update that module’s software. This wasn’t cost efficient for the OEMs to do under warranty so they evolved to programming electronically via Electronically Erasable Programmable Read Only Memory (EEPROM). Another factor in the increase of software updates/repairs is the sheer proliferation of electronics on the vehicle. Add it all up and you’ll find $8,000 worth of electronics, software and wiring in the average $20,000 vehicle.

Yet another factor is that no manufacturer can make the business case for software validation levels comparing to those required by the military or NASA unless safety is involved. All the software validation/testing in the world still doesn’t guarantee 100 percent perfection. Even with safety related software there is always going to be the need for the OEM or OEM supplier to revisit the millions of lines of code and hex numbers to make the tweaks that prevents those false MILs or allow those blue tooth connections to link your smart phone’s Pandora streaming audio to your even smarter factory radio.

When a potential problem is spotted and a software update seems to make sense the carmaker 

still needs to be sure that a software “do over” is appropriate. It’s possible to break into the lines of code to fix one problem and create another problem. To give you a repair shop analogy, anyone who’s ever removed an instrument panel can relate. You might have a squeak or rattle after you’ve replaced an evaporator so you really want to make sure the evaporator is really the problem to not only justify cost but the effort as well. The benefit of the fix always has to outweigh the potential risk for a future problem.

The same holds true for the service community. Although the calibrations we download from the web and pass through to a particular module on the vehicle have been validated by the factory, there are some risks associated with module programming in the field with a J2534 device. The fuel economy may be worse now or the transmission may be shifting differently after a software update in the Powertrain Control Module (PCM).

The J Number Described GM vehicles had PCMs with EEPROM that could be programmed with a Tech 1 via a special adapter and cartridge as early as 1993. However, the universal standard J2534 didn’t come around until OBDII was set in place. Not until February of 2002 did the first standard by the Society
of Automotive Engineers (SAE) arrive in the form of just plain J2534. It was a description of a best practice for a pass through connection between the vehicle, an interface box, a computer and the software via CDROM / DVDROM or the Internet. The Internet source of calibrations survives while the discs have since been deemed obsolete.

J2534 recommends a way for one aftermarket device connected to any PC to be able to program various makes and models of vehicles without having to use the OEM’s factory scan tool. The manner of connection between the DLC and the interface module isn’t set in stone by J2534 so you’ll find while most are strictly USB connections to your laptop there are a few that operate wireless or over an Ethernet style RJ45 connection.

The standard was revised in April of 2004 and given the suffix J2534-1 and then revised again in December of that year to “clarify some issues” by both the toolmakers and OEMs. In March 2006, SAE released standard J2534-2 (really just a document), but the EPA did not put it into law. It allowed for more protocols (serial bus languages i.e. CAN, GM UART) along with hardware capabilities to address more DLC pin connections. This document was further updated in October of 2010 and includes non-emission related module programming for some OEMs. The word Universal is often used to describe the J2534 programming tools.

What can we make of all this mention of shifting sand documents and regulations? We can conclude that universal is truly universal when it comes to sockets, extensions and drive shaft joints but the word is not as literal when it comes to things of an electrical nature and industry and a government bureaucracy are involved! What is the take away advice when it comes to this? J2534-1 and -2 programing devices are not backwards compatible for certain vehicles made prior to the adoption of the standards described above such as older BMWs.

Business Case – ROI
The business case most certainly is there to justify a purchase price on a piece of hardware (the actual J2534 interface device) of somewhere in the vicinity of $1,700. You could add in yearlysubscription fees to download calibrations from the various OEM websites but that would be a wild card. They vary somewhat from OEM to OEM on an annual basic from Honda for the lowest ($300) and BMW towards the high end. ($2500). Most domestic and Asian makes allow for a short-term subscription (24 to 72 hours) at an average of $30 per purchase, so we’ll just subtract that $30 figure from each job for the sake of keeping things straight.

As you can see from the ROI table, based on a conservative estimate for a small shop tackling roughly 22 drivability and electronic system diagnostic problems per month the ROI can come as early as the fourth or fifth month of use. This calculation takes into consideration another conservative estimate; 20 percent of those 22 vehicles per month needing software reprogramming. Some studies cite 10 percent of the vehicles on the road today are in need of a software update on at least one module on board while another study indicates that percentage to be much higher – around 70 percent.

Taking the conservative approach of 20 percent and using an $80 per hour shop rate with an average billable time of 1.5 hours per job the numbers do add up to pure profit from a piece of hardware priced well below most scan tools well within six months. I wished all the tools I purchased had that good of ROI time.

Hardware Choices
So you’ve made the leap and decided to purchase a J2534 device. Which one should you buy?

My advice is to examine your needs concerning off board programming and consider the OEM name brands you think you may be flashing the most. Not only is the volume of those particular OEMs that you service important, which ones seem to always pop up on your radar screen as needing software updates helps make the case as well. For example you may see a lot of vehicles X, Y and Z, but you don’t even recall the last time you ran across a TSB advising you to update the software in an ECU.

Chrysler, for example, has its share of software updates but only allows the aftermarket J2534universal pass through programmers to program powertrain-related modules. If you work on GM, Ford and Toyota, they allow more than just powertrain-related module programming so that opens up the door to more opportunities.

OEMs traditionally take the time to validate a few J2534s to ensure they work reliably on their vehicles and list those programmers on their service website. I’m a believer in following factory advice as much as possible but in the case of validated J2534s if you find one you like and it’s not on a particular OEM’s website it doesn’t mean it won’t work. It simply means that OEM hasn’t validated that it will work flawlessly.

Another consideration is whether or not the tool is fully J2534-1 compliant? If it’s not, you won’t be flashing any single wire GMLAN (low speed CAN) modules, which means you’ve limited yourself to powertrain program

ming jobs only for that brand.

Another factor may be off board programming. You may have seen the bench top set up your parts WD or jobber is using to prepare remanufactured PCMs for sale. A 12-volt power supply, and optional cable kit with popular powertrain ECU adapter cables allows you to program PCMs outside of the vehicle.

Have you considered offering that service to other shops as a “bring the PCM to you” type of sublet labor service? If you have the manpower, you might consider it as a mobile tech branch of your business. Plenty of repair shops and body shops simply want to stay away from this area of high tech repair. If you are the only shop in your area providing such a service, you stand to gain profit opportunity there if you market correctly.

Lastly and most important examine the track record of the J2534 manufacturer provides. Do they provide free tech support to the point where they can log into your laptop remotely from their hotline’s location (via a third party service such as Log Me In) in order to take care of unusual PC issues that can sometimes cripple the programming process?

Getting Started
Now that you’ve made the purchase of the flasher, you’re anxious to start making money and fixing cars with it. Not so fast! Become or find a geek! If you don’t know, ask around your shop if someone knows what Java is besides coffee. If the 20-something kid says “operating software,” he/she is your new J2534 set up and troubleshooting specialist.

The first step is making sure your Internet connection in the shop is fast (not dial-up) and reliable. Next, dedicate a laptop to the J2534 tool. It’s not advisable to try to use one laptop to do everything in the shop. This is a must for European models needing a flash. They tend to be a bit more problematic and time consuming than the domestic and Asian model vehicles.

It’s surprising how easy it is to meet the PC specs listed by the various J2534 tools and OEM calibration websites. Don’t feel compelled to go out and purchase the latest and greatest laptopyour local computer store has to offer. Actually quite the opposite is true. That old Pentium 4 or Dual Core processor laptop with a gig or two of RAM will work just fine but the brand new super-fast laptop with Windows 7 Home Premium may not, because its Windows operating system being 64 bit in most computers these days.

You’ll need to upgrade to Windows 7 Pro in some cases to be able to run a virtual Windows XP or at least upgrade the Windows 7 Home Premium 64 bit to Windows 7 Pro 32 bit. Beware you may have some issues arise with various driver software and the like on the laptop with the 7 Pro 32 bit. This issue isn’t unique to flashers of course. I purchased a portable document scanner just a few months ago and the manufacturer doesn’t have an answer or solution as to why they don’t have 64 bit Windows 7 compatible drivers.

Other considerations for hardware include how rough the techs in your shop are. My dad used to 

tell me, “Dave, you could break an anvil with a tack hammer.” Techs like that need rough service notebooks. Once you’ve landed on a laptop to use for the job and have the new J2534 tool, it’s time to install the driver or toolbox software that comes with the flasher.

When that’s installed, visit the J2534 manufacturer’s website and determine if there is any updated tool software for you flasher. After the hardware is installed on your PC (and I mean PC, not Mac) you’ll need to start visiting various OEM websites via a clearing house site for OEM website addresses cut such as or to visit various OEM sites and read all you can about how they do programming.

You’ll want to download any file management programs that are required to be on your PC prior to doing an actual flash. Toyota calls its file management program “Calibration Update

Wizard,” while Ford labels its “Ford Module Programming – FMP.” It’s a good idea to set up login IDs and passwords for various OEMs you anticipate flashing so you’ll not be spending time doing that with the vehicle in your bay.

To Flash or Not to Flash
Everything thus far has solely been J2534 and PC prep. Now a car is in your bay and you can’t wait to start flashing it, right? Not so fast! You first need to determine if flashing is the thing to do. Common sense tends to evade me when I get a new toy (or tool) sometimes and maybe it does you as well. If that is the case this applies to both of us; make sure the vehicle isn’t broken mechanically.

Just as with the field of medicine a good surgeon is willing to perform surgery only when the symptoms and tests lead to that conclusion, we must also take the same approach to reprogramming. There may be a Technical Service Bulletin (TSB) for fixing a pesky intermittent P0420 cat efficiency Diagnostic Trouble Code (DTC) with a new calibration but what if the cat is really bad? Oh, yeah. Software might fix false DTCs, but it can’t fix a catalytic converter that doesn’t oxidize.
Once you’ve determine if flashing is appropriate next determine if the vehicle is eligible. Vehicle Identification Number (VIN) break points, current software calibration IDs, symptom descriptions and the like can help you determine if the vehicle has a calibration out there at the OEM’s website just waiting for you to download it into the vehicle via your new J2534 programmer.

How to determine eligibility varies form one OEM to the next. GM, for example, allows you to visit a website for free ( and type in your customer’s VIN. From there you can select the module you are curious about and then select the options/symptoms from several groups of calibration attributes (operating system, fuel control, diagnostics, etc.) to determine if what the latest calibration is for that module and what kinds of descriptions of customer complaints/DTCs are listed. Compare the numbers and problem descriptions you currently have to what their calibration website shows and if it looks like you have a candidate for a flash, start prepping the vehicle.

What’s in a Name?
So far I’ve used the terms program, reprogram, flash and calibrate. They all mean the same thing: you are either using the factory scan tool or J2534 universal programmer to move a software file (calibration) from an OEM’s website into a selected module or ECU.

Other terms such as setup, configure, reconfigure, relearn and code typically mean to use a scan tool or J2534 to change a handful of bit of data in a single module. An example of this would be a cam crank variation relearn.

Vehicle and PC Prep
Vehicle preparation is the simplest thing you’ll do. Basically, pull DTCs, electronically stored VIN and freeze frame info to record any information you’ll be losing during the flash. 

You’ll need to keep that info around in case a DTC comes back or a new one sets.

Keep in mind you may set some DTCs as a result of the flash pop up, which is perfectly normal in some cases. Fords with their P1000 Keep Alive Memory DTC seems like a likely code to run across after a flash. The same would apply to cam/crank variation re-learn DTCs. Many J2534s have a program built within the tool’s software that launches when you click the shortcut icon on your desktop. That program might include the ability to pull and clear DTCs, check the data bus for functionality on the vehicle, read the VIN and current calibration ID, perform various relearns after the flash and even monitor battery voltage.

That leads me to a good point. The vehicle’s battery needs to be rock solid with voltage above 12 volts. Between 12.5 and 12.6 makes me happy, as I know that’s a fully charged battery at room temperature. If the battery won’t stay up on it’s own (and you’ll be giving it a workout during the flashing procedure), you need to either put a charged up boost box on the battery, replace the battery or charge the battery during flashing.

That brings another important point. Do not use a normal battery charger during flashing. Most conventional battery chargers put out way too much ripple voltage for most ECUs’ electronic comfort during events as sensitive as programming. Instead, use a flasher safe electrically quiet battery maintainer.

Finally, make sure you can get to the ignition switch without knocking the cable out of the DLC or the PC. Speaking of the PC, if a laptop is used (as opposed to a desktop PC) make sure you have the power supply plugged in. Anything that can interrupt the programming process can lead to the permanent death of the controller you are flashing. So if you have screen savers, battery savers, pop-up blockers, virus ware, etc. on your PC, please turn them all off during the flash process. Plan to be right there during the process, too. You’ll be turning the key on and off at various times and monitoring the PC to click on various icons (like “next” and “I Agree”) as the flashing procedure is performed.

When all is set up and you’re ready to flash, you’ll want to make sure you following ALL directions and read EVERYTHING that appears on your computer. Some ECUs are very unforgiving during an improperly performed flash. You might be able to skip the directions that come in the box with a new blower motor, but don’t skip anything during a flash.

Each OEM will be vastly different regarding what you see on your computer’s screen during the
various steps of the actual flash. An example of this is a screen that pops up early in many OEM’s programming process where you have to select the tool name or type, i.e. Drew CarDaq Plus, Legacy Pass Thru, J2534 Universal Programmer, etc. It’s worth mentioning that some OEMs that require file management software to be utilized for programming. Some of those OEMs don’t require that software to be used when a factory scan tool is used for programming. For example, you don’t use Ford Module Programming (FMP) with an IDS factory scanner when flashing. Some techs find FMP slow and fussy enough that they simply break down and buy an IDS just to eliminate the need to use it.

ECU Mission Debriefing
After you’ve done all of your set-ups of the J2534 tool software, OEM file management software, prepped the PC and the vehicle and followed instructions to the letter throughout the actual selection, downloading and installation of calibration comes the follow up with the vehicle to get it back into action.

You’re first going to want to use the flasher utility to pull the VIN and ECU calibration ID to verify that you did indeed reprogram that ECU. Next you’ll want to pull any DTC that may have been set during the flash and clean them. Finally you’ll want to perform the necessary relearns, setups and configurations that may need to be performed after the flash is completed.

Hopefully your research, thoroughness and attention to detail have paid off and the ECU is up to date with the latest software allowing for years of flawless operation. You are going to be frustrated at times in the beginning especially when you only flash once in a great while. You’ll get the hang of it as repetition helps you get it down to a routine.

You’ll also experience anomalies and quirks. Be on the lookout for the quirks. Make record of them when you experience them and do web searches for any unknown ones prior to the vehicle coming in for a flash. The J2534 toolmaker’s website may even have a list of known crazy problems to be aware of.

When it all comes together, you’ll have a happy customer and you will have done something that most other independent shops have done, made money without opening your toolbox. 

Have articles like this sent to you weekly by signing up for our enews blasts here.