ADS pre OBD connections to CARLOOP BMW

I have a 1994 BMW E32 740 which had a pre OBD connector for car coding. It has a round pin connector under the hood, which some people connect out thru a serial port.
Apparently serial connections use a data transfer protocol that is different from OBD.
What I would like to hear about is anyone who knows how to use this output to provide data to a CarLoop.

Because these cars are getting pretty old, most of the forums where these t tools are discussed are not very active
Two that come to mind are

http://www.interfaces4beemers.net/adsobd.html
and

http://openlabs.co/OSHW/Tiny-ADS-Interface-r2

I’m hoping someone in Carloop community can help me get my car connected.

@scrapsparcs, I have a table of protocols which goes back as far as 1996. It falls short by a couple of years to cover your case. However, then 1996 BMWs use ISO 9141 according to the table. This protocol is very similar to serial, but the hardware level is called K-Line. Could it be that your round pin connector works with K-Line or ISO 9141. This are just suggestions for your research.

It sounds like Carloop is not going to work for you, since it only implements CANbus at the hardware level. I have some development work to implement K-Line with some different hardware (a K-Line transceiver IC is the main difference) which is nicknamed CarloopRetro. If we are lucky, this could work with an adapter to your round pin connector.

Keep researching and let us know if you find some solid information.

Alan

Carloop Retro sounds very cool. I do think it is a K Line communication, it sounds to my uneducated brain like the same type of data as OBD only over a different connection protocol.

You may understand the attached better than I do, but I will keep the dialog going as I learn more.
ADS and the need for real serial ports.

The one question I receive frequently is “why doesn’t your interface work with a Serial to USB adapter?”

The truth is, it does work with a serial to USB adapter, BUT ONLY IN OBD MODE. Why is this?

If one looks at the history of ADS, one will find that it was designed in the good old DOS operating system and slow computers days. To eek out a modicum of speed a method was used called Direct Hardware Access [DHA]. So in case of the serial port, the software would directly talk to the computer address 0x3F8 and would listen for incoming characters by looking at Interrupt Request [IRQ] #4. IRQs are like semaphore flags, when a character is received by the computer, the flag is raised, in this case flag #4, and a program can watch for this and process the character.

So the old original software used by BMW, directly accesses a computer serial chip with the address 0X3F8 and uses IRQ 4 to show there is a character.

ADS also uses 2 lines to talk, called the K line and the L line. Which line to use is controlled by using one of the RS232 handshake lines such as DTR, etc. Strobe the handshake line high and communication is via K line and strobe it low and communications is via the L line. This is pretty well described in a document called ADS_DOCU.pdf that floats around on the internet.

USB, by definition, and in principle, did away with handshake lines, ergo, strobing, using the L line, became much more cumbersome. Now, not all modules use the L line, so, in a false sense of security, one finds that some modules talk just dandy in ADS mode, through the 20 pin ADS connector, and frustratingly, others won’t. Murphy’s Law will predict that the module u desperately want/need to talk to requires the L line to wake up.

OBD mode did away with the strobing and line switching and only uses the K line, so using a USB adapter is possible.

Thanks

Dan Whittet

@scrapsparcs, It appears to be a match with K-Line hardware, with the exception of the round BMW connection. The ADS connection information you provided shows the OBD connector using pins 7 & 15 for K & L. We have a match with K-Line there. ISO 9141-2, KWP2000 and KWP fast init are all versions of serial protocols. However, they do not match RS232 or any other common serial protocols like RS485. K-Line uses specific baud rates, which actually change and do not follow the 8N1 or any other typical protocol. Chances are that you use one of these common, but older formats. If that is the case, Carloop Retro is what you want. However, if your communications protocol is different, you would most likely still use the CarloopRetro hardware, but have to customize your firmware for ADS instead of using code for the 3 protocols above.