So I am doing a manual trans swap this weekend, I know my cable and Inpa works for DME codes and bleeding the SMG. I want to verify I won't have any issues when I am coding.
Where I will be working is a 3 hour round trip from home and I am just trying to remove as many "gotchas" as possible.
As long as INPA works and I can communicate with the modules, NCS Expert should work fine?
Therefore, I need to verify I can connect with the LCM, EWS, Instrument Cluster and ABS with INPA? If so everything should work as intended?
__________________________________________________ __________________________________________________ __________________________________________________ _______________________________
I will be following these steps to code it:
Coding Vehicle Order
Depending on what year your car is, this part is slightly different. I'll use 50'sKid's video as a reference, as this is what helped me successfully remove the option code from my car. The newer cars have the "vehicle order", and older cars have a "zcs number". Both of these store the list of optional and base equipment for the car. If your car came with heated seats, then this is depicted in your vehicle order or ZCS. This is used by the whole car to determine how the computers behave, and what their default programming is. If your car was produced before 08/2001, then you have the ZCS format, otherwise, your car is coded through the "FA". You can find the production date of your car by going to RealOEM and entering the last 7 digits of your VIN.
Start by loading the expert profile in NCS expert. Click file -> Choose Profile. Pick the Expert mode profile (sometimes referred to Expertmodus or something along those lines)

Click VIN/ZCS/FA, then ZCS/FA f. ECU. Choose E46, then either the AKMB or ALSZ, unless your car uses ZCS, in which case you read the EWS or KMB. This will read your cars current FA (Vehicle Order) or ZCS from whichever module you select.

For Cars newer than 08/2001
Once this is done, click "Enter FA", select E46 and then enter your vin. If it's partially wrong, don't worry about that because it's meant to be. Only the last 7 characters should be correct. Hit OK and you should see this window.

Your option codes will be very different as this image is from a 325. Now, scroll down in the list until you find the "$793" code, select it and then press delete on your keyboard. This should remove the SMG option code from the list. (skip down to "After adjusting the vehicle option code list")
For Cars older than 08/2001
Now, click on "Enter ZCS", select E46 and enter your vin. If it's partially wrong, don't worry about that because it's meant to be. Only the last 7 characters should be correct. Hit OK and you should see this window.

You only need to touch the SA section, and start by removing the very last digit from the number. Now, subtract 8 from what is now the last digit, such that if your number is 0-8, you replace it with 0. 9→1, A→2, B→3, C→4, D→5, E→6, F→7. Once this is done, make sure to have "Calculate Checksum" checked before clicking ok.
After adjusting the vehicle option code list
Now click ok > Back > Process ECU > AKMB (or just KMB for older cars). Once you've done this, you should see the "JOBNAME" is set to "SG_CODIEREN". Click change Job, then select "FA_WRITE" (or "ZCS_SCHRIEBEN"), which will code the new FA (ZCS) to your module. Now click Execute Job, and you should eventually see "Job ended". This indicates that the write was successful. If your car is older, click "change ecu" and select the EWS, and click execute job. Otherwise, click "change ecu", select the ALSZ, and repeat this FA_WRITE by clicking execute job.
Now that your new vehicle order is written to your car, you can reprogram each individual module to their default programming, which is determined by the vehicle order. Since your vehicle order is now different, that also means that your default programming is different. Using the "expert" profile in NCS, repeat the same steps to read your FA from the AKMB or ALSZ (or KMB/EWS), then Back > Process ECU > AKMB (or KMB). Now you should see the "SG_CODIEREN" as the JOBNAME. Click execute job to write the default coding to the module. Repeat this job on the AKMB (KMB), MK60 (DSC), and the ALSZ (EWS). At this point, restart the car and you should see that everything is working properly, but you'll still have a gear light on the dash.
Open INPA, and navigate to the DME, clear error codes and adaptations, then read them back. Also clear codes for the Instrument Cluster, EWS (vehicle immobilization), and the MK60 (assuming you have a later model). Once these error codes are cleared, you should be able to turn the car off and back on again and see no gear light on the dash. If you still have dash lights, go around to different modules and clear their errors and see if they return. Now you should be all set!
With this, your car should be completely coded with manual software, and there is practically no difference between this and the default software on a manual car (other than the modifications you may have made). Now when scanned, your car will show itself as a manual, and you won't get any SMG-related error codes that might cause the car to enter limp mode.
Credit to p0lar and terraphantm, as their work on these cars is what provided me the ability to put all of this together. I referenced their posts a lot, and this post is essentially a condensation of their work. I just put it together in a hopefully comprehensive fashion to allow anyone to reprogram their car. If any of this info is wrong or you have a suggestion on an improvement I can make, let me know so I can correct it.
Where I will be working is a 3 hour round trip from home and I am just trying to remove as many "gotchas" as possible.
As long as INPA works and I can communicate with the modules, NCS Expert should work fine?
Therefore, I need to verify I can connect with the LCM, EWS, Instrument Cluster and ABS with INPA? If so everything should work as intended?
__________________________________________________ __________________________________________________ __________________________________________________ _______________________________
I will be following these steps to code it:
Coding Vehicle Order
Depending on what year your car is, this part is slightly different. I'll use 50'sKid's video as a reference, as this is what helped me successfully remove the option code from my car. The newer cars have the "vehicle order", and older cars have a "zcs number". Both of these store the list of optional and base equipment for the car. If your car came with heated seats, then this is depicted in your vehicle order or ZCS. This is used by the whole car to determine how the computers behave, and what their default programming is. If your car was produced before 08/2001, then you have the ZCS format, otherwise, your car is coded through the "FA". You can find the production date of your car by going to RealOEM and entering the last 7 digits of your VIN.
Start by loading the expert profile in NCS expert. Click file -> Choose Profile. Pick the Expert mode profile (sometimes referred to Expertmodus or something along those lines)

