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