GM ALDL interface

Ludis Langens ludis at netcom.com
Wed Dec 10 17:49:15 GMT 1997


Frederic Breitwieser <frederic.breitwieser at mcione.com> wrote:
>I created a single-transister circuit to make the proper voltage
>adjustments (12v to 5v), however over the next day or to I'll have an
>opto-isolator circuit that's even better.

There are some ECM's where the ALDL 160 data swings between 0 and 5 volts.
Both of the ones I've looked at (2.5 L4 TBI and 2.8 V6 MPFI) do that.  If
your's goes to 12 volts, could you trace the ECM schematic for that output
back to a driver chip?  What series and pullup resistors does it use and
so on.  I'd like to add support for it in my ALDL interface.

Both of the previously mentioned ECMs have an open collector driver with a
1500 ohm pullup resistor to five volts.  They also have a series resistor
between the driver and the ECM output - 300 ohms in one ECM, 120 ohms in the
other.  This means that the output switches between 300 (or 120) ohms to
ground and 1800 (or 1620) ohms to five volts.

If you are building an opto-isolated interface without a power source on
the ECM side, you have to deal with the very limited current available
during the 'high' state.  When driving the LED portion of an opto-isolator,
there is a maximum of 1.6 mA available.  I found that most opto-isolators
won't work or are too slow at such low current levels:  low gain photo-
transistors essentially don't work at all; high gain phototransistors are
too slow (for the 160 Hz signal!); even the photodarlingtons are too slow.

Just about the only opto-isolator that worked is an H11L1 "Schmitt trigger".
(They are $0.99 each from Jameco.)  It is meant to work on exactly 1.6 mA!
It is also good for up to 1 megahertz, so it even works for the 8192 baud
signal.  Hook the LED side directly across the ALDL pins A and E with no
extra series resistor.  To handle the 8192 ECMs, I've placed an 820 ohm
resistor between the M and E pins, although this hasn't been tested yet.

The H11L1 output side has a unique pinout - it needs power and ground, in
addition to an OC output.  It can run with a supply voltage of 3 to 16 volts.
I'm running mine on power stolen from a Mac's serial TxD+ and TxD- signals.
This results in a 6 volt supply (actually +3 and -3.)  You can do something
similar on a PC.

>While there is nothing wrong with a
>complex circuit that converts to a serial port, this solution is just more
>software based.  There's merit for both actually.
>
>I prefer the software method only because I can shove the teeny-tiny
>interface into the cable end rather than having a box hanging off the
>notebook.

You can pipe the opto-isolator output to a parallel port and use a
software polling approach.  It is also just as easy to connect to an
RS232C serial port and use the UART hack I posted earlier.  An opto-isolator
works great as an RS232 voltage level shifter.  It also provides the correct
number of signal inversions for the 8192 mode (I think) or the UART hack.

PS: If you can't find an H11L1 locally, the NTE3090 is a direct replacement.

PPS: Has anyone found a source for the female side of the ALDL connector?
The pin spacing is non-standard.  I doubt that even a silicon valley junk
dealer will have anything that can be adapted.

                   unsigned long BinToBCD(unsigned long i) {unsigned long t;
Ludis Langens         return i ? (t = BinToBCD(i >> 1), (t << 1) + (i & 1) + 
ludis at netcom.com                 (t + 858993459 >> 2 & 572662306) * 3) : 0;}



More information about the Diy_efi mailing list