1 Engine rotation speed [TD] 2 CAN-High 3 CAN-Low 4 Shielding 7 Oil service and Inspection reset 11 External starter turn on 12 Battery indicator 14 Battery power +12V 15 ISO 9141-2 L Line 16 Ignition +12V 17 ISO 9141-2 K Line 18 Programming line [PGSP] 19 Ground [GND] 20 ISO 9141-2 K Line [TXD]
If you have an older USB-OBD diagnostic cable that works with BMWs up to 2005 [DIS v44 etc.] then it will need modifying to use with later cars and version of DIS / INPA etc. The process it pretty easy.
1. Remove the four screws from the OBD section of the cable using a crosshead-screwdriver.
2. The case will likely be glued together, so pry it open with a flat-screwdriver and remove the circuit-board.
3. Locate pins 7 and 8 on the back of the OBD-plug itself, which you will find bridged by a blob of solder. [Usually the right-side two pins looking at the face of the board with the LED on.]
4. Use a soldering iron to melt the solder between the two pins so they are no longer linked. [A solder-sucking device is useful here, but it can be pulled off onto the soldering-iron quite easily.]
5. Re-assemble circuit-board in casing and replace screws.
The cable will now work 2005 and later BMW cars, including newer models for all diagnostics using this interface, inc. DIS v55, v57, INPA 6.4.3 etc.
The cable will no longer work with BMWs made before 2005 and DIS v44, so it might be worth getting a spare cable to de-solder. The ideal solution is to solder small wires to each pin that run off to a switch mounted in the edge of the casing. cn555ic has done a very good guide on how to do this on E90post.com - https://www.e90post.com/forums/showthread.php?t=672940.
**You will need BOTH parts to fully install DIS v57** You will need a laptop with USB running Windows XP or Windows 7. You will need a USB-OBD cable optimised for post-2005 BMWs. An older cable can be modified by removing the solder-bridge between OBD pins 7 and 8 - a guide is here.
GUIDE:
Unpacking Files:
Unpack the 2 .rar files into a new folder.
Where the contained instruction file mentions unpacking files from CD1 and CD2, all the .rar files for both CDs are contained in the one 6.7GB download.
Installation:
If upgrading from DIS v44, install the files into the same folder and overwrite existing files.
The instructions cover Windows XP, but files for Windows 7 and 64-bit, along with instructions for that are provided in a folder marked OTHER.
Further installation and troubleshooting instructions [getting the virtual machine / network bridge / ports etc. working] can be found in my prior DIS v44 guide: HERE.
If an injector is replaced it needs coding to the ECU. Once you know what to do, injector coding is a pretty quick and easy job, all 6 can be done in about 15-20 minutes. You will need a working install of DIS and EDIABAS, so a download and setup-guide is in this post. The code is 6 or 7 digits and printed on the top of each injector, more information in this post.
** Connect a float-charger to the battery before coding with DIS **The process takes 10-20 minutes if all goes well, but it is not worth the risk of doing adjustments to the ECU without one.
1. Connect car to DIS and perform API test.
2. Click on 'Diagnosis'.
3. Select 'Series' and 'Model series', then click the forward arrow.
4. Click on 'Yes' to start the 'Short-test', wait a few minutes for it to complete and click the forward arrow.
5. Click on 'Function Selection'. (Bottom left.)
6. Select 'Service Functions'.
7. Select 'Drive'.
8. At EGS transmission control prompt, select 'No' if your car is manual, 'Yes' if automatic, and click OK.
9. Select 'Diesel Electronics'.
10. Select 'Adjustment Programs'.
11. Select 'Injector rate adjustment' so it is highlighted in black.
12. Click on 'Test Plan'. (Bottom centre.)
13. Check 'Injector rate adjustment Bxxxx_Dxxxxxx' is highlighted and click the forward arrow.
14. Wait for the fault memory to be read and at the 'Fault codes are stored...' prompt click the forward arrow.
15. Wait for the current calibration values to come up and click the forward arrow.
16. Select '1' (Enter new calibration values) and click the forward arrow.
17. Enter the number of the injector into the keypad to be re-calibrated and click the forward arrow.
18. Enter the new injector code into the keypad with no spaces and click the forward arrow.
19. If more than one injector needs coding, select 'Yes' to the prompt and click the forward arrow, then repeat the last 2 steps for each injector number. If not, select 'No' and click the forward arrow.
20. Select '2' (Save calibration values) and click the forward arrow.
21. Check the values are correct, select 'Yes' and click the forward arrow.
22. When the new values are displayed click the forward arrow.
23. Select '3' (End) and click the forward arrow.
24. When 'End service function' is displayed click the forward arrow.
25. Shut down DIS and disconnect the car.
*EDIT 7 May 2018: OK, thank you everyone who left a comment, I am glad so many people have found this guide helpful. Due to the high volume of traffic and unreliability of the DropBox links, I have finally added the files to MediaFire and Google Drive. NEW USERS: This is a guide on how to install DIS using the instructions that come in the .zip files, not a detailed guide. The complete procedure to install DIS is quite complicated and has so many variations that will end up with it not working or need the whole thing installing again to change, so follow through them as per the guide below and you should get it going, as many others have. Read the troubleshooting section at the bottom, particularly the first part. The Windows install on some laptops simply will not work with the virtual networking needed to set DIS up and/or routing of the COM ports, yet another laptop running the same Windows version will work fine. If you find yourself unable to complete the installation or connect the hardware as shown below after a few tries, switch to another laptop or do a fresh install of Windows.
GUIDE: You will need:
A laptop running Windows, preferably XP SP2.
A USB-OBD cable (or a serial-OBD cable if your laptop has a serial port).
INPA / EDIABAS.
VM Ware version 5.5 or later.
EasyDIS.iso and DIS_v44_programs.iso.
Diag Head Emulator.
Installation procedure that worked for me: [Obviously refer to the installation guides / videos for detailed instructions.]
Disable Windows Firewall and Anti Virus.
Install drivers for your USB-OBD cable and USB-serial adapter, making sure it is set as port COM1.
Install / update INPA / EDIABAS, using ADS interface, not OBD.
Change environment path in Windows to c:/ediabas/bin.
Install ADS Setup.
Install OBD setup.
Edit ediabas.ini, change remote-host and port.
Install VM Ware [version 5.5 or higher].
Edit VM Ware network bridge in network editor.
Set up the new virtual machine with ethernet set to the network bridge.
Install Diag Head Emulator.
Install easy_DIS and the DIS programs.
Load DIS, open/run Diag Head and open IFHsrv32.exe.
In DIS, enter Administration > Calibrating Touch Shield, change the processes to off and make sure it passes the API test.
Enter Administration > Diagnostic Head, click on the IP-address / computer-name and click the OK button.
Enter Administration > Connection Setup, click on the IP-address / computer-name and click Connecting. Once connected the IP-address should appear in the bottom right and both sets of lights are lit up.
Go back into Administration > Calibrating Touch Shield, set the vm process back to off and change translator to Fister.
Edit ediabas.ini again, changing the interface to STD:OBD instead of ADS.
To run DIS / test connection:
Connect cable to OBD socket on car and turn ignition to phase-2.
Load up INPA (.ipo), check the Battery and Ignition dots are black.
Close INPA, but leave EDIABAS Server running in task-bar.
Start DIS and wait for it to fully load.
Load up Diag Head and click run.
Load up IFHsrv32.exe.
Enter Administration > Calibrating Touch Shield in DIS.
Perform API-test, check it passes, exit back to DIS.
Click on Diagnosis and DIS should now identify your car / carry out the short-test.
Troubleshooting:
If you have access to more than one laptop, try installing DIS again on one of them, rather than wasting days on a problematic install. Some just don't want to work with virtual networking, but will probably work first time on another, similar laptop. [Reformatting the HDD and doing a fresh install of Windows XP SP2 may also fix the problem on a machine that will just not play ball.]
If API-test fails - Check ediabas.ini has the right remote-host and port set / check VM network settings / try out this fix by changing addresses in Unix itself [] / ensure firewall is off and re-install DIS.
If API-test passes, but DIS does not communicate - Check INPA is communicating and reboot DIS / check ediabas.ini has interface set to STD:OBD / check USB-serial port is set as COM1.
DIS ERROR 200.19 - Battery is below 12v, connect a float-charger / check IP address is right for Diagnostic Head in DIS, Admin / check API-test passes.
INPA ERROR IFS-0009 - Ensure USB-serial port is set as COM1 / check ediabas.ini has interface set to STD:OBD / make sure cable is working and fuse 25 has not blown.