Preface
Most of the latest BMW vehicles adopt FEM/BDC modules, which must be programmed before the key programming. OBDSTAR Key Master DP already updated the BMW FEM/BDC key programming software. To make the operation clear, let’s show the FEM smart key programming process with Key Mater DP as below:
Prepare
To get a better understanding of BMW key programming, following three major steps and some tools will be explained first.
1. Key Information
2. Key Programming Preprocessing
3. Key Add/Delete
Before key programming, read key information of current vehicle. Then delete the lost key or add new key based on this information.
For these vehicles to be programmed for the first time with this kind of device, Key Programming Preprocessing is necessary before key adding and deleting. Key programming Preprocessing can be operated in the car or on workbench, while operating with specialized test cable on workbench is strongly recommended. FEM test cable is shown below:
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951525762609.jpg)
To read and write data on chip of FEM/BDC, it’s necessary to prepare and EEPROM. EEPROM/PIC picture is shown below:
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951526128884.jpg)
1. Key Information Reading
After connecting vehicle or test harness, select “Key Information”under BMW Immobilizer menu to read current key information:
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951526826726.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951527587814.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951528822509.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951750580068.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951750136221.png)
Notice: It will remind you to operate preprocessing in this step. If the vehicle was programmed for the first time, it’s
necessary to operate key programming preprocessing. If not, operate Key Add or Key Delete directly.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951751123329.png)
This is showing FEM module information. Click ”OK” to continue.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951752129112.png)
This is showing current key numbers, position, and ID. Based on demand, delete lost key and add new key in the position
of Not Occupied/Starting during key programming.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951752655417.png)
2. Key Programming Preprocessing
It’s required to operate key programming preprocessing if the vehicle was programmed with the device for the first
time. After reading key information, click “OK” back to main menu and select “Key Programming Preprocessing”:
![1516951949887143.png image011.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516951949887143.png)
There are seven steps in processing. Start from the first step:
![1516952004128647.png image012.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952004128647.png)
Step 1: Code data backup
Select and click “Code data backup”
![1516952119267657.png image013.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952119267657.png)
![1516952161118074.png image014.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952161118074.png)
Read the code data and click “yes” to save it with the filename by default.
Or click “no” to customize filename and remember it (the filename will be helpful in step7)
![1516952197849748.png image015.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952197849748.png)
Code data backup completed.
![1516952327284526.png image016.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952327284526.png)
Step2: EEPROM Original Data Backup
Select “EEPROM original data backup”
![1516952364113173.png image017.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952364113173.png)
![1516952384125872.png image018.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952384125872.png)
During the step2, the screen will show a simple operation instruction. The operation process differs from the user’s
programmer, here we take Key Master DP and EEPROM/PIC adapter for example. Shown as below:
① Disassemble the FEM/BDC module from car or test cable, open the shell and weld the 95128/95256 chip and take it out.
![1516952424120962.png image019.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952424120962.png)
② Weld the 95128/95256 chip to the 95XXX position on the adapter board or insert to the chip holder with the chip clip,
(pay attention to the direction of the chip) as following:
![1516952488102432.jpg image020.jpg](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952488102432.jpg)
![1516952502481138.jpg image021.jpg](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952502481138.jpg)
③ Then, connect the EEPROM adapter with Key Master DP, plug in the 12V power, shows as below:
![1516952544547278.jpg image022.jpg](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952544547278.jpg)
④ Exit immobilizer function and go back to the main screen, then choose “EEPROM/PIC adapter” :
![1516952587106254.png image023.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952587106254.png)
![1516952603532862.png image024.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952603532862.png)
![1516952616912058.png image025.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952616912058.png)
![1516952626809858.png image026.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952626809858.png)
![1516952644992011.png image027.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952644992011.png)
![1516952670127989.png image028.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952670127989.png)
![1516952684737952.png image029.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952684737952.png)
![1516952698605155.png image030.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952698605155.png)
![1516952716224798.png image031.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952716224798.png)
![1516952735600293.png image032.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952735600293.png)
![1516952747383154.png image033.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952747383154.png)
Notice: The original EEPROM data backup completed and saved with the name“FEM00000”. Disassemble 95128/95256
chip from adapter board and weld back to FEM/BDC module.
Step3: Service Mode Data Generation
Put FEM/BDC module back to car or connect with the test cable. Exit the “EEPROM/PIC adapter” function, enter
Immobilizer and choose BMW vehicles, click “step 3: service mode data generation”:
![1516952785176860.png image034.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952785176860.png)
![1516952806140580.png image035.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952806140580.png)
![1516952823185337.png image036.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952823185337.png)
Service mode data generation succeeded and saved directly on the Key Master DP, as the picture shows above.
Click “ok” to go back to the last menu.
![1516953256447745.png image037.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953256447745.png)
Stpe4: Service Mode Data Writing
Click 'step 4': service mode data writing”:
![1516953288420033.png image038.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953288420033.png)
![1516953316989429.png image039.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953316989429.png)
This step needs the EEPROM/PIC adapter or other programmer to read and write 95128/95256 chip. If you use other
programmer to write service mode data, you need to copy the generated service mode data from Key Master DP
and reserve it on the programmer or PC computer, then write the data.
Write service mode data with EEPROM/PIC adapter as follow:
① Disassemble 95128/95256 chip again, weld it to the adapter, connect with the Key Master DP.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952544547278.jpg)
② Exit BMW Immobilizer, go back to the main menu, choose the EEPROM/PIC adapter.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952587106254.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952603532862.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952616912058.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952626809858.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952644992011.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952670127989.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952684737952.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516952698605155.png)
Input a filename randomly, a different name from the backup EEPROM data in step 2.
![1516953742933703.png image040.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953742933703.png)
Do not exit after the profile reserved. Click “Help” and choose the service mode data “FEM00000(Calc)”.
![1516953780473564.png image041.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953780473564.png)
![1516953800753443.png image042.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953800753443.png)
Make sure again the written data is right. If you use other programmer,
please copy the service mode data “FEM00000(Calc)”from the position shown in the picture.
![1516953842339305.png image043.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953842339305.png)
![1516953895142435.png image044.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953895142435.png)
Service mode data recover completed. Click “ok” to go back to the last menu and exit EEPROM/PIC adapter function.
![1516953925536089.png image045.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953925536089.png)
Step5: FEM or BDC module programming
Weld the 95128/95256 chip back to FEM/BDC module, put the module back to car or connect to the test cable, connect
the Key Master DP with car or the OBDII for test cable. Exit EEPROM/PIC adapter function, enter key add pre menu, choose'step 5: program FEM/BDC module'.
![1516954058753056.png image046.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954058753056.png)
![1516954168834816.png image044.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954168834816.png)
After the program completed, click “ok” to go back to the last menu.
![1516954203127787.png image047.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954203127787.png)
Step6: EEPROM Original Data Recovering
The procedures for EEPROM data recovering is the same as the service mode data writing. The only difference is the
different writing data. Select the EERPOM original data saved in the step2. Operate according to the service mode writing, the data selected is as following:
After read the saved data, then click “help” and choose the saved EEPROM original data “FEM00000.BIN”.
![1516954268936844.png image048.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954268936844.png)
![1516954282481783.png image049.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954282481783.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954168834816.png)
EEPROM original data recovery completed. Click “ok”, exit EEPROM/PIC adapter function and weld the 95128/95256
chip back to the FEM/BDC module.
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516953925536089.png)
Step7: Code Data Recovery
Put FEM/BDC module back to car or connect with test cable, Key Master DP connect car or OBDII for test cable. Enter the menu'key programming preprocessing', choose 'step 7: code data recovery'.
![1516954410108091.png image050.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954410108091.png)
![BMW FEM/BDC Smart Key Programming Procedure BMW FEM/BDC Smart Key Programming Procedure](https://0.rc.xiniu.com/g4/M00/58/B0/CgAG0mLDzIaALp19AAQFwyBsPIs842.jpg)
![1516954452170190.png image052.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954452170190.png)
Coding succeeded. Key add pre operation completed. Click “ok” and exit the key add pre.
![1516954476688895.png image053.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954476688895.png)
3. Key Add
After the key add pre process, please connect car to do key add and key delete. Put the FEM/BDC modules back into car, then connect Key Master DP with the car OBD. Enter the menu, choose “key add”.
![1516954515627661.png image054.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954515627661.png)
Then, put the key on the emergency starting position and click “ok”.
Emergency starting position is on the right side of the steering column shell, a place with key sign as below:
![1516954548613288.png image055.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954548613288.png)
Attach the key to the key sign as below:
![1516954567896222.png image056.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954567896222.png)
Key Master DP will recognize the valid key and show its frequency, click “Yes” to continue.
![1516954585904657.png image057.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954585904657.png)
Then the device will show the car key quantity, position and ID, such as the two programmed keys 00 and 02. Now we
can add one key at the position 01, or from 03 to 09. We choose the position 08 here.
![1516954605124559.png image058.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954605124559.png)
![1516954621936758.png image059.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954621936758.png)
Put the key to be programmed on the emergency starting position, click “ok” to continue.
![1516954687764029.png image060.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954687764029.png)
If the new key is recognized, the device will show “programming succeeded”, click “ok” to continue.
![1516954711130622.png image061.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954711130622.png)
After key programming succeeded, the programmed key information will be read automatically. Key 08 is the new added key.
![1516954726121375.png image062.png](http://en.obdstar.com/Wl-Content/Templates/xuanyuCN/uploads/20180126/1516954726121375.png)
4. Key Delete
The operation for key delete is the same as key add. Enter key enable /disenable, read and remember the key ID. Then go to key add--- key delete, choose the key to be deleted according to the prompt(the current key can not be deleted, no worried about deleting it by mistake).