Click VIN/ZCS/FA, then ZCS/FA f. ECU. Choose E46, then either the AKMB or ALSZ, unless your car uses ZCS, in which case you read the EWS or KMB. This will read your cars current FA (Vehicle Order) or ZCS from whichever module you select.

For Cars newer than 08/2001
Once this is done, click "Enter FA", select E46 and then enter your vin. If it's partially wrong, don't worry about that because it's meant to be. Only the last 7 characters should be correct. Hit OK and you should see this window.

Your option codes will be very different as this image is from a 325. Now, scroll down in the list until you find the "$793" code, select it and then press delete on your keyboard. This should remove the SMG option code from the list. (skip down to "After adjusting the vehicle option code list")
For Cars older than 08/2001
Now, click on "Enter ZCS", select E46 and enter your vin. If it's partially wrong, don't worry about that because it's meant to be. Only the last 7 characters should be correct. Hit OK and you should see this window.

You only need to touch the SA section, and start by removing the very last digit from the number. Now, subtract 8 from what is now the last digit, such that if your number is 0-8, you replace it with 0. 9→1, A→2, B→3, C→4, D→5, E→6, F→7. Once this is done, make sure to have "Calculate Checksum" checked before clicking ok.
After adjusting the vehicle option code list
Now click ok > Back > Process ECU > AKMB (or just KMB for older cars). Once you've done this, you should see the "JOBNAME" is set to "SG_CODIEREN". Click change Job, then select "FA_WRITE" (or "ZCS_SCHRIEBEN"), which will code the new FA (ZCS) to your module. Now click Execute Job, and you should eventually see "Job ended". This indicates that the write was successful. If your car is older, click "change ecu" and select the EWS, and click execute job. Otherwise, click "change ecu", select the ALSZ, and repeat this FA_WRITE by clicking execute job.
Now that your new vehicle order is written to your car, you can reprogram each individual module to their default programming, which is determined by the vehicle order. Since your vehicle order is now different, that also means that your default programming is different. Using the "expert" profile in NCS, repeat the same steps to read your FA from the AKMB or ALSZ (or KMB/EWS), then Back > Process ECU > AKMB (or KMB). Now you should see the "SG_CODIEREN" as the JOBNAME. Click execute job to write the default coding to the module. Repeat this job on the AKMB (KMB), MK60 (DSC), and the ALSZ (EWS). At this point, restart the car and you should see that everything is working properly, but you'll still have a gear light on the dash.
Open INPA, and navigate to the DME, clear error codes and adaptations, then read them back. Also clear codes for the Instrument Cluster, EWS (vehicle immobilization), and the MK60 (assuming you have a later model). Once these error codes are cleared, you should be able to turn the car off and back on again and see no gear light on the dash. If you still have dash lights, go around to different modules and clear their errors and see if they return. Now you should be all set!
With this, your car should be completely coded with manual software, and there is practically no difference between this and the default software on a manual car (other than the modifications you may have made). Now when scanned, your car will show itself as a manual, and you won't get any SMG-related error codes that might cause the car to enter limp mode.
Credit to p0lar and terraphantm, as their work on these cars is what provided me the ability to put all of this together. I referenced their posts a lot, and this post is essentially a condensation of their work. I just put it together in a hopefully comprehensive fashion to allow anyone to reprogram their car. If any of this info is wrong or you have a suggestion on an improvement I can make, let me know so I can correct it.
Comment