Diacom, OBDII interface (was Re: Engine codes for '84 T/A)

SRavet at bangate.compaq.com SRavet at bangate.compaq.com
Fri Jan 26 00:41:51 GMT 1996


Markus Strobl <eusmsrt at exu.ericsson.se> Wrote:
| 
| > > > PS a company called DIACOM makes software that can read the serial 
data 
| and
| > > > print the engine diagnostic information to a IBM PC/AT via RS232 
for 
| $300.00
| > > > 800-888-4146 
| > > 
| > > Yes, but doesn't the diacom package contain some kind of interface 
box? I
| > > know GM PCMs use a weird speed, 8192. 
| > >
| >   Well, it acutally hooks up to the parallel port.  And the 
instructions
| > imply that the software has to initialize the hardware molded into the
| > specialized cable.  Have not gotten around to look at what goes in and 
| > out of this cable yet, since I no longer need to home-brew an ALDL 
interface.
| > The only reason I can think of for there to be hardware in the cable is
| > so that my 4.77 MHZ laptop can still read in 8192 baud data.  I imagine
| > a faster computer can just pole the parallel port and read in the data
| > that way.
| 
| Could you please explain more about this. I'm no wizard when it comes to
| parallel ports. What is meant by poling the port? And how do they adapt
| the parallel port to a serial interface? I bet the cable could be 
duplicated
| for a few bucks, and if someone can explain what it does, I'd be happy to 

| experiment on this.
|  
| Markus
| 

First off, the ALDL connector uses TTL positive logic voltage levels (5v=1, 
0v=0).  The serial port on the PC uses RS-232 voltage levels, (-13V=1, 
+13V=0).  So the serial line from the ALDL cannot just be connected 
directly to the serial port of the PC.  You could get a level 
inverter/shifter (MAX 232?) and produce the proper voltage levels for your 
serial port, but now you have the problem that 8192 is a non-standard baud 
rate.  You can program you PC to 8192 is 8228, which is probably close 
enough.  So that would work, except that earlier GM ECMs are 160 baud and 
some non-standard format that isn't RS-232.

So Diacom connects the ALDL serial port to a PC parallel port.  How does 
that work?  the logic voltage levels on some of the printer port pins can 
be read directly by software thru an I/O port.  Diacom implements a 
software UART.  The software polls the printer port until it sees the start 
bit, then it collects the other bits using the computers timer to tell when 
they are on the line.  This works without any hardware for any type of data 
stream, which is why they use it.  You plug in the VIN, and Diacom knows 
what type of baud rate to expect from that.

I hate posting stuff from old memory, but I can't find my J1850 (OBD-II) 
article. So here's what I remember about it:  it supports two data rates, I 
think 1MB/s and 2MB/s.  It is not even close to RS-232 regardless of the 
data rate, so it'll never hook to a serial port.  Harris (and maybe others) 
make a two chip set for it, one is the basic data framer, the other is an 
8152 clone with OBD-II intelligence built in.

Steve Ravet
sravet at bangate.compaq.com
Baby you're a genius when it comes to cooking up some chili sauce...



More information about the Diy_efi mailing list