                    Pin, Signal, and Cabling Information

---------------------------------------------------------------------------

          Important information on our RS-422/485 implementation

   * Regarding Multidrop, we only support "4 wire" Master/Slave
     configurations as our buffers are always enabled. In other words, our
     transmit (TxD) pair is connected to all the slave device's receive
     (RxD) pairs, and the chain of slaves all have their TxD pairs
     connected to us and arbitrate normally for the "right to talk". In
     this configuration, our termination switch should only be enabled
     (down position) if we are at the end of the chain.

   * Regarding point-to-point (as in connection directly to an RS-422
     terminal, for example), the information in our hardware guide is
     correct, where you enable termination (termination switch in down
     position) when you have the RS-422 Enabled (switch in up position).
     This puts a 120 Ohm 1/2 Watt resistor across the receive pair.

   * NOTE: Do not be confused. Due to limitations in our design options,
     the RS-422 and RS-422 Termination switches have opposite positions for
     their respective "enabled" position.

   * NOTE: Even when a port is set to RS-422 mode, signals RTS (pin 1), DCD
     (pin 3), and CTS (pin 8) are still RS-232 single-ended signals. Ground
     also remains at pin 6.

---------------------------------------------------------------------------

RS-232 Definitions

TxD, or Transmit Data:
     It is an output for DTE devices and an input for DCE devices. This is
     the data channel from the DTE device to the DCE device.

RxD, or Receive Data:
     It is an input for DTE devices and an output for DCE devices. This is
     the data channel from the DCE device to the DTE device.

RTS, or Request To Send:
     It is an output for DTE devices and an input for DCE devices. This
     signal is typically used to gate flow from the DCE device to the DTE
     device. In other words, the workstation serial port would drop this
     signal to halt flow from the modem, and then later raise it to resume
     flow.

CTS, or Clear To Send:
     It is an input for DTE devices and an output for DCE devices. This
     signal typically is used to gate flow from the DTE device to the DCE
     device. In other words, a modem may drop this signal to halt flow from
     the workstation, and then later raise it to resume flow.

DSR, or Data Set Ready:
     It is an input for DTE devices and an output for DCE devices. This
     signal is not widely used in UNIX, except on some DEC machines, which
     will block on open if it is not true in some cases.

GND, or Signal Ground:
     Signal return for all signal lines.

DCD, or Data Carrier Detect:
     It is an input for DTE devices and an output for DCE devices. This
     signal is used to show that there is a valid connection between the
     DTE and DCE devices. It is typically used to block opens on a port
     before connections, and to generate UNIX "hang up" signals upon loss
     of a connection.

DTR, or Data Terminal Ready:
     It is an output for DTE devices and an input for DCE devices. This
     signal is typically used in UNIX to show that the port has been
     activated or "opened".



                   Sample DTE to DTE "null-modem" wirings
                   --------------------------------------

Our DB-25 connector:

We use the standard DTE pinout for the DB-25 connector, but we use female
connectors to avoid possible pin shorts via pens or paper clips and such.

