Terminal Linux – Puerto Paralelo y Serial

Terminales Serie COMO
Marc Malagelada Duch marc@hades.udg.es
Maquetador Linuxdoc-SGML: Antonio Ismael Olea González,
olea@poboxes.com 2:345/108.9@fidonet.org
v2.0 13 Septiembre 96

Todo sobre la instalación y configuración de terminales en sistemas
Linux, desde diagramas y técnicas de soldadura de los cables, hasta
los detalles de configuración del hardware y software.
______________________________________________________________________

Índice General:

1. Introducción

2. Hardware

2.1. Puertos serie

2.1.1. Puerto serie DB9

2.1.2. Puerto serie DB25

3. Cableado

3.1. Cables NULL MÓDEM

3.1.1. NULL MÓDEM de 3 hilos

3.1.2. NULL MÓDEM de 3 hilos con protocolo por hardware emulado

3.1.3. NULL MÓDEM de 7 hilos con protocolo por hardware

3.2. Construcción física del cable

3.2.1. Listado de las patillas

3.2.2. Localización física de las patillas en un DB9

3.2.3. Localización física de las patillas de un DB25

3.2.4. Soldar-Como

3.2.5. Ejemplos de cables: DB25-DB25

3.2.6. Ejemplos de Cables: DB9-DB9

3.2.7. Ejemplos de cables: DB25-DB9 o DB9-DB25

3.3. Compra del cable ya hecho

3.3.1. Cables NULL-MÓDEM

3.3.2. Solución con cajitas NULL-MÓDEM y cable de módem

3.4. Conectores DIGITAL VT320 y 420

4. Configuración del software

4.1. Linux

4.2. El terminal.

4.3. Afinando Linux para la conexión

4.3.1. Explicación de la línea del inittab

4.3.2. Parámetros de agetty

4.4. Afinando el terminal

4.5. Solución a posibles problemas

4.5.1. Comprobación del cable

4.5.2. El cable funciona pero Linux no.

5. Contacto

5.1. Agradecimientos

6. Anexo: El INSFLUG
______________________________________________________________________

1. Introducción

Creo que conectar un terminal a un Linux es una de las experiencias
más bonitas que se pueden hacer para ver cómo tu PC monousuario se
convierte en una auténtica estación de trabajo multiusuario, además de
poder aprovechar tu viejo PC-XT o PC-AT para terminal.

Lo que hace falta es un PC con Linux, que supongo que ya tenéis, que
disponga de un puerto serie libre. Cuidadín cuidadín con esas máquinas
con COM3 y COM4 que suelen compartir IRQ con COM1 y COM2, de forma que
suelen traer problemas cuando se usa por ejemplo COM1 y COM3 o COM2 y
COM4.

También hace falta un terminal, que debe disponer de un puerto serie.
Lo mismo dicho antes para los COM3 y los COM4, es también aplicable
aquí si ese terminal va a ser vuestro viejo PC-XT o cualquier otro PC.

Igualmente le va a hacer falta un software de emulación de terminal
para poder cumplir su misión. Ese software puede ser el mismo software
que se usa para llamar por el módem, por ejemplo el TELIX, el
PROCOMM+, o el Terminal del Ventanucos. Si el terminal es realmente un
terminal, por ejemplo un DEC VT220 o similar, va a ser más fácil,
aunque no todo el mundo tiene un terminal en su casa, es más frecuente
encontrar un viejo 8088.

Para poder transmitir los datos hace falta un cable de los llamados
null-módem o de líneas cruzadas, habiéndolos de muchos tipos. El que
yo tengo montado es el mismo que el que recomienda el MSDOS para usar
el INTERLNK/INTERSVR, que además funciona de maravilla en Linux.

Por último, hacen falta unas pocas ganas de hacer pruebas.

2. Hardware

2.1. Puertos serie

Puertos serie hay de 2 tipos: Los DB25 y los DB9.

Los DB9 son los vulgarmente (e incorrectamente) conocidos como puertos
de mouse. Tienen 9 patillas y son «macho» es decir: que las patillas
son pinchos. En los conectores «hembra», las patillas son orificios
para que entren los pinchos. Cualquier semejanza con el sexo real está
hecha con toda la intencionalidad. :-)

2.1.1. Puerto serie DB9

