Thursday, April 14, 2011

Make ADS interface work with PCMCIA-Serial adapters

PROBLEM: The ADS diagnostic interface for BMW cars is infamous for requiring a "real" serial port and not working with PCMCIA and USB adapters. Serial ports are quite rare on modern laptops.

ANALYSIS: The ADS interface uses a driver that bypasses Windows settings and targets the default hardware address of COM1 directly. Virtual serial ports have a different hardware address (or in case of USB an entirely different access mechanism) - therefore they don't work.

SOLUTION: A tool that patches the driver. Here you go: download AdsPort tool (requires .NET framework 2.0)



The tool will patch your ADS driver to target a different COM port address - this means that it can be used with standard PCMCIA adapters, but not USB adapters.

To see the hardware address of your virtual COM port:
- open the Device Manager window
- right-click on your virtual COM port device
- select Properties
- go to the Resources tab (if there is none, the device probably doesn't have a hardware address and you are out of luck)
- write down the first number from the I/O range (something like "03F8")


Please let me know if the tool works for you in the comments. I have only tested it on a couple of PCMCIA cards, a single notebook and INPA ...


EDIT:
user reports:

- works with INPA + E36 '93, E38 '99, E38 '00
- works with TOOL32 + E39 IKE

22 comments:

  1. Your solution of using PCMCIAto work with ADS is very interesting.
    It would be good to add also producers and symbols of PCMCIA cards which passed test.

    Regards
    Piotr

    ReplyDelete
  2. Manufacturer of the PCMCIA card shoul be irrelevant as long as the virtual COM port has an I/O address (unlike USB devices)

    ReplyDelete
  3. What about PC ExpressCard? Is it working as well, having in mind that it is pretty much newer version of the PCMCIA, right?

    Greets,
    Borre

    ReplyDelete
  4. Do you know anything about COM port via ExpressCard? Has anybody tested this? I mean the ExpressCard standard pretty much replaces the PCMCIA one, right?

    Greets
    Borre

    p.s. Sorry if my comment gets doubled but Blogger screwed them up

    ReplyDelete
  5. Works using ADS and cheap PCMCIA serial card from ebay on e36 m3. Please note that .NET framework 2.0 is needed to run this software.

    Thanks very much, very pleased to get ADS working on my laptop :)

    ReplyDelete
  6. avusm3: I'm glad to hear that - what programs are you using? Any luck with NCS expert?

    Borre: I don't think anyone tried an ExpressCard yet, but it should work if the virtual COM port has an I/O address. Please let me know if you're successful.

    ReplyDelete
  7. i hv bought a PCMCIA->RS232 adapter and also an ADS interface

    the adapter reads "High speed communication port (COM26)" in the device manager under the item "Ports (COM & LPT)"
    it does not have the Resources tab

    there is another item "PCMCIA adapters", under that with "Texas Instrument PCI 1520 cardbus controller"
    this should be the socket that I plugged the adapter into
    it has a resources tab
    it has 2 IO range: FE00-FEFF, FD00-FDFF


    does that mean i need to run the patch so that the ADS driver would point to the PCMCIA adapter?
    if yes, I don't know what I should type into your program (which COM number? and which address as there is 2 IO range)

    ReplyDelete
  8. Hi,

    I saw your tool a few weeks ago and I decided to buy a PCMCIA to Serial adapter and the ADS/OBD2 interface.

    When I plugged the serial adapter (without the cable just COM Port)launched INPA (without your tool) the Battery point was always ON and Ignition always OFF

    I tried your tool but at the beginning I did not understand I had to find MY I/O Adress and not de default one set in the TOOL. So it did not work of course.

    Mine was FDF8, I set the right value, I had to reboot because just after patch INPA was bugging "CreateFile_ERROR" at launch.

    This error appears normally when COM port is not set on COM1.
    So I rebooted my PC and retried INPA.
    I don't have an old car right now to test but INPA does not show battery ON anymore. I think it is good now, I have to try :)

    Thank you for your tool :)

    ReplyDelete
  9. It works great! Thank you very much!

    ReplyDelete
  10. i bought this Expresscard/34mm SYBA Single Serial Port Express Card [SY-EXP15026]
    and it only shows up as a usb to serial converter and has no hardware address :/

    let me know if anyone buys one expresscard that works.

    here is link to the cards i bought http://www.ebay.co.uk/itm/140684634772?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649#ht_1443wt_1185

    ReplyDelete
  11. Unfortunately this gives me the following error in Windows XP when trying to run the .exe:

    "The application failed to initialize properly (0xc0000135). Click on OK to terminate the application."

    ReplyDelete
  12. Google it
    http://www.realtyware.com/support/error-messages/the-application-failed-to-initialize-properly-0xc0000135/

    ReplyDelete
  13. GT1 v44 and INPA Working perfectly here with a good pc express card, I'm using:
    hp6530b with
    StarTech 1 Port Native ExpressCard RS232 Serial Adapter Card with 16950 UART

    Thank you for your work making this app and blog post.

    ReplyDelete
  14. Hi, may i ask which file your program actually modify?

    ReplyDelete
  15. Works great for me, thanks!

    ReplyDelete
  16. Hello
    I have problems with the adapter: OX16CF950

    ReplyDelete
  17. Very good tool, it work's perfect with expresscard with 16950 UART. Can you make a tool for usb-serial converter?

    ReplyDelete
  18. Work's very good with this-
    http://www.ebay.com/itm/PCMCIA-to-RS232-Serial-DB9-I-O-Card-Adapter-Notebook-PC-/130569374155?ssPageName=ADME:X:RTQ:US:1123

    ReplyDelete
  19. Hello, anyone done it with mini pcmcia serial?

    And thx for the neat little program, Jaroslaw!

    Kind regards Ola

    ReplyDelete
  20. I'm getting a "fail to access ADS driver" error after trying to run the patch - what can I do?

    ReplyDelete
  21. I have a CardBus to RS232 Serial adapter

    ReplyDelete
  22. I had success with this tool and:

    Thinkpad T400s
    Windows XP 32-bit Service Pack 3
    StarTech "Native Expresscard RS232" (EC1S952) Expresscard34 serial adapter
    INPA version 4.4.7 in ADS mode
    1998 M3 (CD93, 04/98 build date)

    ReplyDelete