Tag Archives: Ediabas

BMW ISTA-D and ISIS Software Differences

This is good information for those who want to know if ISTA-D provides technical diagrams and instructions like ISIS/ICOM.
ISIS is a BMW server platform for dealers. All updates are downloaded to the ISIS.
From there the ISIS updates ISID (diagnostics) tablets and ISSS (programming) if applicable.
The ISID runs an embedded windows xp OS.
Installed on the ISID is a program called ISTA-D (recent versions are codenamed ‘Rheingold’)
ISTA-D you can do all diagnostic functions, battery registrations etc etc. it also has wiring diagrams and guides on changing parts.
Some clever russians keep leaking the ISTA-D installer and it can easily be installed on any windows operating system. I can give you download links. They are around 10gb.
In ISTA-D you have a connection manager or how you wish to connect the computer to the odb port.
The common ones are:
ICOM is BMW official cable, its predocessor was an OPPS unit. An ICOM is more than just a cable however, it has its own network adapter, mac address, cpu, cooling etc etc. Originals are expensive but you can get cheap but hq chinese clones for around $350 USD like this: http://www.obdii365.com/wholesale/bmw-icom-next-a-b-c-with-software.html




EDIABAS is a communication protocal which requires you to have BMW Standard Tools installed aswell – which isnt a bad thing! This utilises comport access amongst other connection methods and is configured by an ini file. Most people use this method of connection as its cheap, you can get a K+DCAN cable for under $50 USD now. Just do your research first as there ar bad clones about!
OMITEC is also an original USB interface. These are very rare. K+DCAN cable are copies of the OMITEC cable.
Update: Thinking it can be used on a Mac also… I use a Mac sometimes no problem with a windows VMware XP virtual machine and ISTA-D installed.
As I said there is no better diagnostic software. Its dealer level software and It’s freely available now all over the Internet. Plus it’s very user friendly!
So price is Cable + Windows XP CD key for the virtual machine…
Hope that helps.

DIY Select the correct .PRG file in Ediabas Tools32