A continuación os pongo un «gráfico» cutre para que sepáis que es lo
que hay que ver detrás del PC para localizar el puerto serie:

      .---------------.
      \   o o o o o   /
       \   o o o o   /
        `-----------'

Si localizáis alguno, que además tiene que ser macho (pinchos)
seguramente se trata de un puerto serie.

Si lo encontráis en su versión «hembra» (con orificios) se trata de el
adaptador de VÍDEO (CGA, Hércules, EGA o VGA-digital).

2.1.2. Puerto serie DB25

También podéis encontrar su versión de 25 pines:

        .-------------------------------.
        \   o o o o o o o o o o o o o   /
         \   o o o o o o o o o o o o   /
          `---------------------------'

Igualmente, las patillas tienen que ser pinchos. Si son orificios, se
trata de un puerto de impresora.

Debéis localizar uno de los dos en cada uno de los PCs (Linux y
terminal) Seguramente vais a encontrar que en alguno de ellos hay de
los dos. Para saber si se trata del COM1 o del COM2 lo más práctico es
conectar un ratón y cargar el driver para COM1 o para COM2 y ver si
funciona.

Las situaciones más normales son:

· Si sólo se encuentra uno de ellos, es el COM1;

· Si se encuentran los dos, normalmente el pequeño es el COM1 y el
otro es el COM2;

· Si hay 2 pequeños hay que descifrar cuál es el COM1 y cuál el COM2.
Esto sucede con equipos HP y COMPAQ, y suele venir indicado cuál es
el 1 y cuál es el 2. Si no, a por un ratón serie y hacer pruebas.

· ¡No los encuentro!: Mejor pasar un programa de información del PC
para saber si hay puertos serie disponibles. Uno de fácil
localización es el msd.exe del MSDOS6.2 (Teclear msd y pulsar la
C).

Una vez localizados los puertos serie de cada PC, voy a escribir
algunas recomendaciones:

· Mejor no utilizar el COM3 si se usa el COM1. Igualmente no usar el
COM4 si se usa el COM2 (– N. del Revisor:
Podremos usar dichos puertos siempre que:
a) Configuremos el hardware (por BIOS o por jumpers) para usar
alguna otra IRQ libre, y
b) Configuremos el Linux para que los inicialice al arrancar con el
comando setserial, ver Serie-Como.–)

· Cuidadín cuidadín con los tornillos que hay en los lados de los
conectores; hay que comprobar que están bien atornillados ya que de
lo contrario podría caer la tuerca interior dentro de la caja del
PC y provocar un desastre.

3. Cableado

3.1. Cables NULL MÓDEM

Bueno, voy a explicar qué son las líneas (patillas) del puerto serie:

GND
Es la masa. Como toda señal, tiene que estar referida a una
masa.

RX Señal de recepción. Son los datos que se reciben. (entrada)

TX Señal de transmisión. Por aquí salen los datos. (salida)

DTR
Data Terminal Ready. Indica que el terminal está encendido.
(salida)

DSR
Data Set Ready. Se ha establecido conexión. (entrada)

CTS
Clear To Send. El terminal está aceptando datos. (salida)

RTS
Request to Send. Aquí se introduce una señal cuando se pide un
dato. (in)

Esto que hay aquí no puedo decir que sea correcto del todo. Eso es lo
que me he deducido yo después de hojearme el manual del chip 8250
(UART) y leer alguna cosa sobre transmisiones RS232.

3.1.1. NULL MÓDEM de 3 hilos

El cable Null-módem más básico que existe es el siguiente:

       GND--------------------------------------------GND
       RX---------------------------------------------TX
       TX---------------------------------------------RX

Ese mismo ya funciona con el Linux. Sólo 3 cables. Para controlar el
flujo de datos se usa el protocolo por software XON/XOFF

3.1.2. NULL MÓDEM de 3 hilos con protocolo por hardware emulado

Otro cable null-módem es el siguiente:

