Difference between revisions of "Serial Card (Syba)"
Line 29: | Line 29: | ||
Edit "/boot/grub/menu.lst" to add "8250.nr_uarts=8" at the end of the generic kernel line as shown below. | Edit "/boot/grub/menu.lst" to add "8250.nr_uarts=8" at the end of the generic kernel line as shown below. | ||
+ | |||
+ | title Ubuntu 8.10, kernel 2.6.27-17-generic | ||
+ | |||
+ | uuid f8bb6686-8ed8-4795-9e5f-739f36e69d8e | ||
+ | |||
+ | kernel /boot/vmlinuz-2.6.27-17-generic root=UUID=f8bb6686-8ed8-4795-9e5f-739f36e69d8e ro quiet splash 8250.nr_uarts=8 | ||
+ | |||
+ | initrd /boot/initrd.img-2.6.27-17-generic | ||
+ | |||
===Edit Moschip driver file=== | ===Edit Moschip driver file=== |
Revision as of 15:57, 11 October 2011
Version | Status | Date Updated | Updated By |
---|---|---|---|
710 | Unknown | N/A | N/A |
810 | applies | 10 Oct 2011 | twodogs |
1004 | Unknown | N/A | N/A |
1204 | Unknown | N/A | N/A |
1404 | Unknown | N/A | N/A |
Usage Information |
This tutorial covers how to install the Syba SY-PCI15001 expansion card. This costs about $35, has 6 serial ports, and uses the MOSCHIP MCS9865 chip (even though Newegg says it uses MCS9845 - wrong). Moschip doesn't have a stellar record with Linux, but the drivers have been recently updated and the price is right. Not exactly plug/play, but it shouldn't take too long to install by following this tutorial.
Overview
The Syba card ships with out-of-date drivers, so we'll use the latest Moschip drivers. Following the Moschip instructions will result in two working ports that LinuxMCE can't recognize (because they're ttyD instead of ttyS). The remaining four ttyS ports will be recognized, but they won't work with LMCE because the standard driver configuration is wrong (need to have hardware flow control enabled). Also, grub only sets up four serial ports, two of which are typically allotted to the motherboard. So, here is what to do...
- Edit grub configuration to allow 8 ports.
- Edit the Moschip driver file before compiling to permit hardware flow control.
- Compile the driver.
- Modify the LMCE script "ListSerialPorts.sh" to recognize the ttyD ports.
Installation
Physically install the card. The two ports on the card are the mcs9865-isa ports that show up as ttyD. The remaining four ttyS ports are on expansion brackets with short cables. Boot LMCE and go to the KDE desktop. Download the driver from Moschip and extract the compressed file.
http://www.asix.com.tw/products.php?op=pItemdetail&PItemID=125;74;111&PLine=74
Edit Grub
Bring up a terminal and open the text editor with root permissions "sudo kate".
Edit "/boot/grub/menu.lst" to add "8250.nr_uarts=8" at the end of the generic kernel line as shown below.
title Ubuntu 8.10, kernel 2.6.27-17-generic
uuid f8bb6686-8ed8-4795-9e5f-739f36e69d8e
kernel /boot/vmlinuz-2.6.27-17-generic root=UUID=f8bb6686-8ed8-4795-9e5f-739f36e69d8e ro quiet splash 8250.nr_uarts=8
initrd /boot/initrd.img-2.6.27-17-generic
Edit Moschip driver file
Edit one of the downloaded files "mcs9865.c"
For each line that says ".en_flow_control= 0," change the "0" to a "1"
Using the "find and replace" feature in Kate is the easiest way to do this.
Compile
In the terminal, change to the moschip driver directory (wherever you extracted it.)
Type "make" and enter. You'll see something about "lacks a cast" that looks scary, but is nothing to worry about.
Type "sudo make install" and enter
Get LMCE to recognize ttyD ports
Edit "usr/pluto/bin/ListSerialPorts.sh" with root permissions (sudo kate)
Change the two occurrences of "starex-serial" to "mcs9865-serial"
There is a Starex card that creates ttyD ports. We're stealing this subroutine for the Syba card.
Reboot
Enjoy your six new ports. The picture shows how the ports were numbered in my installation. For troubleshooting, open a terminal and type "lspci -v" to see info like interrupts and such. Type "dmesg | grep tty" to see the total number of tty ports on your system. If you have two computers, see if you can get them to talk. Use a null modem cable and install Gtkterm.