Writing the code or software for a transmission or engine control module is immense and complex. It is impossible for one person to write it or even comprehended completely by a single person. And even though the code is checked by several programmers and computer programs, it might still have errors in there that will cause issues during certain operating conditions.
These problems are known as “bugs” and can cause several complaints including erratic shift behavior without a clear cause. These bugs are fixed throughout the lifetime of a module and are covered with the updates we use to reprogram the module.
Next to bug fixes, these updates cover much more. Known driveability or comfort issues are also addressed. But the new program can also contain improvements that will help to reduce wear or even fuel consumption, and can even add functions. The mapping in the program is pretty much untouched (unless it’s the cause of a problem), so that the drive experience is pretty much unchanged.
Updating the programming can help you solve problems you didn’t even know you had and can protect you from chasing problems. There are however, some downsides or pitfalls to reprogramming.
While most updating is done using online access, you don’t have actual access to the files that contain the programming. And unlike with Tuning, the programming isn’t first read completely before it’s altered. This means that you can only update the software to a newer version, but can’t downgrade back to the old version(some exceptions are possible). So if the customer notices changes in the way his transmission drives now, you can’t revert back to the old software. Luckily, this happens in very rare occasions.
The other thing you have to keep in mind, is the fact that you could cause damage to the module when the programming fails.
Also keep in mind that programming isn’t something that you do “in between.” These processes can last between three minutes and 24 hours. As we know, the number of modules in a modern car can go as high as 100 modules that work in harmony, each containing a piece of software and communicating with each other. If a car has only seven modules and for each module there are two software versions available, you can come up with 27 different combinations. That equals to 128 unique combinations with only two software versions for seven modules. If you would have the ability to test a car completely in two hours, and you would have 128 unique combinations, that means you would be busy for 256 hours. If you would add another piece of software and one extra module, the number of unique combinations will go over 6000.
Testing all these combinations to see if everything works is nearly impossible and immensely time consuming, especially as you can’t even test it completely within two hours. Whenever you are starting with programming for the first time, take your time with it. It’s better to spend a few hours reading the manual on how to install the software and take your time, instead of rushing it. These things take time, and rushing it might get you in trouble. It’s a delicate process that can kill your module if you do something wrong or forget something.
Courtesy of ETE REMAN and ATSG.