Next Previous Contents

1. Introduction

This covers conventional modems for PC's, mainly modems on the ISA bus (although much of this should also apply to the PCI bus). For modems on the PCMCIA bus see the PCMCIA-HOWTO: PCMCIA serial and modem devices.

1.1 Copyright, Trademarks, Disclaimer, & Credits

Copyright

Copyright (c) 1998 by David S. Lawyer and Greg Hankins. Please freely copy and distribute (sell or give away) this document. You may create derivative works and distribute them provided you:

I. For the case of minor changes and corrections where there exists a current maintainer:
Send your proposed changes to the current maintainer first. You may distribute (per II. below) only if the current maintainer neglects to incorporate your changes in a timely manner. If the changes are only to correct typos, you need not wait for a reply from the maintainer before you distribute.

II. In all other cases:

  1. Make a good faith effort to insure that a copy of the derivative work (including any master copy) gets on the Internet at a well-known (and mirrored) site for free downloading.
  2. If you change the license, license the work in the spirit of this license, or use GPL (Free Software Foundation).
  3. The major authors become the copyright owners (not to exceed 3). Minor contributions do not make you an author.
  4. Make a good faith effort to contact the maintainer (or principal copyright owners if there is no maintainer) to let them know what you have done. If the changes are extensive, then you should also attempt to make more such contacts (including prior to your project).
  5. Give full credit to significant previous authors and contributors although the credits section need not exceed 1% of the length of the document.

Trademarks

If certain words are trademarks, the context should make it clear to whom they belong. For example "MS Windows" (or just "Windows") implies that "Windows" belongs to Microsoft (MS). "Hayes" is a trademark of Microcomputer Products Inc. I use "winmodem" to mean any modem which requires MS-Windows and not in the trademark sense.

Disclaimer

Much of the info in this HOWTO was obtained from the previous Serial-HOWTO, the Internet, etc. and may be unreliable. While I haven't intentionally tried to mislead you, there are likely a number of errors in this document. Please let me know about them. Since this is free documentation, it should be obvious that neither I nor previous authors can be held legally responsible for any errors.

Credits

The following is only a rough approximation of how this document was created: About 1/3 of the material here was lifted directly from Serial-HOWTO v. 1.11 by Greg Hankins. mailto:gregh@cc.gatech.edu (with his permission). About another 1/3 was taken from that Serial-HOWTO and revised. The remaining 1/3 is newly created by the author: David S. Lawyer mailto:bf347@lafn.org.

1.2 Future Plans: You Can Help

An explanation of how to set up modems for dial-in is lacking in this version but should be included in the next. Please let me know of any errors in facts, opinions, logic, spelling, grammar, clarity, links, etc. But first, if the date is over a months old, check to see that you have the latest version. Please send me any other info that you think belongs in this document. The French "Modems-HOWTO" needs to be somehow merged with this document (but I don't know French).

1.3 New Versions of this HOWTO

New versions of this Modem-HOWTO come out every month or so since modem situation is rapidly changing (and since I'm still learning). Your problem might be solved in the latest version. They will be available to browse and/or download at LDP mirror sites. For a list of such sites see: http://sunsite.unc.edu/LDP/mirrors.html When you get to a a nearby mirror site, click on "Linux Documentation Project" (LDP) and then search for the 2nd occurrence of "HOWTO". Various formats are available. If you only want to quickly check the date of the latest version you may not want to use a mirror site so check out: http://sunsite.unc.edu/LDP/HOWTO/Modem-HOWTO.html.

1.4 What is a Modem ?

A modem is a device that lets one send digital signals over ordinary telephone lines not designed for digital signals. If telephone lines were all digital then you wouldn't need a modem. It permits your computer to connect to and communicate with the rest of the world. When you use a modem, you normally use a communication program or web browser (which includes such a program) to utilize the modem and dial-out on a telephone line. Advanced modem users can set things up so that others may phone in to them and use their computer. This is called "dial-in".

There are two basic types of modems for a PC: external and internal. The external sets on your desk outside the PC while the internal is not visible since it's inside the PC. The external modem plugs into a connector on the back of the PC known as a "serial port". The internal modem is a card that is inserted inside the computer and has an (invisible) serial port built into it. For a more detailed comparison see External vs. Internal. Thus when you get an internal modem, you also get a dedicated serial port (which can only be used with the modem and not with anything else such as another modem or a printer). In Linux, the serial ports are named ttyS0, ttyS1, etc. (corresponding respectively to COM1, COM2, etc. in Dos/Windows).

The serial port is not to be confused with the "Universal Serial Bus" (USB) which uses a special modular connector and may be used with modems in the future. See Modem & Serial Port Basics for more details on modems and serial ports.

1.5 Quick Install

External Modem

With a straight-thru or modem cable, connect the modem to an unused serial port on the PC. Make sure you know the name of the serial port: COM1 is ttyS0, COM2 is ttyS1. You may need to check the BIOS to determine this. Plug in the power cord to provide power to the modem. See All Modems for further instructions.

Internal Modems (on ISA bus)

(See PCI Modems for the PCI bus) If the modem says it will only work under MS Windows, you are out of luck. If you already have 2 serial ports, make this the 3rd serial port (ttyS2 = COM3). Find an unused IRQ number to use. An unused one is often IRQ5 for the 2nd parallel port or a sound card (which you may not have). Then set the jumpers (or the like) on the internal modem to the unused IRQ and I/O address 3E8 (ttyS2) .

"Or the like" (in the previous sentence) may be a bit tricky. If the modem is a Plug and Play (PnP) for the ISA bus, the equivalent probably can be done using the "isapnp" program which comes with "isapnptools". See "man isapnp". Another possible alternate way to set the IRQ and 3E8 is (if possible) to configure it under Windows. If you have a PnP BIOS, then configuring under Windows should put the configuration into the PnP BIOS so that it will be used at boot-time for Linux (provided you tell CMOS that you don't have a PnP operating system when you use Linux). For Windows 3.x use the ICU utility. There may even be a way to disable PnP using software that came with the modem.

Finally you must also find the file where "setserial" is run and add a line something like: "setserial /dev/ttyS2 irq5". See All Modems for further instructions.

All Modems

Plug the modem into a telephone line. Then start up a communication program such as minicom and go to the configuration menu for the serial port. Assign it a high baud rate a few times higher than the bit rate of your modem. See Speed Table for the "best" speeds to use. Tell it the full name of your serial port such as /dev/ttyS1. Set hardware flow control (RTS/CTS). Now you need to save these settings and exit minicom. Then start minicom again, type AT to see if your modem is there and responds with OK. Then go to the dial directory (or menu) and dial a number.


Next Previous Contents