I think that this document is appropriate for the mailing list
archive. I have written it from bits of information I still
have lying around from the project and from my recollection.
Please send corrections to firstname.lastname@example.org.
Cyclom 8Yo+ IDE multiport serial card
Wyse 60 terminal connected on /dev/ttyc00 (Port 1 on the
If your users can live without X-Windows, adding terminals to your
FreeBSD system is an affordable way to add users without building a
After reconfiguring and rebuilding the kernel, I installed the Cyclom
card using default settings. I followed the steps in the FreeBSD
Handbook (220.127.116.11. Configuring the cy driver) for configuring the cy
driver except for one major exception -- Port 1 on the Cyclom card is
ttyc00, not ttyc0. I asked the freebsd-questions mailing list about
how to properly cable a terminal room. The responses I got led me to
discover the Yost Serial Device Wiring Standard
(http://yost.com/computers/RJ45-serial/index.html). I assembled the
cabling and tools to follow this standard and then connected a port on
the Cyclom card to a Wyse terminal accordingly. The /etc/ttys file was
then edited and the Wyse terminal was configured for vt100 terminal
The list of vendors I used is listed below. All of these vendors sold
me good products in a prompt and professional manner.
I purchased the Cyclades Cyclom 8-Yo+ ISA (8-port) multiport serial
card from www.sellcom.com.
I purchased a Wyse 60 terminal from an Ebay auction. (The seller was
Midwest Computer Brokers in Iowa.)
For cabling between the Cyclom 8-Yo and the Wyse 60 terminal, I chose
to follow the Yost Serial Device Wiring Standard
I purchased a Paladin PC Cable-Check PC cable tester from the Yahoo
store. (The seller was www.web-tronics.com.)
I purchased RJ45 plugs, an RJ45 crimp tool and Cat 5 cable from
I purchased RJ45 F to DB25 M adapters from www.pccables.com.
I purchased DB25 F-to-F gender changers from www.stonecomputer.com.
I special-ordered AMP Half Tap Filled Tel-Splice Connectors (AMP P/N
553017-2) and the Tel-Splice Crimp Tool (AMP P/N 231839-1) from
I checked dmesg to see if there were other devices using IRQ 10 or
memory addresses 0xd4000-0xd5FFF, which are the defaults in the kernel
config file line for the Cyclom card (found in /sys/i386/conf/LINT and
shown below). I did not find any, so I left the IRQ and memory
location specified in the kernel config line alone.
I copied the following line from /sys/i386/conf/LINT into my local
kernel config file, also in /sys/i386/conf.
# Cyclades multi-port serial card (Cyclades 8-Yo+)
device cy0 at isa? tty irq 10 iomem 0xd4000 iosiz 0x2000
I confirmed in the Cyclom Y User's Guide pp.23-24 that the default dip
switch settings corresponded to the IO and memory parameters specified
in the kernel config. They did.
I then rebuilt the kernel according to the FreeBSD Handbook (5.2.
Building and Installing a Custom Kernel).
Cyclom Card Installation:
I then shut down the machine and installed the Cyclom 8-Yo+ card in an
available ISA slot without changing the dip switches. After rebooting
the system, I saw in dmesg that the kernel had properly detected the
cy0 irq 10 maddr 0xd4000 msize 8192 on isa
(8192 = 0x2000, so the kernel config line does indeed match the dmesg
Though I did not encounter an IRQ conflict or IO memory conflict, I
did note that the FreeBSD mailing list archive does contain articles
about what specifically some people did to remedy such conflicts.
My terminals can be up to 80 feet away from the server. I posted a
question to the freebsd-questions mailing list asking how real
terminal rooms are wired. I received some helpful hints which led me
to the Yost Serial Device Wiring Standard
(http://yost.com/computers/RJ45-serial/index.html). Instead of using
different kinds of cables for various serial communications
configurations, this standard always uses the same cable between any
two serial devices (DCE or DTE). The difference between DCE and DTE is
handled by constructing one custom adapter for DCE-s and another for
The cables I used were standard CAT5 cables (I had to be mindful of
how wires of a twisted pair were assigned to RJ45 plug pins, however.
The standard specifies what to do.) I constructed the cables using
CAT5 cables, RJ45 plugs, an RJ45 crimp tool and the standard.
The custom adapters were DB25 M to RJ45 F adapters, specially wired to
be either for DTE or for DCE and to conform to the standard. Instead
of soldering wires 4 and 5 of the RJ45 end together, I chose to splice
them using AMP Half Tap Filled Tel-Splice Connectors (AMP P/N
553017-2). (The corresponding crimp tool is the Tel-Splice Crimp Tool
(AMP P/N 231839-1).) A Cyclom serial port and a Wyse 60 terminal are
both DTE-s, so I made two Yost DTE adapters and plugged one into Port
1 of the serial card (with the help of a DB25 F-to-F gender changer)
and the other into the MODEM port on the Wyse 60 terminal.
The correct pin connections across two Yost DB25-to-RJ45 adapters,
when connected with a Yost cable for the
Cyclom-serial-port-to-Wyse-terminal (DTE-to-DTE, i.e., null-modem)
TD 2 -----\/------ 2
RD 3 -----/\------ 3
RTS 4 -----\/------ 4
CTS 5 -----/\------ 5
SG 7 ------------- 7
CD 8 ----\ /------ 8
DTR 20----/ \------ 20
I confirmed this with a cable tester.
It is my observation that buying cable, plugs, crimp tools, adapters,
splice connectors and even a cable tester pays for itself when
considering the difference in price between one PC and one terminal.
If you're installing multiple terminals, you will save a lot of money
over installing PC-s.
Configure the terminal:
Turn on the Wyse 60 terminal and type Shift-Setup to enter the
The following settings may be enough to get things working:
F1 DISP: COLUMNS=80, LINES=24
F2 GENERAL: PERSONALITY=VT 100, COM MODE=FULL DUPLEX,
DATA/PRINTER=MODEM/AUX, RCVD CR=CR, ENHANCE=ON,
END OF LINE WRAP=ON, AUTO SCRL=ON, SEND ACK=ON
F4 COMM: BAUD RATE=19200, DATA/STOP BITS=8/1, PARITY=NONE,
RCV HANDSHAKE=XON/XOFF, XMT HNDSHAKE=XON/XOFF,
The serial connection is made with the Modem port.
Configure the Cyclades Driver:
See the FreeBSD Handbook (18.104.22.168. Configuring the cy driver).
Configure the Serial Port:
See the FreeBSD Handbook (14.2.3. Terminal Configuration).
Here are the relevant lines out of my /etc/ttys file:
# Serial devices connected to Cyclades Cyclom 8-Yo+ (cy0) 8-port
# multiport serial card
ttyc00 "/usr/libexec/getty std.19200" vt100 on insecure
Once /etc/ttys is ready, there is no need to reboot. Just `kill -HUP
1' to force init to reread /etc/ttys. (The init process always has
process ID 1.)
I see the following message on the console after rebooting or
after `kill -HUP 1':
getty: tcgetattr /dev/ttyc0: Inappropriate ioctl for device
This is followed by:
init: getty repeating too quickly on port /dev/ttyc0, sleeping
Change /etc/ttys entry from
ttyc0 "/usr/libexec/getty std.19200" vt100 on insecure
ttyc00 "/usr/libexec/getty std.19200" vt100 on insecure
Peeter Pirn - email@example.com
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message