Which .prg file should you choose for Fxx Jobs in Tool32? This is a short guide of how & which .PRG file to load into Ediabas Tool32 based on your current car.
Disclaimer:  The write-up was made by a Swiss BMW expert. Try at your risk.
Tool needed:
INPA & the EDIABAS package which includes Tool32. Search the obdii365 official blog to get some free download resources.
1. Start BMW INPA software by right-clicking INPALOAD.exe file and selecting ‘Run as administrator’. Load Inpa software.(Fig. 1).
Run as administrator’
2. Select your relevant Fxx car. I.e F10, press F3.
3. The Script selection window will appear. Select the 1st option on the right – FUNCTIONAL JOBS (Fig. 2).
4. The Select series (Baureihenauswahl) window will appear. Select F1 (Fig. 3).
Select series (Baureihenauswahl
5. The Job main menu will appear. Select F2 – Identifikation (Fig. 4).
F2 – Identifikation
6. Here you can see the result of my car (Fig. 5). Note I have highlighted in yellow the SGBD column. This is the SGBD name and the .PRG file name that you will need to open in Tool32 for working on your modules.
 .PRG file name
7. Start Tool32 by right-clicking tool32.exe file and selecting ‘Run as administrator’. Tool32 should load.
8. Select File->Load SGBD, Group file.
9. Browse to the EDIABAS\ECU folder, and search for the file name based on the listed yellow column entry. In this example, I’m loading the AIRBAG module file, named ACSM3.PRG (Fig. 6).
AIRBAG module file
10. Once loaded, You will see on the left a list of Jobs available for your module. I have launched the fs_lesen job which is to read the fault memory either double-clicking on it or by selecting it & pressing F5. The Job Results will appear in the window below (Fig. 7).
 Job Results will appear
Please be careful with running Jobs in Ediabas Tool32.
Some Jobs will literally wipe your ECU to a point that only the dealer or even worse – BMW Munich can recover, and to state that it wasn’t your fault will be difficult..
Some wording might not have the context you would expect so research jobs with words like: Initialisierung, Reset, Sperren, Default or Loeschen before you launch them.
In the context of Fault Memory, the Job to clear it is ‘fs_loeschen’.
Hope this helps. Would be great if someone can follow-up with similar instructions for Exx series.

www.autelsale.comBMW INPA, INPA K+DCAN, Ediabas

DIY Coding BMW E90 with INPA,Ncs Expert on K+DCAN

Here is the detail tutorial on coding BMW E90 vehicle for beginners.

Tools needed:
1. Computer/ laptop(Dell D630 is better)
We recommend that the computer you use has a Windows XP 32bit operating system (OS) installed. Although, others have reported to get the software needed to program BMW E90 vehicles to work on Windows 7 and above OSs as well as 64bit OSs, but most users have the most programming success using the recommended OS (Win XP 32bit).

2. Diagnostic cable:BMW INPA K+DCAN USB interface, cheap US$13.99 at obdii365.com.


The Software

The 3 programs below are needed or recommended for coding your BMW E90 car:

NCS-Expert (Version: 3.1.0 with Daten Files Version: 51.2 or above)

INPA (Version: 5.0.2)

Ediabas (Version: 7.2.0)


We recommend buying cj83lex’s Everything You Need To Code Your BMW package for $5.00. You will probably want to go ahead and grab the latest data files addition he has for $10.00 extra. So for a total of $15.00 you will have everything you need software wise to program your BMW E90 car. Note, everything that he does provide in the package you can find around the internet, but it can take a lot of time to gather up the right software versions as well as finding download links to the software that are still active.

Some have stated the Ediabas program is used to communicate diagnostics information from your car.

NCSExpert is a program that is used to read and write new parameters to your car. NCSExpert will be the main program you use to code your car.

Inpa is simply a program used to run diagnostics on your car, for example, checking the status of your air bags.


  1. Setting Up The Coding Environment

The next thing we need to do is to get your computer’s programming environment setup. For most, setting up the environment is usually the toughest part. But after your computer is setup, the rest is really straight forward.


Step: 1 – C Directory Configuring & OBD Setup

Unzip the “NCSEXPER.rar” file, and place the 3 folders (EDIABAS, INPA, and NCSEXPER) inside the zipped file in the C:\ folder. Your C:\ folder should have the following highlighted folders added:


Navigate to C:\INPA\BIN

Right click on INPALOAD.exe and create a shortcut to desktop

Navigate to C:\NCSEXPER

Create a shortcut to your desktop of the “WORK” folder

Navigate to C:\NCSEXPER\BIN

Create a shortcut to desktop of “NCSEXPER.EXE

Navigate to C:\EDIABAS\Hardware\OBD and run the OBDSetup.exe. Your screen will look something like the image below. Since I have ran this script previously, it might look a little different the first time you run  it. Press any key to close the window, and then restart your computer!


Step: 2 – Setting Up Environment Variables

Go to System Properties (click the start button, and right click on My Computer and click Properties)

Click on the Advanced tab

Click on Environment Variables

Under System variables, highlight “Path” and click edit


Add the following to the end of the Variable value:;C:\ediabas\bin


Click OK. You can then close out of all the open windows and return to your desktop.


Step: 3 – INPA USB Interface Configuring

For this step, I am assuming you have the BMW INPA / Ediabas K+DCAN USB Interface cable mentioned above under the Hardware section. If not, the following steps may not apply to you, and a different configuration may be needed to properly setup communication to your car.

From desktop, press the WINDOWS KEY + R and type devmgmt.mscand click OK.


After clicking OK, Device Manager will open

1)Expand the Ports (COM & LPT) section and plugin your USB Interface cable into your computer.

2)You should then notice a new device show up called USB Serial Port (COM*). For my computer, since COM1 and COM2 were already in use, my computer automatically assigned the device to COM6. Since INPA and NCS Expert are by default setup to use COM1 to communicate with the vehicle, we will need to change the assigned port to COM1. Note, there is a way to change the communication port INPA and NCS Expert uses to communicate to your car, but I find it easier to just assign the USB Interface cable to COM1.


3)Since in my case COM1 is already being used by something else, I needed to Disable that device from using that communication port. Right click Communications Port (COM1) and click on Disable.


4)Now we need to make some changes to the USB Serial Port. Right click on USB Serial Port, and click on Properties.


5)Click on the Port Settings tab, and verify the following values are as follows:

Bits per second: 9600

Data bits: 8

Parity: None

Stop bits: 1

Flow control: None

6) Click the Advanced button


7)Change COM Port Number to COM1


8)Change Latency Timer (msec) to 1 and click the OK button and exit out of Device Manager and return to the Desktop.


9)Plug your USB Interface cable into your car if you have not done so already. Do not start your car just yet. Next, open up the INPALOAD.EXE program located on your Desktop.

I recommend keeping a battery charger attached to the car’s battery, since the following steps require the ignition to be on to work correctly.


Step: 4 – Coding E90 with INPA

INPA is a great tool to use to verify that your car is correctly communicating with your computer. Again, INPA is only a diagnostics program used to check the conditions for different parts of the car. For now, we only care to use it to make sure there are no communication problems and our USB Interface cable is working.

1)When the program opens, you should see 2 circles. One for Battery, and the other for Ignition. At this point, if you have not turned on your car’s ignition, only the Battery circle should be solid black.


2)Turn on your car’s ignition but do not start the car’s engine. After doing so, in INPA, the Ignition circle should turn solid black.


3)Next we need to tell INPA what type of car we are dealing with. Press F9 for the E90 menu.