This connector is used on products such as our SCSI Terminal Server
1616 (formerly ST-1616), SCSI Terminal Server 1002 (ST-1002+), and
SCSI Terminal Server 1008 (ST-1008+) modules.

                              +--------------------------+
                              | pin | signal | direction |
      Female DB-25 DTE        |--------------------------|
                              |  2  |  TxD   |    out    |
        ___________           |  3  |  RxD   |    in     |
       ( 13......1 )          |  4  |  RTS   |    out    |
        \ 25...14 /           |  5  |  CTS   |    in     |
         `-------'            |  6  |  DSR   |    in     |
                              |  7  |  GND   |    n/a    |
                              |  8  |  DCD   |    in     |
                              | 20  |  DTR   |    out    |
                              +--------------------------+

The DE-9 PC-AT style connector:

Many people ask about configuring our ports with DE-9 (PC-AT style)
connectors. For convenience, I've redocumented that pinout here, with an
ASCII representation of the connector and its pin numbering.

Below, I show a few sample wiring configurations and give examples for DB25
to DB25, and then also DB25 to our flavor of RJ45. Rather than clog up the
page with some redundancy, simply use the pin definitions here and
translate the DB25 to DB25 cable examples below accordingly. The signal
names are the same, and serve the same purpose. Only the pin numbers change
in the wiring diagram.

                            +--------------------------+
                            | pin | signal | direction |
  Male AT-style DE-9 DTE    |--------------------------|
                            |  1  |  DCD   |    in     |
        ___________         |  2  |  RxD   |    in     |
       ( 1.......5 )        |  3  |  TxD   |    out    |
        \ 6.....9 /         |  4  |  DTR   |    out    |
         `-------'          |  5  |  GND   |    n/a    |
                            |  6  |  DSR   |    in     |
                            |  7  |  RTS   |    out    |
                            |  8  |  CTS   |    in     |
                            |  9  |  RI    |    in     |
                            +--------------------------+

Our RJ-45 modular connector:

We use our own RJ-45 pin configuration, which is noted where appropriate
below. To avoid confusion, an ASCII representation of an RJ-45 receptacle
(the female connector like the ones used on our modules) is shown below
with pin numbering.

This connector is used on our EtherLite(R) module products and on most
of our SCSI Terminal Server(TM) module products.

RS-422/485:

                            +--------------------------+
         .---.              |     | RS-422 |           |
        _|   |_             | pin | signal | direction |
       |       |            |--------------------------|
 .-----~       ~-----.      |  1  |  RTS * |    out    |
 |                   |      |  2  |  RxD-  |    in     |
 |                   |      |  3  |  DCD * |    in     |
 |                   |      |  4  |  RxD+  |    in     |
 |                   |      |  5  |  TxD+  |    out    |
 |                   |      |  6  |  GND * |    n/a    |
 |    T-  T+R+  R-   |      |  7  |  TxD-  |    out    |
 +__|_|_|_|_|_|_|_|__+      |  8  |  CTS * |    in     |
    8 7 6 5 4 3 2 1         +--------------------------+

Notes:
- * These signals are always RS-232 (single-ended) even when the
  port is set to "RS-422 mode".
