BimmerFest BMW Forum banner
1 - 20 of 510 Posts

Seek to understand,^Value
25,378 Posts
Discussion Starter · #1 · (Edited)
Making sense of INPA, EDIABAS, NCSExpert, NCS Dummies, DIS/GT1, EasyDIS, & Progman

EDIT: PLEASE IMPROVE! We are constantly updating this first post, as new information comes in (until it won't let us update it anymore).

Kudos: Many people collaborated on this BMW factory & dealer software explanation, especially Quick99Si who ran through all the installs and created a nice collective site for download (including combining & compressing the RAR files to the max!) & RDL who provided clarification on the unintuitive software intricacies.

Tribal knowledge requested to make organized sense of recommended E39 factory/dealer diagnostic hardware & software.

Based on the available diagnostic tools and in concert with the various BMW coding forums let's try to meaningfully organize the following E39-specific diagnostic-related scanning, coding, and programming tools & interfaces for the entire E39 tribe to benefit.

  1. Assess your portable computer:
    • Almost any laptop hardware will work
      • The classic BMW dealer diagnostic laptop is an IBM T30
      • You'll want at least 40GB available hard disk space (100GB+ if you're installing Progman)
      • And, as much RAM as the PC can handle (Quick99Si had 2GB RAM in his Dell D620 laptop).
      • However almost all Windows PCs should work though (best with WinXP).
        • Warning: Most would NOT use their everyday laptop as their diagnostic laptop simply because software installation was intended for a stand-alone application (and, as such, it modifies many emulation, registry, and root entries).
    • Most programs run on Windows (e.g., INPA & NCS).
      • You can't go wrong with WinXP but others are reputed to work:
        • Windows XP <== by far, the best
        • Windows 2000
        • Windows VISTA
        • Windows 7 (NCSExpert requires XPmode)
      • Some programs run on Windows only with UNIX emulation (e.g., EasyDIS & Progman).
        • Typically EasyDis is set up on Windows via VMware UNIX emulation (details below)
        • Typically Progman is set up on Windows via Daemon Tools UNIX emulation (details below)
    • The biggest hardware factor on the PC is the I/O interface:
      • USB (see details below)
      • Serial (see details below)
  2. Order the right cable (1) (2) (3)
    • Three constraints focus your cable decision:
      • Vehicle end:
        • 20-pin round "pacman" OBD connector or 16-pin trapezoidal OBD connector
      • Computer end:
        • USB or RS232 serial
      • Interface support:
        • L-Line &/or K-Line &/or D-CAN
    • 20-pin round "pacman" OBD connector vs standard 16-pin "trapezoidal" OBD connector
      • If your E39 has the round 20-pin "pacman" OBED connector in the engine bay, then you MUST use that connector with these tools.
        • Note: It doesn't matter whether you 'also' have a 16-pin trapezoidal OBD connector; you still must use the round pacman OBD connector with your cables!
        • Note: While the 20-pin round ADS pacman connector looks similar to the 20-pin round OBD pacman connector, no E39 uses the ADS interface!
      • If you do not have the round 20-pin pacman OBD connector in your E39 engine bay, then you MUST use a 16-pin trapezoidal OBD interface cable.
    • USB vs Serial
      • USB is virtually 100% compatible with the software listed below and most recommend USB cables at this point.
      • Serial cables are cheaper & more information exists about their use; but, as time goes on, USB is winning out over serial (as serial port laptops dwindle away).
      • Most serial cables included adapters or cables to fit both the 20-pin round "pacman" OBD plug in addition to the 16-pin trapezoidal OBD port.
      • Warning: Some serial-to-USB conversion cables work (1) (2); others don't. Try to avoid the hassle with good up-front decisions
    • L-Line vs K-Line vs D-CAN
      • L-Line is the communication protocol on BMW cars from circa 1987 (first year of the ADS connector) to about the 1997 (before the E39).
        • Note that E39s (built from 1998 onward), do NOT use the ADS interface!
        • Older E39s may have a similar 20-pin round pacman connector; but it's 'not' a round ADS interface; it's a round OBD interface.
        • The round ADS interface uses pin 15 (RXD), which was phased out in 1996.
        • None of the E39's should need an ADS interface, but if you have any doubt, check the voltage at pin 15 of your round pacman connector; if you see about 11v you need the round ADS interface. If not you need the round OBD interface.
        • For further details, see the connector diagrams included below and the documents (e.g., bus system.pdf from JeffStri in post #94)
      • K-Line is the communication protocol on BMW cars from around the end of L-LINE to around 2006, including all BMW E39s.
      • D-CAN started on BMW in 2007 and is the current protocol (no E39 is D-CAN but most D-CAN cables are backward compatible to the K-Line).
    • Warning: No cable (yet) handles all three interfaces!
      • The best you can do is two out of three
        • Serial cables are often L-Line & K-Line compatible
        • USB cables are often K-Line & D-CAN compatible
        • All E39s require at least the K-Line interface
      • 1st choice: BMW INPA EDIABAS K-Line USB Interface (e.g., USB K-Line, aka "BMW INPA EDIABAS K+CAN USB OBD2")
        • $50 1, 2, 3
        • Primary K-Line on pin 7 (for the engine & gearbox); secondary K-Line on pin 8 (for all else)
        • FTDI Chip [Note: Get FTDI drivers here (1)]
        • Works on all newer E39s from 2001 to 2003 with the 16-pin OBDII connector above the driver's left knee
        • Note that there is a secondary K-Line on pin 8 (which is not on most DCAN interface cables) in addition to the primary K-Line on pin 7.
        • Models that use the K-Line OBD interfaces are:
        • - E87, E30 E36 E46 E83 and new E90, E34 E39 E53 and older E60 E61, E63 E64, E38 E65 E66, E31 E52, E53, E85 E52, R50 R52 R53
      • 2nd choice: BMW INPA EDIABAS K-Line Serial Interface (i.e., RS232 K-Line)
        • $25, 1, 2, 3, ...
        • Computer must have a serial port
        • Usually comes as two cables, one for round 20-pin interface & one for the 16-pin OBD connector
      • 3rd choice: BMW INPA EDIABAS K+DCAN USB Interface (i.e., USB K-Line+DCAN)
        • $120 1, 2, 3, 4, ...
        • Be careful: There are TWO kinds of K+DCAN cables with respect to E39 compatibility
          • Primary K-Line on pin 7; secondary K-Line on pin 8
          • Pin 8 removed (needs adapter to restore 2nd K-Line)
        • Models that require D-CAN:
          - E60, E61 after 3/2007, E83 after 9/2006, E81, E87 after 3/2007, E90, E91, E92, E93 after 3/2007,
          - E70 (New X5), R56 (New Mini), New F Series, as well as all other new models.
        • Uses the FTDI FT232RL USB to Serial Converter chipset
      • 4th choice: BMW INPA EDIABAS ADS + K-Line USB Interface (e.g., RS232 ADS+K-Line)
        • $65 1,
        • This is the serial cable that Randomly & Quick99Si bought for their round pacman OBD interface cars, for $80, and which, unfortunately, needs a six-to-ten-foot serial port extension to be practical since it has a hard inflexible adapter.
        • The connection is from round pacman connector to cable to adapter to computer or from OBD to adapter to computer; but realize since the adapter is a hard card, there's no way (without an additional flexible cable) that you can connect your computer physically!
        • Works on older E39s from 1997 to 2000 with the 20-pin round pacman connector under the hood.
        • If you have both the 16pin OBD2 socket AND the round 20pin socket you will still have to use the 20pin connector for factory diagnostics because not all modules talk to the OBD socket.
      • 5th choice: $35 Carsoft 6.5 RS232 Interface
      • 6th choice: Volkswagon (modified) VAG-COM KKL 409.1 cables with a FT232RL chip.
  3. Download the required Windows-helper software
    • WinRar
      • WinRAR 4.01 32-bit (1.4MB):
      • Needed to extract the downloaded RAR files.
      • This is a free 40-day trial version (which is plenty of time for what you need it for).
      • Note: While most use WinRAR, any RAR archive unpacking tool will suffice, e.g., IZArc or FreeRarExtractFrog freeware, etc.
    • Daemon Tools Lite (1)
      • Daemon Tools Lite v4.41.3.0173 (10.9MB):
      • The purpose of this emulation software is to make the downloaded *.iso & *.nrg files on your hard disk 'look' (to the OS) like CDROM/DVD optical disc media (which is what the BMW diagnostic programs expect).
      • Installation requires 29 MB of disk space.
      • This is a free version with no time limit (for personal use only).
      • For example, Daemon Tools will mount the INPA /EDIABAS *.nrg image file as a virtual cdrom (which includes inpa / ediabas / ncsexpert / winkfp / tool 32)
      • Apparently, VMware has the ability to mount images also (based on Progman installation instructions); so Daemon Tools may not be needed if we can find instructions how to mount EasyDis v1.0 using VMWare instead of using Daemon Tools; however, the instruction PDF calls for Daemon tools so that's why it's listed here.
      • Some instructions also note that Alcohol 120% trialware can be used for mounting ISO & NRG images as cdroms.
    • VMware, v6 (315MB) (1) (2)
      • VMWare v6.0.3-80004 (315MB):
      • The purpose of this software is to make the operating system (OS) of your PC 'look' (to the program) like UNIX, even though it's actually Windows.
      • VMware is used for UNIX virtual-machine mounting when installing DIS/GT1 for the first time, and then again for VM-mounting the Progman hacked ISO.
      • Note: Interestingly, the INPA v6.4.3 installation package (which includes INPA, the EDIABAS API, NCSExpert, WinKFP, & Tool32) requires another image file to be mounted as well (using daemon tools) because that virtual machine boots and uses the daemon-mounted image file to install the "EasyDIS/GT v44 programs"
  4. Download & install the required BMW-diagnostic software (only INPA/EDIABAS & EasyDIS are needed in most cases, both kindly re-imaged by Quick99Si for your convenience)
    • 1st INPA / EDIABAS package (i.e., INPA 4.4.7, EDIABAS 6.4.3, NCSExpert 3.0.8, NCSPlant 3.0.5, NFS 4.2, WINKFP 4.2.3, ToolSet32 3.2.4, & WINELDI 2.6.1)
      • Download:
      • How-To: (1MB)
        • Notes: This version seems to be preferred over the optional 2010 v5.0.2 update.
        • Set up version 6.4.3 to make sure everything works.
        • Using WinRAR, point to the first RAR file & extract to create a folder called "INPA-6.4.3-full" containing the 347,183KB image "ediabas-6.4.3-full.nrg".
        • Then mount that "ediabas-6.4.3-full.nrg" image file using the "Add Image" button in Daemon Tools Lite.
        • It will mount, by default, as X:\NEU containing the folder X:\NEU\Referenz
        • You will need to run the installation program X:\Referenz\INSTALL\Instprog.exe
        • Follow the steps in the PDF file referenced above, but select the "BMW Group Rectification Programs USA" option instead of "UK" on page 5.
        • On the same page, you can select the option to install NCS Expert and WINKFP in addition to INPA and EDIABAS (it's not required now, but it's useful for later).
      • That INPA package contains INPA 4.4.7, the EDIABAS 6.4.3 API (which is required for most of the tools), NCSExpert 3.0.8, WinELDI 2.6.1, NCS plant 3.0.5, NFS 4.2, WinKFP 4.2, & ToolSet32 3.2.4 according to this reference.
      • WINKFP can program, i.e., it can update software on a module to a newer release (if you already have that newer release file available)
      • INPA is much easier to install than EasyDIS and will read module data, read & clear DTCs & perform car module function checks.
      • INPA will read DTCs, clear DTCs and activate functions, e.g. turn on a warning light, or move the Xenon headlight aiming up & down in order to test functionality.
      • While INPA is good for diagnostics, it will not do coding.
      • INPA is easy to install. The install package simply copies files into the following four 8+3-named Windows directories C:\{EDIABAS,INPA,NCSEXPER,NFS}
      • One then has to modify a couple of INI files to specify the adapter cable & you're in business.
      • Note: Later versions of EDIABAS are known to cause problems with DIS and Progman so INPA v6.4.3 is the recommended version.
      • ToolSet32 allows you to query detailed option information & is used for adjusting personal settings, key memory, & interrogating modules.
    • NCS Expert
      • NCS Expert is included in the INPA package listed above.
      • NCS Expert is easy to install (if you already have INPA working, NCS Expert will work too, with no further changes).
      • Can code dozens of options in every module in the car (e.g., the automatic door locking at 5mph in the General Module)
        • See, for example this file:
          That's the output Quick99Si obtained when he read his general module using NCSEXPERT.
        • You'll see the following lines for allowing opening/closing of the windows via the remote.
          • KOMFORTOEFFNUNG_FB aktiv (i.e., comfort opening, FB=key fob)
          • KOMFORTSCHLIESSUNG_FB nicht_aktiv (i.e., comfort closing, FB=key fob)
      • Most relate to different markets variants.
      • Figuring out what to change to get a result can be very tricky.
      • NCS Expert comes with virtually no documentation or detailed instructions.
      • NCS Expert reads or writes to modules using parameters in German words and abbreviations.
      • NCS Expert is difficult for a native German speaker to understand, let alone English speakers.
      • If you want to "play around" & give your car a European flavor, NCS Expert is needed (e.g., Comfort Close, which EasyDis won't set).
      • WARNING: Do not start NCSExpert until you've read the NCSExpert and dummy PDF's twice (NCSExpert is VERY dangerous and the GUI is in German to make it doubly more dangerous, in effect).
    • 2nd NCS for Dummies (also called NCS Made Easy or NCS Expert for Dummies, by Revtor)
      • Note: For a description of the latest update from Revtor, please see this thread.
      • For the latest download from Revtor, click here:
      • For a Quick99Si archived download, Download: (154KB)
        • Note: NCSExpert needs profile files to read and write files. One of those profiles is included with Revtor's packages (it's the PFL file).
        • Quick99Si kindly included two others sourced elsewhere.
        • All these profile files are included in Quick99Si's NCSDUMMY along with the Revtor guiding PDF.
      • Revtor has developed this very nice standalone (and much-needed) aid to understanding & using NCS Expert.
      • For a five-minute walkthrough, using NCS for Dummies, please see post #50 below.
      • The PFL file is a profile used later by NCSEXPERT.
      • The included PDF is a guide on reprogramming, not installing, and it is definitely worth reviewing multiple times.
      • This NCS for Dummies installation provides a detailed description of how NCS Expert works.
      • It contains step by step guides for reading and writing to modules.
      • It tells you how to make a backup of one's starting point, in case a coding change has unintended results.
      • It reads NCS Expert input and output files with translations of many, although not all, of the hundreds of parameters from German to English.
      • With these translations, one has a reasonable chance of success when trying to change (i.e. code) an option.
    • 3rd EasyDIS 1.0 (which is DIS v44) and the READTHISFIRST document from DavidMC
      • Download 1: (240MB)
      • Download 2: (758MB)
      • How-to 1: (125KB)
      • How-to 2: (1.7MB) (bottom half for this step)
      • How-to 3: by Randomy (2.5MB)
      • How-to 4: (2.1MB)
      • Notes: There are a few functions that will need to be performed from within the DIS virtual machine Administration menu.
        • These include changing the translator to and from FISTER (ADS) or SOFTING (OBD) to correspond with your interface; performing the APITEST to verify functionality, configuring the running processis; and shutting down DIS.
        • To do this, click the Administration button in the bottom right; select "Calibrating Touch Shield"; and enter 12345 as the password.
        • VM should be set to "not run"; and the others should be set to "run."
        • The "Installation_Check" PDF can be used to ensure that your entire configuration works.
        • The toughest part is probably having the virtual machine properly networked to your Windows box with EDIABAS.
        • Always run IFHSrv32.exe before starting DIS; in fact, it wouldn't hurt to have IFHSrv32.exe autostart with Windows.
      • There is only one version of EasyDIS, which is EasyDIS 1.0 (more properly called "EasyDIS 1.0 based on DIS v44 and GT1").
      • EasyDIS is a hacked version of DIS v44 that was modified to make installation and configuration in the UNIX virtual machine easier.
      • DIS v44 was the dealer software for the E39 era & is the most useful software you can install.
      • However, DIS runs on UNIX. Installation is difficult for most since one must set up to run DIS inside a UNIX virtual machine (via VMWare)
      • EasyDIS diagnostics are excellent & the software is in English.
      • EasyDIS does coding (e.g., the automatic door locking at 5mph in the General Module) and programming.
      • EasyDIS exercises components & resets service intervals.
      • All the Car & Key Programming options available in North America can be changed.
      • New modules can be installed & retrofitted.
      • Note: Do not install any later DIS than v44; DIS v45 to v57 are a step backward from DIS v44 because DIS became diagnostic only (Progman was added for coding/programming & confusingly has lower version numbers than DIS)
      • Read the Randomly: How to install GT1\EasyDIS v44 step-by-step in the Bimmerforums Diagnostic Software forum ... The first post there is decently helpful as an overview, but, according to Quick99Si, it is outdated and lacking key details.
        • For example, it doesn't say how to perform apitest in easydis; nor how to change the translator from softing (obd) to fister (ads); nor does it say that you need to exit DIS by shutting it down first (using the DIS administrator button, then calibrate the touch screen, then enter 12345 for a password, & then 0 to shutdown or other #'s to perform the apitest/translator/restart ediabas).
  5. Download any desired optional software
    • 4th Progman v32
      • WARNING: Progman installation is more involved than those above!
        • Don't even 'think' about installing Progman until you have the programs above in working order!
        • Program requires a working EDIABAS API (which is installed with the INPA setup).
      • Progman has a user friendly interface for coding & programming new modules than EasyDIS provides.
      • But Progman has no more functionality than EasyDIS does (it is said Progman's primary benefit has to do with coding used modules)
        • While brand new modules can be coded with EasyDIS/GT1, it seems that Progman is often used to code old (used) modules containing an old VIN that needs to be coded to the new VIN.
      • Progman does not have any diagnostics; its sole purpose is programming and coding.
      • Progman will, for example, code the automatic door lock feature at 5mph in the General Module.
      • Progman runs under UNIX (so most people run it on Windows using VMware UNIX emulation).
      • Confusingly, Progman version numbers started around v20 or so (superseding DIS v44).
      • The currently available Progman version "in the wild" (i.e., outside BMW dealerships) is v32.
      • There are those who say Program isn't worth the installation & learning trouble over EasyDIS.
      • Note: Progman calls for the creation of another VMware virtual machine plus a whopping 80GB of virtual space. It needs another image mounted to CD so it can install itself, but the instructions here call to use VMWare for mounting instead of Daemon Tools.
    • 5th INPA 5.0.2 update
  6. Run your first coding experiment
    • Spit out all the available options for your general module:
      • Here's how, without even reading your car.
      • Open NCS for Dummies.
        • Select E39 for chassis
        • Select GM3_C05 for module (or whatever your module is)
        • "Translations" will be checked
        • Manually check "Order Options"
        • Click "Module Functions,"
        • Click export sorted by keyword
        • Save it somewhere and open the text file in Notepad
        • You will have all the available options to code for that module (along with most English translations, and most importantly: the available "settings")
        • For example, look for VERRIEGELUNGSSCHWELLE, and you'll see the speed settings you can change.
        • This shows you'll likely want to set VERRIEGELN_AUT_AB_X_KM/H to nicht_aktiv and you're done!
    • Change the automatic door locking feature of the E39 at a preset speed (e.g., at 5 mph, all four doors autolock):
      • VERRIEGELN_AUT_AB_X_KM/H aktiv (i.e., automatically lock all doors at a specified speed)
        • If it's aktiv, then VERRIEGELUNGSSCHWELLE is also used, which can accept a bunch of values representing various speeds
      • VERRIEGELN_AUT_AB_X_KM/H nicht_aktiv (i.e., automatically lock all doors at a specified speed)
        • If it's nicht_aktiv, then VERRIEGELUNGSSCHWELLE is ignored.
    • Note: We need to flesh this out further for others to benefit.
  7. Run your first diagnostic experiment
    • PLEASE IMPROVE!!! (help the team!)
      • Test the ABS control module & wheel speed sensors
ORGANIZATION: (please correct as needed!)

  • Emulation Software:
    • VMware used for UNIX virtual-machine mounting when installing DIS/GT1 for the first time, and then again for VM-mounting the Progman hacked ISO.
    • Daemon Tools Lite used for virutal CDROM/DVD mounting of the ISO & NRG images downloaded of the BMW diagnostic software.
  • Factory Software:
    • INPA (the typical downloaded RAR file also installs the EDIABAS API, NCSExpert, WinKFP, & Tool32)
    • NCS Expert (aka NCS)
    • NFS
    • ToolSet32
    • WinKFP
  • Factory Services:
  • Dealer Software:
    • DIS v44 (the dealer software of the E39 era)
    • DISplus
    • Progman
    • ISIS (BMW software control system)
    • ISTA/D (the current dealer level software)
    • ISTA/P (the current dealer level software)
  • Dealer Hardware:
  • Dealer Diagnostic Heads:
  • Aftermarket Software:
  • Aftermarket Hardware:
    • IBM T30 laptop (serial port, running Windows, with VMware UNIX emulation)
  • Hacked Software
    • Carsoft 6.5 SP1
    • EasyDIS v44 (this is the same as DIS except it was hacked to be easier to install)
  • Hacker Hardware
    • CAS3 mileage correction tool
  • DIY Hardware:
    • Actron
    • AutoXray EZScan
    • MaxiScan
    • PEAKE
    • SR-300
  • Professional Hardware/Software:
DEFINITIONS: (please correct as needed!)
Note: Each tool is roughly categorized as:
- Factory === Tools written by and for the BMW factory
- Dealer
=== Tools used by the dealer (supplied by the Factory)
- Professional === Tools used by professional mechanics (often > $1,000)
- Aftermarket === Tools intended for use by BMW aficionados (e.g., >$500 Carsoft Ultimate Home Edition)
- DIY === Tools intended for use by BMW dilettantes (e.g., <$100 OBD scanners)
- Hacker === Modified versions of the above (often out of China, often in German, often freely downloaded with no support, often with no cables supplied)
- HW === Hardware- SW === Software

Let's ask each of us to please add and/or correct organization and/or definitions so that, at the end of this thread, we can finally summarize for the world, the relevant currently available 'things' & 'actions' for BMW diagnostic purposes.


  • Coding tools: MoDiC, GT1/DIS, GT1/DISplus, SSS/Progman, Easy-DIS (to v44), NCS, NCS Expert, INPA, Carsoft (v7.x & v8.x only), Launch X431, ?
  • Programming tools: MoDiC?, GT1/DIS?, SSS/Progman?, ?
  • Diagnostic tools: Easy-DIS versions after v44, P.A. Soft BMW Scanner, ?
  • Reset tools: Carsoft, Peake, ?
  • Scanning tools: Actron, MaxiScan, SR300, AutoXray EZScan, ?

  • Actions
    • Coding (verb): setting available options that the programming in a module will recognize & permit (e.g., the door autolock feature)
    • Programming (noun): the set of instructions stored in a module that give it functionality
    • Programming (verb): loading updated BMW firmware into a module
    • Reading: Reading error flags & diagnostic fault codes in a module & version and other information ?
    • Resetting: ? Clearing error flags in a module ? (is it the same as coding?)
  • Cables
    • BMW INPA / Ediabas K+DCAN USB Interface (~$120)
    • Chipsets:
      • ADS interface (confusingly, no E39 uses the ADS interface! The round 20-pin pacman connector on the E39 is an OBD interface!)
      • FTDI FT232Rx: VAGCOM KKL
      • ?
  • Protocols:CAN, D-CAN, K-CAN, PT-CAN, EDIABAS, ?
  • Tools:
    • Factory: INPA, ISIS?, NCS, NFS, WinKFP?
    • Dealer: MoDiC, GT1/DIS, DISplus?, SSS/Progman, ISTA/D, ISTA/P
    • Hacker: EasyDIS, INPA, NCS_expert?, NCS_made_easy, ?
    • Professional: Autologic, Diagun, Genisys EVO, Launch's X431, SnapOn Solus, ?
    • Aftermarket:
      • BMW: Carsoft, Peake, P.A. Soft BMW Scanner, ?
      • OBDII: Actron, MaxiScan, SR300, AutoXray EZ-Scan, ?
NOTE: Do not assume anything in this post is accurate (yet!) as I don't know anything; but I'm trying to organize this for all, including for me!

Summary of References:
- INPA, EDIABAS, NCS Expert, DIS, EasyDIS, Progman, & other BMW factory & dealer programming, coding, and diagnostic software (1) (2) (3) (4) (5) (6) (7) (8) (9) & related BMW diagnostic tools forums (1) (2) (3) (4) (5) & the most often recommended BMW diagnostic tools & cable interfaces (1)

Note: Key users' posts to pay close attention to (alphabetically):Aca84, DavidMC, Dracon, Quick99Si, Randomly, & RDL (on a variety of forums).

[ Temporary backup 09/02/2011 ]
[ Temporary backup 09/13/2011 ]
[ Temporary backup 09/29/2011 ]


Seek to understand,^Value
25,378 Posts
Discussion Starter · #3 · (Edited)

Learning all the time
545 Posts
Shouldn't MODIS be MODIC - a forerunner to GT1 I believe (used by main dealers some time ago)?

There's also PA soft BMW scanner.
It reads and resets most fault codes (inc. airbag) but its codes are largely indecipherable.

Seek to understand,^Value
25,378 Posts
Discussion Starter · #5 · (Edited)
Adding MoDiC & PA Soft

Shouldn't MODIS be MODIC - a forerunner to GT1 I believe (used by main dealers some time ago)?
You're right. I will fix that mistake.

In fact, it's clearly listed in post #10 over here as MoDiC:
MoDiC = Mobile Diagnostic Computer

The reason I had not found it in my prior search (before creating this thread) in the BMW glossary was that I was (errantly) looking for Modis (not modic) based on this post.

Thanks. I'll update both the glossary & the OP of this thread.

There's also PA soft BMW scanner
Good catch on an omission!

I'm getting a bit confused, because, googling, I find these two seem to be related:

Searching Bimmerfest titles, it looks like it's oft discussed... so ... I'll read these PA Soft bimmerfest threads to figure out 'what' it is and then add it to the OP for others to review and correct as needed:

Package price :
BMW Scanner V1.4.0 order form.
- full package - $1200.00 $650.00 USD
Shipping costs are not included in the package price.
EDIT: Looks like the various P.A. Soft BMW Scanner versions are vastly different based on this thread.
P.A. Software BMW Scanner v1.3.6 vs P.A. Software BMW Scanner v1.4.0
hamrt said:
I recently purchased a PA Soft BMW Scanner program 1.3.6. hppt://

It has limited capabilities. It scanned my car, let me rewrite the odometer and VIN to a new LCM, but it does not have the reprogramming capabilities like the later 4.1.0 version. The newer version connects only via the OBDII connector and may not be able to communicate with my car (a 2000 323i) because it has the 20-pin connector under the hood. All the coding information it read was useless because there's no way to interpret it. The error codes are useless because it does not tell you what they mean. Absolutely no instruction manual and the one document I found on-line is so poorly written (Is this english?), it is imposible to made heads or tails out of it. I would have to say don't bother with it.


46 Posts
The PA soft scanner 1.36 is a real PITA, I would avoid this scanner as it is not user friendly and very fussy about what machine it will run on.
but there are lots of diagnostic software and interface's out there, just go for what suits your needs/budget

154 Posts
I just got a ODBII cable to usb and PA soft 1.4.0. I plan on using the cable and various programs to try to figure out the whole auto windows up with key fob reprogramming for my car. I plan on doing this next weekend when I'll have three days to work on it. In the mean time, I'll be loading programs and testing connectivity from car and computer. The only problem I see now, is that most of these programs require serial port connection to OBDII and not usb. Might have to purchase a different cable and a usb to serial port connector. I'll post what I'm able to do if it works or not, to assist others who are trying so that we can all make heads or tails of this. Thanks for the thread start.

Seek to understand,^Value
25,378 Posts
Discussion Starter · #9 · (Edited)


3,845 Posts
I too need a cable that will work with EDIABAS/INPA. I have Carsoft that has a cable but it won't work with the other programs. I just want to program my ABS module.

Seek to understand,^Value
25,378 Posts
Discussion Starter · #11 · (Edited)
I too need a cable that will work with EDIABAS/INPA. I have Carsoft that has a cable but it won't work with the other programs. I just want to program my ABS module.
Like you, I'm realizing belatedly the Carsoft 6.5 serial-port cables stink; and, like you, I also need a good cheap reliable INPA/EDIABAS USB cable source for my E39.

The main reasons the Carsoft 6.5 cables stink are:

  • They don't (easily) work with the INPA/EDIABAS tools (without tricks)
  • They are serial port only (yuck - what we need is USB operation)
So you and I (and practically everyone else), both need a good source for the INPA/EDIABAS USB cables.

This site sells a the latest "INPA/Ediabas K+DCAN USB Interface" cable for a whopping $125 and says it "Works with INPA, SSS, Progman and others"; but my E39 doesn't need D-CAN capability so I should be able to make do with a less expensive INPA/EDIABAS cable.

I'm not sure if my E39 needs K-CAN or PT-CAN (I need to add these to the glossary above, whatever they are) based on what this cable purports to support:
- Connects to USB (built in 1,5m long USB Cable, creates virtual comport)
- Double K-Line support (See Screenshot)
- High Speed D-CAN and PT-CAN support (500 kbit/s) (See Screenshot)
- Low Speed PT-CAN support (100 kbit/s)
- Battery voltage detection by control line (See Screenshot)
- Ignition voltage detection by control line
It may be useful that the website lists compatibility as "(all functions as in OMNITEC interface)" so "Omnitec" is yet another keyword we need to put in the glossary.

Can someone clarify the cable options for the E39 using these diagnostic tools?

Note: This BMW cable FAQ may help to answer the questions (I'm in the process of reading it).


Seek to understand,^Value
25,378 Posts
Discussion Starter · #12 ·
Doing some research, the problem here is that there is too much information.

Perhaps this is a decent summary:
- Getting Started with Coding your BMW

#1: You need a cable that plugs into the OBD port. Many people have had success offering $85 including myself. This is the cable that works consistently, including 2011s. (update I heard lowest price is $90 now)

#2: Download the programs required for coding (NCS Expert, INPA, EIBAS) all files needed

#3: A simple DIY guide to get started

#4 (Optional): You will need newer daten files for NCS Expert to code 2011 CICs (iDrive). I was able to read a 2011 CIC with v39 daten files. This can be found in newsgroup and/or bittorrent sites. Or here's one from from rapidshare:

Update instruction from
In each "sp-daten-Exx" folder in the subfolder "daten" find a file "laden.bat" &#8230; execute this .bat file and your ncs will be updated automatically with the new data for the corresponding model.

Or u can do the following copy-paste procedure:

Target ---------------------------Source .(SP-Daten-Exx directory from ISTA-P)

\NCSEXPER\SGDAT\ -------- .ipo files
\NCSEXPER\DATEN\ -------- coding data (daten) for models
\EDIABAS\Ecu\ -------------- .prg files......

Please make sure you make a backup of your \EDIABAS\ecu folder. When you get error message from NCS Expert that you have a "Version" problem, you need to put your original prg file back to \EDIABAS\ecu folder.
The question for E39 users is where to get a CHEAPER cable (since we don't need the D-CAN cable)?

3,845 Posts
If I can't get a cable for less than $100, I'll just have the dealer code mine but I really would prefer to have my own set-up.

2003 530i
2,291 Posts
... stuff deleted ...

The question for E39 users is where to get a CHEAPER cable (since we don't need the D-CAN cable)?
An ebay search on "bmw inpa" turns up over 100 cables.

Serial port versions price + shipping start ~$25 and most also include a round 20 pin adaptor used up to '98 (or so, I think) in addition to the OBD connector.

USB versions ~$45 but none seem to have the 20 pin adaptor; OBD only.
If you need it the 20 pin adaptor too, search "bmw obd" It will turn up > 2000 items. Sort by price + shipping - all the less expensive items are 20 pin round to OBD adaptors for $5 to $10 delivered.

As noted above, E39s do not need the D-CAN version which started around 2006 (I think, but not sure) D-CAN versions start at ~$60. So far as I know, D-CAN cables also support the K-line that E39s use.


Seek to understand,^Value
25,378 Posts
Discussion Starter · #15 · (Edited)
As noted above, E39s do not need the D-CAN version which started around 2006 (I think, but not sure) D-CAN versions start at ~$60. So far as I know, D-CAN cables also support the K-line that E39s use
My frustrating problem is that I can't make any sense out of the cables (yet)!

Normally I'm good at searching - but - in this case, searching just brings everyone's confusion to the fore! Including mine.

Taking your post as my starting outline, are 'these' the available E39-related cable types?

RDL said:
D-CAN cables also support the K-line that E39s use.
That sentence confuses me because I don't know what a K-Line is (yet) but I had thought that the E39 didn't use D-CAN ... so I'm going to have to add these to the glossary in post 1 so we can make some sense out of the words "K-Line" and "D-CAN".

Here's the cable compatibility breakdown, cables listed from oldest to newest:

K-Line only cable:
All K-Line cars
All Double K-Line cars
No D-CAN cars

K+DCAN cable with PIN 8 connected:
All K-Line cars
All Double K-Line cars
D-CAN cars without Ethernet interfaces, i.e. cars produced from 9/06 or 3/07 (depending on model) up to but NOT including 3/09

K+DCAN cable with PIN 8 disconnected:
All K-Line cars
All D-CAN cars
No Double K-Line cars (except with an adapter)

The reason is that cars from 3/09 onward have an Ethernet interface on Pin 8, and if the car detects a signal on that interface, it drops the D-CAN connection that's being used for coding. A cable with Pin 8 already disconnected (or desoldering it yourself) solves that problem but breaks Double K-Line because BMW used Pin 8 for Double K-Line back in the day. Unfortunately that recycling of Pin 8 means there's no universal cable, so it's something to be aware of. Some vendors sell an adapter that will allow you to code Double K-Line from a cable with Pin 8 disconnected though because the adapter bridges Pins 7 and 8, so that's how you'd get truly universal coding if you need it. However, I don't know of a way to block Pin 8 without desoldering.
K-Line and Double K-Line were the older and much slower protocols used on older BMWs before D-CAN became available.


2003 530i
2,291 Posts
My frustrating problem is that I can't make any sense out of the cables (yet)!

Normally I'm good at searching - but - in this case, searching just brings everyone's confusion to the fore! Including mine.

Taking your post as my starting outline, are 'these' the available E39-related cable types?

That sentence confuses me because I don't know what a K-Line is (yet) but I had thought that the E39 didn't use D-CAN ... so I'm going to have to add these to the glossary in post 1 so we can make some sense out of the words "K-Line" and "D-CAN".

... image deleted ...

Sorry I threw you a curve with the reference to K-line.

What you need for your 2002 is an OBD cable that claims BMW INPA compatibility. Although it may not be stated these will be K-line cables. Your 2002 does not have the 20 pin round plug (commonly called ADS) used in earlier E39s. If you wish, buy the more expensive D-CAN cable so you can connect to newer models too, they are backward compatible.

There have been about a dozen signalling protocols commonly used by various manufacturers for OBD and OEM proprietary ports. The various protocols use different pins in the plug. For the E39, BMW chose a protocol that uses the so called K-line; one of the ISO 9141 versions I think. The more recent models use a flavour of CAN, which also/still uses the OBD port. The most recent BMW models have an additional port, MOST, which is a very high speed fibre optic system. Models with MOST still have the electrically based OBD port for diagnostics as mandated by law.

Some people use ADS as shorthand for the 20 pin round plug found in the engine bay on earlier E39s (and other models) before OBD was mandated by law. Apparently this terminology is not accurate. I've seen expanations that ADS is a diagnostic head used by BMW, but since it was used only with the 20 pin plug the the association has become established. Some, but not all, early E39s with the 20 pin port need virtual ADS software (trick EDIABAS, INPA, DIS, etc. into thinking an ADS head is attached) in order to access all modules in the car.

The BMW dealer systems use a diagnostic head (there have been several versions over the years) which has provision for additional leads that turns DIS into a full featured, multi-function voltage, current, oscilloscope, etc. diagnostic system in addition to DTCs, coding and programming. These heads cost hundreds to thousands; only the exceptionally keen DIYers go to the expense.

It seems to me that the reference to INPA is used for the following reason. The only "tricky" part (and it is actually easy if you follow the instructions) getting started is configuring EDIABAS for the cable you have. EDIABAS is automatically installed with INPA. Once EDIABAS can talk to the car through the cable all the BMW software can: INPA, NCS Expert, WinKFP, DIS, Progman etc.
Since INPA is simple to install, does not require configuration itself and won't change anything other than clear DTCs and adaptation values, INPA is an easy, safe method to verify that you're in business for any of the BMW software.

I've no experience with other cables. But people in the diagnostic software forum describe how Carsoft, Modified VAGcom KKL, J2534, etc. cables can be made to work on BMWs with varying degrees of customization and difficulty.

If you subscribe to the KISS philosophy, buy "BMW INPA" compatible cables; OBD only or with extra 20 pin round adaptor (that plugs into the OBD cable) depending on the car's model year.


Seek to understand,^Value
25,378 Posts
Discussion Starter · #17 · (Edited)
What you need for your 2002 is an OBD cable that claims BMW INPA compatibility ... these will be K-line cables.
Now THAT's the kind of simple summary I need!

I added EVERYTHING you noted into the original post.

EDIT: I subsequently deleted the rest of this post, to save users' valuable reading time, since RDL quoted it below.

Seek to understand,^Value
25,378 Posts
Discussion Starter · #19 · (Edited)
Which is the 'right' cable for a 2002 BMW E39?

BMW INPA / Ediabas K+DCAN USB Interface
Googling on this, I added all the cables I could find into the first post above, so others can find them easier than I did.


1 - 20 of 510 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.