GND --------------------------------------------------GND
RX----------------------------------------------------TX
TX----------------------------------------------------RX
RTS--------.                                 .--------RTS
            )                               (
CTS--------'                                 `--------CTS
DSR--------.                                 .--------DSR
            )                               (
DTR--------'                                 `--------DTR

Este emula el protocolo CTS/RTS y DSR/DTR por hardware, aunque sólo es
eso, una emulación. Para controlar el flujo de datos se sigue
recurriendo al protocolo software XON/XOFF.

3.1.3. NULL MÓDEM de 7 hilos con protocolo por hardware

       GND----------------------------------------GND
       RX-----------------------------------------TX
       TX-----------------------------------------RX
       RTS----------------------------------------CTS
       CTS----------------------------------------RTS
       DSR----------------------------------------DTR
       DTR----------------------------------------DSR

Este cable usa el protocolo CTS/RTS para controlar el flujo por
hardware e incluye las líneas DSR-DTR para saber si el terminal está
conectado. Sigue funcionando si se usa protocolo por software.

Yo creo que es el más flexible; además, ese mismo cable es el que se
usa para el INTERLNK/INTERSVR de MSDOS, o el LAPLINK (WIN o DOS). Es
el que tengo yo montado.

3.2. Construcción física del cable

3.2.1. Listado de las patillas

Las patillas físicas en los pines son las siguientes:

Segnal              Patilla en DB9           Patilla en DB25
--------------------------------------------------------------
GND:..................patilla 5................patilla 7
RX:...................patilla 2................patilla 3
TX:...................patilla 3................patilla 2
RTS:..................patilla 7................patilla 4
CTS:..................patilla 8................patilla 5
DSR:..................patilla 6................patilla 6
DTR:..................patilla 4................patilla 20

3.2.2. Localización física de las patillas en un DB9

Los conectores suelen llevar una chuleta numerando los pines en el
plástico que rodea a los susodichos, ese plástico que a veces es azul,
o a veces en negro o a veces es blanco. Vista desde el LADO DE FUERA
DEL PC, que también concuerda con la vista desde la CARA DE LAS
SOLDADURAS de un DB9 Hembra usado para construir el cable:

     .---------------.
     \   1 2 3 4 5   /
      \   6 7 8 9   /
       `-----------'

Vista desde el lado de fuera de un DB9 Hembra usado para construir el
cable:

     .---------------.
     \   5 4 3 2 1   /
      \   9 8 7 6   /
       `-----------'

3.2.3. Localización física de las patillas de un DB25

Vista desde el exterior del PC, que también concuerda con la vista
desde la cara de las soldaduras de un DB25 hembra usado para construir
el cable:

     .-----------------------------------------------.
     \   13  12  11  10  9  8  7  6  5  4  3  2  1   /
      \    25  24  23  22 21 20 19 18 17 16 15 14   /
       `-------------------------------------------'

Vista desde el lado de fuera de un DB25 hembra usado para construir el
cable:

       .-----------------------------------------------.
       \   1  2  3  4  5  6  7  8  9  10  11  12  13   /
        \   14 15 16 17 18 19 20 21 22  23  24  25    /
         `-------------------------------------------'

3.2.4. Soldar-Como

Hay que soldar, de manera que deberíais procuraros un poco de estaño
(metal para hacer la soldadura) y un pequeño soldador de más de 15W.

Recomendaciones para soldar:

Calentar con la punta del soldador los extremos de los cables a soldar
y mientras estén calientes, depositar en la punta un poco de estaño.
Parece que hacen falta 3 manos para hacer esa operación, una para
aguantar el cable, otra para el soldador y la tercera para aguantar el
estaño. Hacedlo de la siguiente manera:

1. Primero pelar las puntas de los cables de colores para dejar el
cobre al descubierto.

2. Después, con una mano aguantar el cable, y con la otra el soldador,
tras haber estañado previamente la punta del mismo. Para eliminar
el exceso de estaño de la punta, introducirla en un trozo de
esponja inservible humedecida.

3. Calentar la punta del cable y mientras se hace eso, acercar el
conjunto soldador-cable al hilo de estaño y fundir un poco.

4. Esperar a que el estaño fluya por la superficie del cable y
entonces apartar el soldador.

Esa operación se debe repetir para todos los cables de colores. No
tengáis miedo de quemar los cables con la temperatura del soldador.
Los cables deberían estar preparados.

Con esa operación estáis estañando el cable.

Hay que estañar también los pines de los conectores DB25 y/o DB9, que
es más fácil: con el conector apoyado encima de la mesa, y el soldador
en una mano, se toca el pin en el que deberá ir soldado un cable, y se
espera un momentito a que se caliente; con la otra mano se acerca el
estaño, que con la temperatura va a fundirse dejando la superficie del
pin a soldar forrada de estaño.

Por último, con el conector apoyado encima de la mesa, con una mano se
coge el soldador y con la otra se acerca el cable que debe ir soldado
en el pin, se ponen en contacto cable y pin (los dos bien estañados) y
se toca con el soldador alguna de las dos partes (mejor las dos). El
estaño se va a fundir y va a poner en contacto cable y pin. Entonces
se retira el soldador y se espera que el estaño se enfríe. No soplar
para acelerar el enfriamiento, ya que podría dar lugar a soldaduras
frías. Ya está hecha la soldadura.

Para los que quieran pasarse de listos y no quieran «perder el tiempo»
estañando las cosas, se van a dar cuenta que para soldar un cable a un
conector les harán falta 4 manos:

· Una para aguantar el soldador;

· Otra para aguantar el estaño;

· Otra para aguantar el cable;

· Y la última para aguantar el conector.

Así que no os lo recomiendo a no ser que dispongáis de 4 manos.

Ánimo que es MUY fácil; saber soldar os va a solucionar muchos
problemas, y además vais a poder solucionar muchas averías por culpa
de soldaduras rotas o defectuosas.

3.2.5. Ejemplos de cables: DB25-DB25

Conexión de un PC-Linux con conector DB25 y un terminal con conector
DB25.

Material necesario:

· 2 conectores DB25 hembra;

· 2 carcasas para DB25;

· Cable de 7 hilos (o más) con malla, comprar los metros necesarios.

La longitud del cable no debe sobrepasar los 30 metros.

Precio aproximado:

· 400 ptas para los 2 conectores con carcasa y

· 100 ptas el metro en Girona para el cable.

Conexiones:

    7 (GND) -----------------------------------7 (GND)
    2 (TX) ------------------------------------3 (RX)
    3 (RX) ------------------------------------2 (TX)
    5 (CTS) -----------------------------------4 (RTS)
    4 (RTS) -----------------------------------5 (CTS)
    6 (DSR) -----------------------------------20 (DTR)
    20 (DTR)-----------------------------------6 (DSR)
    CHASIS---------------(malla)---------------CHASIS

La malla del cable (tejido de cobre que envuelve los cablecillos
finos) debe conectarse al chasis (parte metálica) del conector.

La conexión de la malla establece el mismo nivel de potencial
(voltaje) entre los 2 PCs y evita que grandes cargas de electricidad
estática fluyan a través de las líneas y fundan el chip del puerto
serie. Además, se produce un efecto de apantallamiento, que evita que
señales electromagnéticas interfieran en la información que circula
por la línea.

Eso va sobre todo para la gente que en su casa no dispone de toma de
tierra o que tiene el PC sobre una superficie de moqueta o alfombra.
Si al tocar tu PC recibes calambres, asegúrate que la malla esta
conectada o seguro que vas a fundir el puerto serie de tu PC o
terminal.

Igual que en otro documento, también voy a decir que algunas veces he
oído que el chip del puerto serie explota, literalmente vuela por los
aires, al conectar un cable sin malla.

Por eso os recomiendo que CONECTÉIS SIEMPRE LA MALLA.

3.2.6. Ejemplos de Cables: DB9-DB9

Conexión de un PC-Linux con conector DB9 y un terminal con conector
DB9.

Material necesario:

· 2 conectores DB9 hembra;

· 2 Carcasas para DB9;

· Cable de 7 hilos (o más) con malla, comprar los metros necesarios.

La longitud del cable no debe sobrepasar los 30 metros.

Precio aproximado:

· 350 ptas para los 2 conectores con carcasa, y

· 100 ptas el metro en Girona para el cable.

Conexiones:

    5 (GND) -----------------------------------5 (GND)
    3 (TX) ------------------------------------2 (RX)
    2 (RX) ------------------------------------3 (TX)
    8 (CTS) -----------------------------------7 (RTS)
    7 (RTS) -----------------------------------8 (CTS)
    6 (DSR) -----------------------------------4 (DTR)
    4 (DTR)------------------------------------6 (DSR)
    CHASIS----------------(malla)--------------CHASIS

La malla del cable (tejido de cobre que envuelve los cablecillos
finos) debe conectarse al chasis (parte metálica) del conector.

La conexión de la malla establece el mismo nivel de potencial
(voltaje) entre los 2 PCs y evita que grandes cargas de electricidad
estática fluyan a través de las líneas y fundan el chip del puerto
serie. Además, se produce un efecto de apantallamiento, que evita que
señales electromagnéticas interfieran en la información que circula
por la línea.

Eso va sobre todo para la gente que en su casa no dispone de toma de
tierra o que tiene el PC sobre una superficie de moqueta o alfombra.
Si al tocar tu PC recibes calambres, asegúrate que la malla esta
conectada o seguro que vas a fundir el puerto serie de tu PC o
terminal.

Igual que en otro documento, también voy a decir que algunas veces he
oído que el chip del puerto serie explota, literalmente vuela por los
aires, al conectar un cable sin malla.

Por eso os recomiendo que CONECTÉIS SIEMPRE LA MALLA.

3.2.7. Ejemplos de cables: DB25-DB9 o DB9-DB25

Conexión de un PC-Linux con conector DB25 y un terminal con conector
DB9, o de un PC-Linux con conector DB9 y un terminal con conector
DB25. (es el mismo cable)

Material necesario:

· 1 conector DB9 hembra;

· 1 conector DB25 hembra;

· 1 carcasa para DB25;

· 1 carcasa para DB9;

· Cable de 7 hilos (o más) con malla, comprar los metros necesarios.

La longitud del cable no debe sobrepasar los 30 metros.

Precio aproximado:

· 375 ptas para los 2 conectores con carcasa, y

· 100 ptas el metro en Girona para el cable.

Conexiones:

       Conector DB9                              Conector DB25
         7 (GND) ----------------------------------7 (GND)
         3 (TX) -----------------------------------3 (RX)
         2 (RX) -----------------------------------2 (TX)
         8 (CTS) ----------------------------------4 (RTS)
         7 (RTS) ----------------------------------5 (CTS)
         6 (DSR) ----------------------------------20 (DTR)
         2 (DTR)-----------------------------------6 (DSR)
         CHASIS---------------(malla)--------------CHASIS

La malla del cable (tejido de cobre que envuelve los cablecillos
finos) debe conectarse al chasis (parte metálica) del conector.

La conexión de la malla establece el mismo nivel de potencial
(voltaje) entre los 2 PCs y evita que grandes cargas de electricidad
estática fluyan a través de las líneas y fundan el chip del puerto
serie. Además, se produce un efecto de apantallamiento, que evita que
señales electromagnéticas interfieran en la información que circula
por la línea.

Eso va sobre todo para la gente que en su casa no dispone de toma de
tierra o que tiene el PC sobre una superficie de moqueta o alfombra.
Si al tocar tu PC recibes calambres, asegúrate que la malla esta
conectada o seguro que vas a fundir el puerto serie de tu PC o
terminal.

Igual que en otro, documento también voy a decir que algunas veces he
oído que el chip del puerto serie explota, literalmente vuela por los
aires, al conectar un cable sin malla.

Por eso os recomiendo que CONECTÉIS SIEMPRE LA MALLA.

3.3. Compra del cable ya hecho

3.3.1. Cables NULL-MÓDEM

Hay que pedir un cable tipo NULL-MÓDEM en alguna tienda de electrónica
o de ordenadores. Alguna gente también los conoce como cables cruzados
o cables de LAPLINK.

Es bastante difícil encontrar un cable ya montado con la conexión de
los pines que nos conviene, aunque como este montaje es bastante
frecuente, es posible encontrarlo; no obstante, no os quejéis después
si no funciona, porque bajo la denominación «null-módem» hay un montón
de cables diferentes, como los que se comentaban en la sección «».

Si has ido a parar a esta sección porque no sabes soldar, te
recomiendo que lo pruebes, es bastante fácil. Léete las
recomendaciones, y si las cumples el éxito esta asegurado.

Además, los cables ya hechos valen bastante dinero.

Para el Linux os va a funcionar casi cualquier tipo de null-módem,
pero el INTERLNK/INTERSVR requiere la configuración exacta.

3.3.2. Solución con cajitas NULL-MÓDEM y cable de módem

Si no encontráis cables null-módem, podéis hacer lo siguiente:

Comprar un cable de módem (pin a pin) y luego insertar entre el PC y
uno de los cabos del cable de módem una caja de empalmes con
configuración NULL-MÓDEM.

Caja de empalmes:

             _____.-----------------------------.____
            !     !    --------------------     !    !
            !     !    !                  !     !    !
            !     !    !                  !     !    !
    DB25--  !     !    !    NULL-MODEM    !     !    !  --DB25
            !     !    !                  !     !    !
            !     !    !                  !     !    !
            !     !    --------------------     !    !
            `----.!_____________________________!.---'

Que se monta de la siguiente manera:

                caja
        ----    null                                   -------
            !   modem                                  !
        PC  !_.------._  _      cable de modem        _! PC
            !  nllmdm  || `==========================' !
            !-.______.-'`-'      (pin a pin)         `-!
         ___!                                          !------

Esa opción en bastante cara, ya que un cable de módem ya vale al menos
600 ptas, y si le añadimos el coste de la caja mull-módem (1000ptas),
te puede salir bastante caro. Te sigo recomendando que pruebes a hacer
la soldadura tú mismo.

3.4. Conectores DIGITAL VT320 y 420

El conector de DIGITAL EQUIPMENT CORPORATION (DEC) para la serie de
terminales VT320 y VT420 no es tan raro como parece.

Ese conector se llama DEC-423 MMJ (Modified Modular Jack) y se parece
a un RJ45 pero con la lengüeta descentrada (– Nota del maquetador
Los RJ45 son esos conectores transparentes de 8 hilos algo más gordos
que los RJ11 del teléfono, también llamados Giant Modular Jack,
empleados en los cables de red de par trenzado. :-)–)

El patillaje es el siguiente:

         DTR   TX    GND   GND   RX    DSR
     ----------------------------------------
     !   !_!   !_!   !_!   !_!   !_!   !_!   !
     !                                       !
     !                                       !
     !                                       !
     !                                       !
     !                                       !
     !                                       !
     !                                       !
     !                                       !
     !_____________________                  !
                           !                 !
                           !                 !
                           !_________________!

4. Configuración del software

4.1. Linux

Entra como superusuario y modifica el /etc/inittab de la siguiente
manera:

· Tienes que buscar la sección #Serial lines y añadir una línea como
la siguiente:

s2:45:respawn:/sbin/agetty -L 38400 ttyS1

En la que habrá que cambiar algunas cosas dependiendo del puerto serie
del PC-Linux en donde tengas el terminal conectado:

Si tienes el terminal en el COM1:
s1:45:respawn:/sbin/agetty -L 9600 ttyS0

Si tienes el terminal en el COM2:
s2:45:respawn:/sbin/agetty -L 9600 ttyS1

Si tienes el terminal en el COM3:
s3:45:respawn:/sbin/agetty -L 9600 ttyS2

Si tienes el terminal en COM4:
s4:45:respawn:/sbin/agetty -L 9600 ttyS3

· Una vez insertada esa línea en /etc/inittab, hay que hacer que el
proceso init relea el fichero inittab; para ello ejecutaremos la
orden:

init q

4.2. El terminal.

Cargar el MSDOS y entrar en el programa de emulación de terminales.

Debes elegir el tipo de terminal ANSI o, VT100, VT102, VT220, VT52.

Cualquiera de ellos debería funcionar como mínimo para comprobar que
la línea funciona.

Los parámetros del puerto serie deben ser 9600,N,8,1.

Apretando un par de ENTERs debería salir en la pantalla del terminal
el texto de LOGIN.

Si eso no funciona, algo está pasando en las líneas serie.

4.3. Afinando Linux para la conexión

Espero que hayáis llegado hasta aquí sin mucha dificultad.

4.3.1. Explicación de la línea del inittab

Aquí voy a explicar esa línea que hay que añadir al inittab.

Qué significa cada cosa:

s2:45:respawn:/sbin/agetty -L 9600 ttyS1
^  ^     ^            ^      ^      ^
|  |     |            |      |      |
|  |     |            |      |      `---/dev/ttyS1 es decir COM2:
|  |     |            |      |          es el dispositivo que 
|  |     |            |      |          soporta la conexión. 
|  |     |            |      |          Se puede cambiar por
|  |     |            |      |          ttyS0, ttyS2 o ttyS3.
|  |     |            |      |
|  |     |            |      |
|  |     |            |      `------Baudios a los que se efectúa
|  |     |            |        la conexión: puede ser uno de
|  |     |            |        los siguientes: 300, 600, 1200,
|  |     |            |        2400, 9600, 19200, 38400, 57600,
|  |     |            |        115200Si tienes una UART tipo 8250
|  |     |            |        o 16450 mejor que no pases de 9600
|  |     |            |        so pena de freir el PC a interrup-
|  |     |            |        ciones. En el terminal da igual
|  |     |            |        porque no tiene que hacer nada mas,
|  |     |            |        pero en el PC-Linux importa no
|  |     |            |        pasarse so pena de perder potencia
|  |     |            |        de multiproceso.
|  |     |            |        Recomiendo 19200 baudios.
|  |     |            |
|  |     |            |
|  |     |            `--Programa que va a controlar la 
|  |     |      comunicación por la parte Linux. Existen el 
|  |     |      controlador agetty, otro es el uugetty. 
|  |     |      También esta el getty Aqui hay que jugar un poco.
|  |     |      Yo uso agetty, que no quiere decir que sea el 
|  |     |      mejor, pero funciona.
|  |     |
|  |     `-----No puedo asegurar que eso sea cierto, pero parece
|  |         que sirve para que el proceso agetty se auto-restaure
|  |         cuando por alguna razón muera.
|  |
|  |
|  `-----No puedo asegurar que sea cierto, pero me parece que son 
|        los runlevels validos para que funcione ese terminal.
|
`-----Identificación. Cuando por ejemplo se hace 'top' salen los 
      procesos que estan funcionando en la maquina. Una de las 
      columnas del top es la del terminal donde se están 
      ejecutando. En los procesos ejecutados desde este terminal
      va a salir el 's2' o lo que se escriba aquí.

4.3.2. Parámetros de agetty

Fijáos que en la línea que estamos estudiando, le paso el parámetro -L
a agetty. Si hacéis man agetty podréis comprobar porqué hago eso:
estoy forzando a que la línea sea local, es decir, que no se haga la
la comprobación del pin de CD (Carrier Detect). Ese pin debería estar
conectado en el cable, pero no lo hago para mantener la compatibilidad
con el INTERLNK/INTERSVR de Microsoft MSDOS. Una vez más el Linux se
adapta a las necesidades del usuario. (¿¡Me suena esa frase a WIN95!?)

También podéis activar el protocolo de hardware RTS/CTS, que acelerará
un poco la comunicación. Para hacer eso necesitáis que el cable os
soporte esa función; además deberéis configurar el terminal o mejor
dicho, El software de terminal para que lo haga. Yo no lo tengo
habilitado. Para activar el protocolo por hardware CTS/RTS pasadle el
parámetro ‘-h’ a agetty, por ejemplo:

s2:45:respawn:/sbin/agetty -hL 9600 ttyS1

4.4. Afinando el terminal

Aquí más que un afinamiento os voy a explicar cómo instalar el Telix
3.22 para DOS para que haga de terminal.

· Primero tenéis que conseguir los archivos vía FTP o vía algún cdrom
de Shareware (– N. del R.
BBS–) . Yo voy a explicar la versión 3.22, que no es la última,
pero tampoco es vieja.

Los archivos se llaman:

· tlx322-1.zip

· tlx322-2.zip

· tlx322-3.zip

· tlx322-4.zip

De los cuales sólo vais a necesitar los dos primeros.

· Descomprimid los ZIPs tlx322-1.zip y tlx322-1.zip en un directorio.
Una vez descomprimidos, ejecutad ‘MODEMCFG.EXE’ y escoged alguno de
los de 1200 baudios (para que no quiera grabar la RAM del módem).
Seleccionas el puerto correspondiente y sales del programa.

· Si te falta espacio (o quieres tener el Telix en un disquete porque
no tienes disco duro o por comodidad) puedes cargarte el CS.EXE y
el CSS.EXE.

Yo tengo Telix322 + MSDOS6.2 + KERMIT.EXE en 1 disco de 720K.

· Ejecutar TELIX.EXE y una vez haya intentado sin resultado
inicializar el módem, pulsas ALT-O (opciones).

· Te vas a Modem and dialing y en el módem init string le pones un
par de control-M (se hace poniendo un acento circunflejo ^ y una
M).

· Te vas al Terminal options y pones lo pertinente en la opción A:
por ejemplo COM2, 19200, None, 8, 1.

· El el mismo menú de Terminal Options, la opción C debería estar en
ANSI o en VT102.

· En el mismo menú de Terminal Options, la opción I debería estar en:
Backspace key sends DEL.

· En el mismo menú de Terminal Options, vas a encontrar la opción K
que sirve para controlar el flujo por hardware. (agetty -h).

· Finalmente te vas a Write Setup to Disk.

· Sales del Telix: ALT-X

· Vuelves a entrar. Te debería salir el login en la pantalla.

4.5. Solución a posibles problemas

Siempre se pueden tener problemas, aunque conozco a bastante gente que
ha montado este cable y le ha funcionado.

Qué hacer si no funciona:

4.5.1. Comprobación del cable

Para probar el cable, coges los 2 PCs, les pones en marcha un Telix y
pulsas en ambos ALT-P.

Configura ambos PCs a una velocidad de 1200 baudios, N, 8,1.

Configura en cada PC el COM correspondiente.

Escribe desde un PC y tendrás que ver el texto en la pantalla del
otro.

Prueba desde ambos PCs. Puede ser que la comunicación sólo sea mono-
direccional por algún defecto del cable o del hardware.

Si el cable está bien construido y el hardware no falla eso debería ir
bien.

4.5.2. El cable funciona pero Linux no.

¿Qué velocidad escogiste? Prueba desde 9600 baudios a ver qué tal.

Puede ser que tengas problemas de velocidad. Ejecuta MSD en ambos
ordenadores para ver qué UARTs tienen. Seguramente el PC viejo tendrá
una 8250, por lo que no es recomendable pasar de 9600, aunque he
probado a 19200 y suele funcionar.

Nuestro terminal en hades.udg.es es un 286-12 con UART 8250 y le
podemos sacar 38400, aunque a veces falla.

¿Las velocidades son las mismas?

La velocidad que escojas en el Telix o el programa que utilices para
emular un terminal tiene que ser la misma que configures en la línea
del /etc/inittab.

¿Habilitaste algún protocolo por hardware?

Algunos puertos serie no llevan todas las líneas, así que aunque el
cable las tenga, no llegan hasta el Linux o el programa de terminal.
Prueba deshabilitando el protocolo por hardware, es decir, quitando el
parámetro ‘-h’ del agetty en /etc/inittab, y habilitando el protocolo
XON/XOFF por software en el programa de comunicaciones.

¿Estás seguro que pusiste ttyS0 para COM1, ttyS1 para COM2, ttyS2 para
COM3 y ttyS3 para COM4? Es muy fácil colarse, el ttySx es siempre uno
menos que el COMx.

Puede que tengas algún problema de IRQs. ¿Estás compartiendo IRQ con
algún otro dispositivo?

Haz pruebas con el minicom (clónico del Telix para Linux) para saber
si los datos al menos llegan.

Comprueba los majors y los minors de los puertos de comunicaciones:

/dev/ttyS0: crw-rw-rw-  X  USER GROUP  4,  64  xxx xx xx:xx ttyS0
/dev/ttyS1: crw-rw-rw-  X  USER GROUP  4,  65  xxx xx xx:xx ttyS1
/dev/ttyS2: crw-rw-rw-  X  USER GROUP  4,  66  xxx xx xx:xx ttyS2
/dev/ttyS3: crw-rw-rw-  X  USER GROUP  4,  67  xxx xx xx:xx ttyS3
                                       ^    ^
                                       |    |
                                       |    |
                                       |    `------MINOR
                                       `-----------MAJOR

5. Contacto

Alguna sugerencia, o preguntas, dudas, cuestiones varias, etc a
marc@hades.udg.es o también a

· mm6344@pluto.udg.es

· mm6344@speedy.udg.es

· marc@abu.udg.es

5.1. Agradecimientos

A Paco (paco@hades.udg.es) por poner la lista de Linux en marcha y por
la ayuda recibida, que fue él quien me enseñó a conectar terminales al
Linux.

6. Anexo: El INSFLUG

El INSFLUG forma parte del grupo internacional Linux Documentation
Project, encargándose de las traducciones al castellano de los Howtos
(Comos), así como la producción de documentos originales en aquellos
casos en los que no existe análogo en inglés.

En el INSFLUG se orienta preferentemente a la traducción de documentos
breves, como los COMOs y PUFs (Preguntas de Uso Frecuente, las FAQs.
:) ), etc.

Diríjase a la sede del INSFLUG para más información al respecto.

En la sede del INSFLUG encontrará siempre las últimas versiones de las
traducciones: www.insflug.org. Asegúrese de comprobar cuál es la
última versión disponible en el Insflug antes de bajar un documento de
un servidor réplica.

Se proporciona también una lista de los servidores réplica (mirror)
del Insflug más cercanos a Vd., e información relativa a otros
recursos en castellano.

Francisco José Montilla, pacopepe@insflug.org.

Los comentarios están cerrados.