E46 Fanatics Forum banner
  • Hey everyone! Enter your ride HERE to be a part of this month's Ride of the Month Challenge!
Status
Not open for further replies.
1 - 5 of 5 Posts

·
Administrator
2004 330Ci 115k miles
Joined
·
16,298 Posts
Discussion Starter · #1 · (Edited)
Background
These instructions describe how to code an E46 with FA coding for AT->MT swap using NCS Expert. If you have an E46 that originally came with an automatic transmission but was later swapped with a manual transmission and need to code the car for this change, then this guide is for you.

An E46 built 09/2001+ has the newer style FA coding format. This guide is for those cars.
An E46 built before 09/2001 uses the older style ZCS coding format which is not covered here. See this thread for that: DIY: How to Code ZCS for AT->MT swap

The instrument cluster (AKMB) stores the car’s FA (central coding key). FA describes the specific car, its option codes, factory configuration, etc. The light control module (ALSZ) also stores the FA as a backup copy in case the cluster gets replaced. Coding an E46 for AT to MT swap simply removes the automatic transmission option code ($205) from the FA in both instrument cluster and light control module, and then forces all control modules to pick up the changed FA. Some modules need to know whether the car is AT or MT and others don’t. It’s good practice to code all modules after an FA change.

Requirements
  1. Already made the requisite AT->MT swap wiring changes, see this thread: Auto to Manual Swap Wiring
  2. Working installation of BMW Standard Tools; NCS Expert is used for coding and INPA is used to clear DME adaptations, view settings, and verify coding changes. (How to Install BMW Standard Tools)
  3. Fully charged battery, or on a battery charger providing at least 12V system voltage
Terms
  • FA: the central coding key for the car, contains all the encoded options (such as 205 for AT)
  • AKMB: instrument cluster module
  • ALSZ: light control module
With all that preamble out of the way, let’s get coding!

Load FA from AKMB
First, we load the current FA stored in the AKMB
Start NCS Expert
928225

Click File, Load Profile.
928226

Click the Expert Mode profile
Click OK
928227

Click VIN/ZCS/FA
928228

Click ZCS/FA f. ECU
928229

Click E46
Click OK
928230

Click AKMB to select the instrument cluster module
Click OK
928259

NCS Expert reads the FA from the module you selected
Notice the $205 option code for automatic transmission in the FA below
928276
 

·
Administrator
2004 330Ci 115k miles
Joined
·
16,298 Posts
Discussion Starter · #2 · (Edited)
Modify FA in AKMB
Now we modify the loaded FA to remove the $205 automatic transmission option code
Click Enter FA
Click E46
Click OK
928308

Click OK leaving the VIN value unchanged (the VIN characters won't match exactly)
928279

Now you'll be at the FA editing screen
Select the $205 in the list and hit the Delete key to remove it
Click OK
928263

The FA in NCS Expert now has the automatic transmission option removed
Note the missing $205 option code below
Click Back
928264

Notice that all the modules are selected for coding by default
We only want to code the AKMB right now
928265

Click Process ECU
Click AKMB
Click OK
928266

Now only the AKMB is selected for coding
The SG_CODIEREN job is selected by default
We need to change that to the FA_WRITE job to write the modified FA
928267

Click Change Job
Click FA_WRITE
Click OK
928268

We are now ready to write the modified FA to just the AKMB
928269

Click Execute job
It only takes a few seconds for the modified FA to be written to the AKMB
After the status changes from Job active to Job ended, the AKMB has been written
928275
 

·
Administrator
2004 330Ci 115k miles
Joined
·
16,298 Posts
Discussion Starter · #3 · (Edited)
Modify FA in ALSZ

Next we write the modified FA to the ALSZ, as it is the backup for AKMB.
928281

Click Change ECU
Click ALSZ
Click OK
928280

Click Execute job
928283

The modified FA is written to the ALSZ
It only takes a few seconds for the modified FA to be written to the ALSZ
After the status changes from Job active to Job ended, the ALSZ has been written

Close NCS Expert
 

·
Administrator
2004 330Ci 115k miles
Joined
·
16,298 Posts
Discussion Starter · #4 · (Edited)
Code All Modules
Next step is to reset the coding on all modules to pick up the modified FA
Now we read the FA from the AKMB to verify that the changes took.
Start NCS Expert
928309

Click File, Load Profile
928310

Click the Factory Coding profile to allow the Process Car option
Click OK
928286

Click VIN/ZCS/FA
928311

Click ZCS/FA f. ECU
928312

Click E46
Click OK
928313

Click AKMB to select the instrument cluster module
Click OK
928314

NCS Expert reads the FA from AKMB
Verify the $205 is no longer shown in the FA
The default is to run the SG_CODIEREN job on all modules, which is what we want
Click Back
928294

Now we want to code all the car's modules from this new FA so they all pick up the change.
Click Process Car
928299

Click Code Car to begin coding all modules
928298

Wait a few minutes as each module is coded back to its defaults using the new FA
Sometimes a module will not be found or fail to code. In this case just code the module individually.
Done!
 

·
Administrator
2004 330Ci 115k miles
Joined
·
16,298 Posts
Discussion Starter · #5 · (Edited)
Clear DME Adaptations
After this, the only other thing you must do is clear the DME adaptions using INPA, assuming the EGS (automatic transmission module) is already removed.
This triggers the DME to pick up the new FA.
You can also use BMW Scanner 1.4 to clear DME adaptions and verify AKMB and ALSZ coding is correct.
How to Reset Adaptations

Notes
  • Credit to @TerraPhantm for originally sharing the process
  • If your DME software is out of date, you may as well update it to the latest with WinKFP while you're at it (Need a DME or EGS flash update?)
  • I can remotely do the above process for you, just PM me to get started
 
1 - 5 of 5 Posts
Status
Not open for further replies.
Top