A Linmodem is the Linux implementation of a "winmodem" (see disclaimer). These devices are 'less than' a modem in the sense that they depend on software to perform, to a greater or lesser extent, the functions traditionally handled by modem hardware. The rationale for this is, of course, that software is cheaper than hardware, and can be upgraded/expanded/improved without the use of screwdrivers (usually); however, for the modem to function at all, one requires software that can run on one's preferred operating system.
At the time of this writing, only a few winmodems will work under Linux:
Meanwhile, Rob Clark's site reports that Ambient may release Linux drivers for their MD563X HaM modems at http://www.ambient.com at some undetermined point in the future.
Open source tools for use with Lucent modems are under development at http://www.close.u-net.com/ltmodem.html and http://www.suse.cz/development/ltmodem/.
If you're already running Linux, you can obtain information about installed hardware using commands like:
cat /proc/pci
pnpdump
cardctl ident
The Device Manager under Windows can provide similar information, but it should be noted that a manufacturers will often simply put its brand name on a built-in modem, so this information may not be as useful as you might hope (e.g., what chipset does a "Compaq Internal 56k" modem have?).
If you know the precise name of your modem, you can try searching the large Linux Modem Compatibility database at Rob Clark's site. The color/letter code on the left side of the table will indicate if your modem is known to function or not under Linux. The code "LM" indicates a Linmodem, and the modem notes should indicate which driver you need. A "WM" means it's a winmodem, but no support is known to exist. Be careful not to assume that modems with similar names will contain the same chipsets, or will necessarily behave similarly whatsoever! Your WhizBang LX56 and your friend's WhizBang GT56 could have entirely different innards.
If you do not know the precise name of your modem, you can search based on the identification number of the modem: on every modem there must be printed a registration number, which may either be the board producer's designation, or, alternatively, an FCC registration number. An example photo of such an ID number on a modem board can be found at http://www.kcdata.com/~gromitkc/fcc1.jpg on Rob Clark's site. You can then proceed to use your web browser to search his table of modems and FCC ID's to obtain chipset/driver information. Alternatively, you can directly search the US Federal Communications Commission (FCC) database at http://www.fcc.gov/oet/fccid/. Read the directions carefully, and be careful not to confuse O (the letter) with 0 (the number), and other possible mixups.
You may not be able to obtain the FCC ID number if you have a laptop which you prefer not to open up, or are looking to buy a particular machine and the vendor has not been polite enough to provide you with the information nor a sample box for you to take apart and play with. In these cases, you have a few options:
There is a quick test that can be run from a floppy disk before you commit to buy the the just advertised WhizBang PC/Laptop. The intent is to use Linux itself to check whether the pre-installed modem is supported under Linux.
Most Linux
rescue floppies boot up a RAM disk, without "touching" the hard disks
unless/until specifically commanded to. A collection of the available
Linux modem drivers can be previously collected on a separate floppy.
Linux will not install a hardware dependent module in the kernel unless
the compatible hardware is present. Thus if lsmod
displays a successful
insertion after:
insmod /mnt/modem-driver1.oor at worst with forcing
insmod -f /mnt/modem-driver1.othere is a good chance that the modem will work under a full Linux installation. This insertion test can be repeated in turn with all the available modem-driverN.o, and hopefully one will succceed. For this test the DOS formatted floppy disk with drivers is first made accessible with:
mount /dev/fd0 -t msdos /mntand drivers can be listed with:
ls /mntThere is a caveat that this test may fail merely because of mismatches between kernel sources versions of the modem.o and the kernel being used in the test. Kernels on the Rescue disks should thus be version matched as closely as possible with the that of the modem.o. The Lucent ltmodem.o and Archtek esscom.o modules were compiled under kernel-sources-2.2.12, so, for their tests, the kernel on the Rescue floppy should best be replaced. The Rescue disk, made from the Debian resc1440.bin by rawrite.exe under DOS, carries instructions from substituting and properly activating its kernel. A suitable kernel has been compiled and is available at http://walbran.org/sean/linux/stodolsk/kern2212.zip along with a copy of the Debian rescue image at http://walbran.org/sean/linux/stodolsk/resc1440.bin . The Linmodem driver modules are listed above.
There is another caveat, however: I (Sean) tried this out with a stock Red Hat 6.2 distribution, and found that it gave me no complaints whatsoever when I insmod'ed the esscom.o module, despite the fact that I have no such hardware. You, therefore, probably want to be sure to use the Debian rescue disk image given by MarvS above, rather than one from another distribution.