Terminals and Multiport Serial Boards

Terminals and Multiport Serial Boards

The previous sections show you how to set up and use a modem in Linux for dialing out. The rest of this appendix briefly describes the steps involved in setting up terminals connected to the PC's serial port. You'll also find a list of multiport serial boards Linux supports.

You can learn more about connecting terminals to Linux systems by reading the Text-Terminal-HOWTO, available online at http://www.ibiblio.org/pub/Linux/docs/HOWTO/Text-Terminal-HOWTO.


Note that you might want to use other x86 PCs (especially older 486 and Pentium PCs) as terminals connected to your Linux system. To convert a PC to a terminal, all you need on the PC is a serial-communications package, such as Procomm Plus or Telix.

Setting up a Terminal on a Serial Port

To set up a terminal on a serial port, you have to set up a getty process, just as you do when you set up a dial-in modem. Follow these steps:

  1. Make sure that you use the correct serial cable to connect the terminal to the serial port. Most terminals need a null modem cable in which the TD (transmit data) and RD (receive data) signal lines are reversed in going from one end of the cable to the other. (See earlier sections of this chapter for further discussions of serial cables.)

  2. Set up the terminal's communication parameters. The exact steps depend on the terminal type.

  3. Log in as root and edit the /etc/inittab file, and add a line to start the agetty process on the line connected to the terminal. If you have a VT102-compatible terminal on the line ttyS1 (COM2), you might add the following line to your system's /etc/inittab:

    S1:23:respawn:/sbin/getty -L 9600 ttyS1 vt102

    This assumes that the terminal operates at a baud rate of 9,600. If the terminal is set to some other rate, change 9600 to that number.

  4. Force the init process to reexamine the /etc/inittab file, as follows:

    init q
  5. A login prompt should appear on the terminal's screen, and you should be able to log in using an existing user name.

Setting up Multiport Serial Boards in Linux

If you plan to support a small business with a Linux PC and dumb terminals (terminals are cheaper than complete PCs, although you can also use old PCs as terminals), you want more than two serial ports. With another serial board, the PC can support four serial ports. If you want more than four serial ports, you have to buy special serial I/O boards known as multiport serial boards. These boards typically support anywhere from 4 to 32 serial ports. The serial ports share one IRQ, but each port has a unique I/O address.


Many multiport serial boards use the 16450 or 16550A UARTs. When you buy a board, you may want to make sure t the UART is 16550A-compatible.

To add support for a specific multiport serial board, you have to add appropriate commands in the /etc/rc.serial file. That file is automatically executed by the /etc/rc .sysinit script as your Red Hat Linux system boots. For specific information on what to place in the /etc/rc.serial file, consult the multiport serial board's documentation or contact the vendor. The Linux kernel's serial port driver supports the following 16450 or 16550A UART-based multiport serial boards:

  • AST FourPort and clones (4 ports)

  • Accent Async-4 (4 ports)

  • Arnet Multiport-8 (8 ports)

  • Bell Technologies HUB6 (6 ports)

  • Boca BB-1004 (4 ports), BB-1008 (8 ports), BB-2016 (16 ports)

  • Boca IOAT66 (6 ports)

  • Boca 2by4 (four serial and two parallel ports)

  • Byte Runner

  • Computone ValuePort V4-ISA (AST FourPort-compatible)

  • Digi PC/8 (eight ports)

  • Dolphin

  • Globetek

  • GTEK BBS-550 (eight ports)

  • Hayes ESP

  • Longshine LCS-8880, Longshine LCS-8880+ (AST FourPort-compatible)

  • Moxa C104, Moxa C104+ (AST FourPort-compatible)

  • National Instruments NI-SERIAL

  • PC-COMM (four ports)

  • Sealevel Systems COMM-2 (two ports), COMM-4 (four ports), and COMM-8 (eight ports)

  • SIIG I/O Expander 2S IO1812 (four ports)

  • STB-4COM (four ports)

  • Twincom ACI/550

  • Usenet Serial Board II (four ports)

  • VScom (same driver as Byte Runner)

The Boca BB-1004 and BB-1008 boards do not support the Carrier Detect (CD) and Ring Indicator (RI) signals necessary to make dial-in modems work. Thus, you cannot use the BB-1004 and BB-1008 boards with dial-in modems.

Some multiport serial boards use special processors instead of the 16450 or 16550A UART. Table E-5 lists some intelligent multiport serial boards Red Hat Linux supports. It also shows the name of the driver module you must load to add support for a specific type of multiport serial board. These driver modules are located in the /lib/modules/VERSION/kernel/drivers/char directory of your Red Hat Linux system, VERSION being the Linux kernel version. Thus, for kernel version 2.4.20-2.48, these driver modules are in the /lib/modules/2.4.20-2.48/kernel/drivers/char directory.

Table E-5: Linux Drivers for Intelligent Multiport Serial Boards

Multiport Serial Board

Linux Driver Module

Computone IntelliPort II


Comtrol RocketPort


COSA or SRP synchronous serial card


Cyclades Cyclom-Y and Cyclades-Z series multiport serial boards


Digi International PC/Xe, PC/Xi, PC/Xr, and PC/Xem


Hayes ESP serial card


ISI series of cards by MultiTech


Microgate SyncLink ISA and PCI high-speed multiprotocol serial adapters


MOXA Intellio family of multiport serial cards


MOXA Smartio family of multiport serial cards




Specialix IO8+


Stallion Intelligent Multiport Serial Boards


Stallion Multiport Serial Driver


Winbond W83977AF Super I/O chip multiport boards



To learn more about setting up a multiport serial board, you may want to read the latest Serial-HOWTO document. To read the Serial-HOWTO document, use your Web browser to go to http://www.ibiblio.org/pub/Linux/docs/HOWTO/Serial-HOWTO.