- For point-to-point connections, such as directly to a single terminal,
  you should use the following connection method:

                  .---------------------.
                  | CD RJ-45 | Terminal |
                  |----------+----------|
                  | RxD- (2) | TxD- (?) |
                  | RxD+ (4) | TxD+ (?) |
                  | TxD- (7) | RxD- (?) |
                  | TxD+ (5) | RxD+ (?) |
                  `---------------------'

RS-232:

                            +--------------------------+
         .---.              |     | RS-232 |           |
        _|   |_             | pin | signal | direction |
       |       |            |--------------------------|
 .-----~       ~-----.      |  1  |  RTS   |    out    |
 |                   |      |  2  |  DSR   |    in     |
 |                   |      |  3  |  DCD   |    in     |
 |                   |      |  4  |  RxD   |    in     |
 |                   |      |  5  |  TxD   |    out    |
 |                   |      |  6  |  GND   |    n/a    |
 |                   |      |  7  |  DTR   |    out    |
 +__|_|_|_|_|_|_|_|__+      |  8  |  CTS   |    in     |
    8 7 6 5 4 3 2 1         +--------------------------+

                          +----------------------------------+
                          | RJ-45 |  RJ-45    | DB-25 | DE-9 |
The standard DTE adapter: |  pin  |  signal   |  pin  | pin  |
------------------------- |----------------------------------|
To make an adapter that   |   1   | RTS (out) |   4   |  7   |
would simply give you     |   2   | DSR (in)  |   6   |  6   |
a standard DTE DB-25      |   3   | DCD (in)  |   8   |  1   |
for direct connect with   |   4   | RxD (in)  |   3   |  2   |
modems, use this          |   5   | TxD (out) |   2   |  3   |
configuration.            |   6   | GND (n/a) |   7   |  5   |
                          |   7   | DTR (out) |  20   |  4   |
                          |   8   | CTS (in)  |   5   |  8   |
                          +----------------------------------+

                          +--------------------------------------------+
                          | RJ-45 |  RJ-45    | DB25/DE9 |DB-25 | DE-9 |
The custom "DCE" adapter: |  pin  |  signal   |  signal  | pin  | pin  |
------------------------- |--------------------------------------------|
To make an adapter that   |   1   | RTS (out) | CTS (in) |  5   |  8   |
would allow you to        |   2   | DSR (in)  |  ------  | n/c  | n/c  |
directly connect to       |   3   | DCD (in)  | DTR (out)| 20   |  4   |
terminals and most        |   4   | RxD (in)  | TxD (out)|  2   |  3   |
printers... ONLY, use     |   5   | TxD (out) | RxD (in) |  3   |  2   |
this configuration.       |   6   | GND (n/a) | GND (n/a)|  7   |  5   |
                          |   7   | DTR (out) | DCD (in) |  8   |  1   |
                          |   8   | CTS (in)  | RTS (out)|  4   |  7   |
                          +--------------------------------------------+


NOTE: Make sure to use a STRAIGHT THROUGH, "ONE-to-ONE" RJ-45 cable!
      Most "telco" or "modular" cables are flipped from end to end, and
      will not work with our products.  This means pin 1 is connected
      to pin 8, pin 2 to pin 7, etc..  Sometimes, the "straight
      through" cables are also called "data" cables.  Just make sure
      pin 1 at both ends is on the same wire, as well as pin 2, etc..

NOTE: USE CAUTION WITH ETHERNET CABLES FOR RS-232 CONNECTIONS.  Ethernet,
      or "cat 4" or "cat 5" cable has twisted pairs, and is not designed
      for use with a single-ended interface such as RS-232.

      If you use this type of cable with the connectors used on EtherLite,
      modules or SCSI Terminal Server modules, among other things, 
      RxD (receive) and TxD (transmit) will be twisted together, and be 
      subject to crosstalk interference.  The net result is that reliability
      decreases as cable length and/or baud rates increase, which is contrary
      to what one might assume using "high quality cable".

      That being said, there is a way to use Cat 5 cable with modular
      RS-232, but you have to do some special wiring.  First, you have
      to know which wires are twist pairs.  One wire in each twisted
      pair (of four total) MUST BE GROUND.  This means you only have 4
      actual RS-232 signals you can run, but it will be very reliable.
      Most people opt to run RxD, TxD, DTR, and DCD.  This does
      everything except hardware flow control, which is fine for
      terminals and serial printers, which are the most typical devices
      to be at the other end of a long cable.

---------------------------------------------------------------------------

            The most popular FULL handshake null-modem adapter:

(DTE)           (DTE)
-----           -----
 SG  ----------- SG
 TxD ----------- RxD
 RxD ----------- TxD
 RTS ----------- CTS
 CTS ----------- RTS
 DSR --+
 DCD --+-------- DTR
 GND ----------- GND
 DTR --------+-- DSR
             +-- DCD

Example pin connections:
------------------------

DB-25 -> DB-25                CD RJ-45 -> DB-25
--------------                -----------------
    2 -> 3       TxD - RxD          5 -> 3
    3 -> 2       RxD - TxD          4 -> 2
    4 -> 5       RTS - CTS          1 -> 5
    5 -> 4       CTS - RTS          8 -> 4
    7 -> 7       GND - GND          6 -> 7
  6+8 -> 20     DSR+DCD - DTR       3 -> 20  (DCD - DTR)
   20 -> 6+8    DTR - DSR+DCD       7 -> 8   (DTR - DCD)
                                    2 -> n/c or pin 6 (see note below)

Notes:

   * Shield ground is typically optional.
   * TxD drives RxD.
   * RTS drives CTS.
   * DTR drives DSR and DCD.
   * GND must always be connected straight through.
   * Most times, on an RJ-45 connection, for ease of wiring, DSR is simply
     not tied to anything. It is very hard to short signals together on
     modular cables. However, if you are using a DEC machine, you may wish
     to find a way to also connect this signal to pin 20 (DTR) at the
     DB-25. DEC machines, unlike most other UNIX platforms, pay attention
     to the DSR signal.

---------------------------------------------------------------------------

             The most popular NO handshake null-modem adapter:

(DTE)           (DTE)
-----           -----
 SG) ----------- SG
 TxD ----------- RxD
 RxD ----------- TxD
 DCD --+     +-- DCD |
 DSR --+     +-- DSR |- modem control loopback
 DTR --+     +-- DTR |
 GND ----------- GND
 RTS --+     +-- CTS |
 CTS --+     +-- RTS |- hardware flow control loopback

Example pin connections:
------------------------

DB-25 -> DB-25           CD RJ-45 -> DB-25
--------------           -----------------
    2 -> 3     TxD - RxD       5 -> 3
    3 -> 2     RxD - TxD       4 -> 2
    6+8+20    DSR+DCD+DTR      2, 3, and 7 not connected. (see note below)
    7 -> 7     GND - GND       6 -> 7
    4+5         RTS+CTS        1 and 8 not connected. (see note below)



Notes:

   * The only lines that are actually connected from one device to the
     other are RxD, TxD, and GND.
   * Only software (XON/XOFF) flow control can be used.
   * CTS and RTS can be left open, but care must be taken to make sure one
     doesn't accidentally enable hardware flow control on either end.
   * DCD and DSR don't have to be connected to DTR, but care must be taken
     to use a non-blocking node, or an application that opens in
     non-blocking mode. Otherwise, if a blocking node is used, and you have
     chosen not to locally connect these signals together, the application
     will hang forever waiting for DCD, which will never go true.
   * On RJ-45 connectors, it is very difficult to locally connect pins
     together, so in the diagram above, the pins are simply not connected
     at all. However, per the note immediately above this one, you must
     take care to use a non-blocking device node when using this type of
     connector.

---------------------------------------------------------------------------

                    Possible Printer null-modem adapter

Some terminals are designed to use DTR and CTS for hardware flow control
instead of the more common RTS/CTS pairing. Some serial PRINTERS are also
designed this way. In these cases, the following wiring makes the most
sense:

(DTE)      (Terminal/Printer)
-----      ------------------
 SG  ------------- SG
 TxD ------------- RxD
 RxD ------------- TxD
 RTS ------------- CTS
 CTS ------------- DTR
 GND ------------- GND
 DSR --+
 DCD --+
 DTR --+

Example pin connections:
------------------------

DB-25 -> DB-25              CD RJ-45 -> DB-25
--------------              -----------------
     2 -> 3      TxD - RxD        5 -> 3
     3 -> 2      RxD - TxD        4 -> 2
     4 -> 5      RTS - CTS        1 -> 5
     5 -> 20     CTS - DTR        8 -> 20
     7 -> 7      GND - GND        6 -> 7
6+8+20 -> n/c   DSR+DCD+DTR       2 -> not connected. +
                                  3 -> not connected. +-(see note below)
                                  7 -> not connected. +

Notes:

   * The computer drives its own DCD and DSR with its DTR.
   * The computer drives the terminals CTS with its RTS.
   * The terminal drives the computer's CTS with its DTR.
   * On RJ-45 connectors, it is very difficult to locally connect pins
     together, so in the diagram above, the pins are simply not connected
     at all. However, per the note immediately above this one, you must
     take care to use a non-blocking device node when using this type of
     connector.