4)On the Scrip selection popup window, select Karosserie, and in the second window pane, double click Airbag.


If you receive a “Versions do not match” and “Language variants do not match” error, everything is usually fine. According to some, it has something to do with the newer version of  EDIABAS. If you do not receive any errors, that is fine as well.


5) Normally, if you did not receive any errors after clicking on Airbags, or if you received the 2 errors mentioned above, most would say you are ready to move on to using NCS Expert. However, just as a precaution, let’s verify we do not receive any errors if we check the state of our seat beat buckles. This test will only work if you do not have any seat belt buckle issues already. So I’m assuming your seat belts are in working condition.

6)Unbuckle any buckled seat belts in the car

7)In INPA, click the Status (F5) button.


8)Click the Buckle (F5) button


9)You should now be on a Buckles screen that has several sections with circles. We are going to only focus on the Driver’s buckle for this test. If you are following this guide step by step, the Buckle plugged should read “no” and Buckle attached should read “yes” with a solid black circle.


10)On the driver side of the car, buckle the seat belt into the buckle. After doing so, in INPA, the Buckle plugged should read “yes” with a solid black circle.


11)If you received no errors while performing the seat buckle test, congratulations! You are now successfully communicating with your car and ready to move on to using NCS Expert. Again, INPA is a great tool to use to make sure the communication between the car and your computer is working correctly before using NCS Expert.

12)Close INPA and start NCSEXPER.EXE located on the Desktop.


Step: 5 – Using NCS Expert

For this step, we will create a new profile in NCS Expert which will be what you will use for most of your coding in the future. Also, just to get your hands wet for the first time, I will show you how to code/activate the famous BC Digital Velocity feature for the car.

Do not skip any of the following steps. AGAIN, do not, do not, do not skip any of the following steps. Doing so leads to the risk of you screwing up your car from starting or worse. If you receive any errors from NCS Expert at anytime, STOP moving forward in this guide and recheck your steps or try Googling the problem you are having.

1)When you open NCS Expert, you should be presented with a window that looks like the following:


2)Click File, and then click on Load Profil


3)Choose the Expertmode profile and then click the OK button. Note, the list of profiles you have to select from may be different than mine. That is fine. If you do not have an Expertmode profile, you need to retain a copy before moving on.


4)Click File, and then click on Edit Profil, and for the Password, input the following and click the OK button: repxet
5)In the Profile editor popup window, click on the Car-Keymemory button and make sure all 3 boxes are checked on the Car Memory popup window and then click the OK button.


6)Click on the consistence check button, and you should receive a popup Info window that says “konsistence check OK”. If so, click the OK button on the popup window.


7)Click on the FSW/PSW button, and verify the from CVT option is selected, and check both boxes for FSW-/PSW-Trace and FSW-/PSW-Manipulate with FSW_PSW.MAN. Next click the OK button.


8)Click on the consistence check button again, and you should receive a popup Info window that says “konsistence check OK”. If so, click the OK button on the popup window.


9)Click on the OK button to close the Profile editor.


10)Click File, and then click on Save Profil as. Change the File name to FZG2.PFL, and make sure the File name does not already exist in the select pane below it. Also make sure the PFL folder is selected in the Folders select pane. Then click the OK button.


11)Click File, and then click Edit Profil, and enter the same password (repxet) as before. Next click the Profile info button and change Profile name to FSW PSW MAN and then click the OK button. Then click the OK button to close the Profile editor window.


12)Click File, and then click Save Profil.


13)To sum of what we just did, we have just now created a profile that will write information to the car from a .MAN file that will be located in our NCS Expert WORK folder. We will get to that in a minute. The most important point here is, in the future when you start NCS Expert, you need to load the FSW PSW MAN profile instead of the Expertmode profile. If you click File, and then click on Load Profil, you will notice the new profile (FSW PSW MAN) you just created is now listed as an option to select.

14)After you load the profile, you will see new options to select from under F1, F2, and F3.


15)Press F1 or click the VIN/ZCS/FA button.


16)Press F3 to choose the CHASSIS for the vehicle. I am going to assume you are trying to code an BMW E90 vehicle, so in the pop-up window, choose E89 from the list and press the OK button. We are basically telling what type of vehicle we are working with. Another window will pop-up after clicking OK, and from that window, choose CAS for the ECU and press the OK button. We need to choose the ECU so NCS Expert can retreive the car’s VIN number and Vehicle Order (VO) so that it knows what parameters to use to program the car.



17)In NCS Expert, you will notice beside FG is the VIN number and FA contains the VO for the vehicle. The FA string can be changed if needed, but we will not get into that in this guide.


18)Press the F6 button or click the Back button. Note, the Function buttons may be grayed out for a few seconds. When you press the Back button, NCS Expert is reading all the values from every module in the vehicle and storing them in a FSW_PSW.TRC file located in the NCS Expert WORK folder. It does this automatically, and will overwrite the file if it already exists.


