Setting Up a Linux Modem
By Stephen Bucaro
Almost all modems manufactured today are software modems, usually referred to as
"winmodems". Even though we pay a lot for a winmodem, they are cheap to manufacture
because they use very little electronics. The functions that should be performed in
hardware are emulated by software. This places an extra processing burden on your
computer's CPU. Winmodems will not work with Linux unless you can locate a special
A hardware modem contains its own on-board controller and DSP circuits. This takes a
major processing load off your computer's CPU. A hardware modem will make your dial-up
connection work much faster. Hardware modems are difficult to find and very expensive.
Hardware modems will work with Linux.
Some hardware modems known to work with Linux:
Zoom 2920 Fax Modem 56K PCI $76.00
Actiontec PCI5601201CW 56K Voice Faxmodem PCI $75.00
ActionTec PCIV921201CW Call Waiting Internal V.90/V.92 Modem $59.99
On rare occasions Linux will locate and configure your modem during installation,
but most likely you will have to configure it manually. If your computer is
plug-and-play (PnP) compatible, the BIOS should detect the modem on power-up and
allocate resources to it. To determine which resources were allocated to the modem,
log in as root and click on the Terminal emulation program button on the task
bar. In the terminal window that appears, type the following command:
In the screen output that results, locate the entry for your modem. Below is a possible example:
Bus 0, device 9, function 0:
Unknown class: Lucent (ex-AT&T) Microelectronics
Unknown device (rev 0).
Vendor id=11c1. Device id=480.
Medium devsel. Fast back-to-back capable. IRQ 11
Master Capable. No bursts. Min Gnt=252. Max Lat=14
Non-prefetchable 32 bit memory at 0x80100000 [0x8010000].
I/O at 0xdc00 [0xdc01]
I/O at 0xe000[0xe001]
I/O at 0xe400[0xe401]
Record the IRQ number and the first I/O address.
Linux uses a device file to communicate with a modem. Device files are located in
the /dev directory. A modem must use one of the serial ports (/dev/ttyS0 - /dev/ttyS3).
First determine which serial port to use for the modem. You should use ttyS1 because
ttyS0 is usually assigned to a back panel connector.