Of Modems and Winmodems
Time for a shocker. Device support under Linux is excellent.
No, really. We have been trained to assume that anything and everything just works with Windows but that isn't even remotely true. From time to time, even Windows users must visit hardware vendors' Web sites to download a driver. Furthermore, some hardware works with one version of Windows and not another so having all your hardware work under Windows is far from being a given (probably closer to a myth). When running Linux, the sheer number of things that will work "out of the box" without you having to search for and install drivers is nothing short of impressive and, quite frankly, beats your old OS hands down. No contest.
That doesn't mean all is rosy, however. Let me be brutally honest here. Some devices have been written to work with Windows and only Windows . . . or so it seems. One of the great things about this open source world is that developers are constantly working to write drivers to make it possible to run popular hardware, regardless of how helpful (or not) some hardware manufacturers are.
That said, if you haven't already bought that new gadget, there are a couple of things that you should do. For starters, if you are in the store looking at that new printer (or modem, for that matter), pull the salesperson aside and ask then whether it runs with Linux. If the person doesn't know (which is sometimes a problem but less so as time goes on), take a few minutes to check out the hardware compatibility guide on your Linux vendor's site.
As Linux gains in popularity, you’ll find that hardware vendors are increasingly motivated and interested in tapping into this ever-growing market. Those who don't may soon find they ignore Linux at their own peril. But I digress . . . I started out talking about modems.
Modems versus Winmodems
Winmodems are one of the very few minuses of running Linux. What people commonly call a winmodem is a modem designed to work only with Windows. Sometimes referred to as software or controllerless modems, they tend to be less expensive than controller-based modems. One way to avoid the whole problems surrounding this problem is to get yourself a good external modem. Of course, none of this whole winmodem problem applies if you also happen to be among the lucky ones using a cable modem connection or high-speed DSL access from your local phone company.
However, if your system came with a Winmodem, all is not lost. The Linux community is nothing if not resourceful. Even when manufacturers are slow to notice Linux users, the same isn't true the other way around. As more and more people run Linux, this becomes less and less of a problem. In time, hardware manufacturers may be building for Linux first and Windows second.
In the meantime, there are a couple of things you can and should do. The first place to look is your Linux distribution. Commercial Linux distributions sometimes provide drivers (SUSE and Mandrake come to mind). This usually involves purchasing the boxed sets as opposed to just downloading an image and burning your free distribution. If that doesn't bring you any satisfaction, check out the Linmodems.Org Web site at http://www.linmodems.org and you should be up and running shortly. Another great companion site is the "Winmodems are not modems" site at http://start.at/modem. Tons of information here including a fantastic list of what modems work, don't work, and everything in between.
Remember, many winmodems can be made into useful and productive members of Linux society with a visit to the right Web site. You'll find that most drivers are free for the price of a download. One exception is the Linuxant website which sells full featured drivers that support 56K fax modems for a small fee (roughly $15). That said, a free version of the drivers is available but these only provide speeds of 14.4 K. This is a good place to start anyhow since it provides you with the means of testing the drivers at no cost. For what it's worth, I've bought drivers from Linuxant and found them to work flawlessly.
On that note, here's my roundup of some of the more popular winmodems and the accompanying site to find the driver you need.
- Conexant Modems (HCF and HSF)
- Smart Link Modems
- Lucent Modems
- PCTel Modems
So, What Have I Got?
In order to get the right driver for that winmodem, it helps to know what kind of winmodem you have. Users running KDE need only open kinfocenter and select PCI in the sidebar menu. Your modem will be listed there (see the image below and click for a full size version).
If you don't have access to kinfocenter, there are lots of ways to find that out but the quickest is probably to open a shell prompt, also known as a terminal session. KDE users will start a konsole while GNOME users will run a gnome-terminal. Once the terminal window is open, type the following.
lspci | grep -i modem
Note that the vertical bar, referred to as a pipe symbol, is usually located above the Enter key.
On my notebook computer, this returns the following
00:08.0 Modem: ALi Corporation M5457 AC'97 Modem Controller
I can now use that information to track down the appropriate driver.
When I said that external modems won't be a problem, I was talking about the classic modem style, the one that plugs into your computer's comm (or serial) port. That is still true and given a choice, that is still your best bet.
These days, there's a new class of external modems and these plug into your computer's USB port. Before you spend the money on a new USB modem, you should check out that modem on the Linux USB Device Overview website.
As with anything else in this world, it makes sense to shop around beforehand. If you get a modem that is already guaranteed to work with Linux, you won't have to jump through hoops to get your hardware working. Buy an external serial modem or check with your Linux vendor (ie: RedHat, SUSE, Mandrake, etc) or the manufacturer of the modem itself (their website should have this information) to make sure that what you are buying will work with your Linux distribution.
If, however, you do find yourself with one of these cheap built-in modems and you desperately want it to work, remember what I said about the resourcefulness of the Linux community.