19)Open your NCS Expert WORK folder (you should have a shortcut on your desktop to the folder). As mentioned before, you should notice a file in your work folder called FSW_PSW.TRC. This file was automatically created or updated by NCS Expert. A common practice is to make a backup of this file each time you plan to make coding changes to a module in the car. I normally have a folder inside the WORK folder called Backup, and I place all my backups in that folder. So copy the FSW_PSW.TRC file and paste it in the Backup folder or somewhere else on your computer in case you need to restore your settings.




20)In NCS Expert you will notice under get_coded a list of modules selected to get coded. All the parameters/settings for these modules are what’s listed in the FSW_PSW.TRC file you just took a backup of.


21)Since to activate the BC Digital Velocity we only need to deal with the KOMBI module, we are going to select only that module to get coded instead of all the modules. Press F4 or click the Process ECU button.


22)Choose the KOMBI ECU from the pop-up window and press the OK button. Note, for my 2009 BMW E90 my BC Digital Velocity settings were located in the KOMBI module. For some, it may be the CAS ECU you need to select. But for now, just follow along, and if you cannot find the line to edit in the KOMBI module, just start back at this step and select the CAS ECU instead of the KOMBI ECU.


23)You should now notice in NCS Expert under the get coded text that only the KOMBI module is listed instead of all the vehicle’s modules.


24)Press F4 or click on the Read ECU button. This will overwrite your FSW_PSW.TRC file in the NCS Expert WORK folder again. However, this time around it will only read in the values from the KOMBI module instead of all the modules in your car. You will notice the size of the FSW_PSW.TRC file is a lot smaller than before as well. In my case, it was only 9KB instead of 234KB when NCS Expert read in all the values for every module. You will also notice a NETTODAT.TRC window pop-up.Just exit out of that window. Additionally, you will notice a string of text under KOMBI that says Coding ended. That means NCS Expert has completed reading the ECU.



25)In the NCS Expert WORK folder, open the FSW_PSW.TRC file in Notepad++.  Note, if you do not have Notepad++ installed, you can also open the file in the standard Notepad program.


26)We need to go ahead and save this file with a .MAN extention instead of .TRC since NCS Expert is setup to code your car with the FSW_PSW.MAN file located in your NCS Expert WORK folder. So in Notepad++, click on File, then click on Save As, and then change the file name to the following: FSW_PSW.MAN
Note, it is okay if the FSW_PSW.MAN file already exists in your WORK folder. Just overwrite it.




27)After you save the file, notice in Notepad++ the tab should have a title that says, FSW_PSW.MAN instead of FSW_PSW.TRC.


28)In Notepad++ use the search option to search for the following parameter: BC_DIGITAL_V


29)If you have not noticed already, some parameters have the word “aktiv” under them, and some parameters have “nicht_aktiv” under them. Thebasic fundamentals for most parameters are, if it has the word “aktiv” underneath it, it means that parameter is active (enabled). If the parameter has “nicht_aktiv” underneath it, it means thatparameter is not active (not enabled). As you can see from the above screenshot, the BC_DIGITAL_V parameter is not active. So to activate the BC Digital Velocity feature, replace the word “nicht_aktiv” with the word “aktiv” and save the file.


30)In NCS Expert, press F5 or click the Basic functions button. In the pop-up window select the coapiReadSgGetFswPsw function and press the OK button. Selecting this function simply tells NCS Expert that we would like it to use the parameter values from the FSW_PSW.MAN file that we just edited when we code the car. Another pop-up window (coapiReadSgGetFswPsw) will appear that has the CBD name and other text fields. Do not change anything, and just press the OK button.



31)A pop-up window (coapiReadSgGetFswPsw) should appear with the message that says, “basic function perfect ended”. If it does, pres the OK button. If it does not, you may have done something wrong in one of the above steps, and do not continue forward.

32)We need to change the JOBNAME from CODIERDATEN_LESEN, which means NCS Expert will read the information from the module instead of writing to it, to SG_CODIEREN, which means we want NCS Expert to write the information to the module. Press F2 or the Change job button, and in the pop-up window, select SG_CODIEREN and press the OK button.



33)Finally, the step you have been waiting for. We are now ready to write the changes to the module. Make sure beside JOBNAME NCS Expert has SG_CODIEREN selected. Next, Press F3 or the Execute job button.


34)Next under KOMBI, you will notice a text string that says Coding activ, which means coding is taking place, and after it is done coding the changes, the text string will say, Coding ended.


35)Congratulations! You have coded your first feature on your car! After the coding has ended, the vehicle will restart. Afterwards, press the BC button a few times until you see the velocity screen.


I hope this guide was useful for you. I know it was extremely long, but once you code a few more features, this process will be second nature to you and you’ll look like a pro in no time.