Personal tools
HylaFAX The world's most advanced open source fax server

Cheap Class1 Modems

This page hasn't been updated in eight years so I thought I'd take some time go into a bit of detail on dial-up modems (at a broader level, the complicated answer, and finally an easy solution). First a disclaimer. I'm the CEO @ ThinkPenguin and my company is focused on selling, supporting, and bringing properly supported free software friendly hardware to the GNU/Linux world. That said I've got a bit of solid and up-to-date information on the topic of dial-up modems on GNU/Linux.

Here are the problems people are currently encountering with random "Linux supported" dial-up modems (including those sold by companies like Zoom):

1. The chipsets don't match whats advertised 2. The manufacturer doesn't have correct or up to date information 3. The modem works with a proprietary driver on one particular and ancient version of Redhat Linux, SUSE, etc 4. The modem's ID isn't included in the mainline kernel driver, and as such doesn't work despite there being a driver and support for the chipset 5. Model numbers don't equal chipsets which means what some guy on the internet said would work doesn't actually work because the chipset has changed (and the chipset and ID are what matter)

The best thing to do is to buy a USB 'hardware' dial-up modem which isn't dependent on proprietary software (ie devices conforming to the Communications Device Class (CDC) will do). Then you can use the cdc_acm driver in the mainline kernel and it won't matter what distribution or version of GNU/Linux your using. That is the complicated answer.

Now I understand this is probably too complicated of an answer. In fact it is hardly an answer at all. Nobody advertises this information. So I'll give a shorter and easier to follow answer below.

First some background (skip this if you just want the solution). Years ago I worked for one of the major commercial GNU/Linux distributions. Humorously the company had the easiest to use distribution, but with one major flaw. It was extremely difficult to get hardware for and when you did you couldn't be confident that it would continue working with each new release. The problem was primarily the inclusion of proprietary drivers and firmware and the recommendation of hardware that tested as 'working' with a given release.

The problem with this is that you can't be confident that you'll be provided with updated proprietary drivers every time a new release is out. Nor can you be confident that bugs will be fixed since the community can't see the code. As a result of the problems I saw I concluded the only easy answer to the usability problem as far as hardware was concerned was to form a small division in the company to focus on selling properly supported hardware. It wouldn't take any more energy than maintaining a hardware database as they were already doing. Plus it would generate income for the company. The use of compatibility lists was clearly failing due to a lack of understanding about how Linux was developed. Humorous considering that was the companies core focus was GNU/Linux development.

In any event the long story short is they didn't do it and folded a few years later. In 2008 I graduated with a computer science degree and was still awed by the fact nobody understood the problem or how to fix it. I decided to help fix it by founding a company to do just this: sell free software friendly hardware.

So what is the easy solution? Stop buying hardware that is dependent on non-free software- or from companies that claim 'Linux support' who have no understanding of what is required to properly support GNU/Linux. Right now I have two sources I can recommend. One is and the other is my company The first is all the companies that have taken steps to certify hardware is free of proprietary software, and the other is the company I founded. We don't ship hardware that is dependent on proprietary drivers/firmware and as such is fully supportable by the community. We have the largest selection of such hardware including dial-up modems with fax support (and up-to-date documenation / support).

---much older information that may still be useful----

If you're looking for a cheap external serial class1 modem (~ $40/50) which is reliable for faxing, try one with the conexant (aka rockwell) chipset; we've been using these modems for a long time succesfully. When the modem we used went out of production I specifically researched for other conexant modems, ie:

  • creative modem blaster (
  • hamlet HV92KX (
  • actiontec 56k
  • zoom

More known is the brand the higher is the cost.

The Conexant HSF and HCF modems are WinModems?, and as such need a special driver to work under Linux. Until recently a free (as in beer) driver was available for Conexant modems under Linux, but this has now been withdrawn. Having bought your Conexant modem you have to pay an extra $14.95 for a closed source driver. The build system worked OK for me (but the install script did not work on my Debian Sarge system, but the .debs did ) I felt this was a little bit unfortunate to have to pay more money, but the build was simple and it seems to work, so maybe $5 on ebay for the modem and $14.95 for the driver wasn;t such a bad deal after all :) The drivers are on If you are happy with a closed-source driver, that where to go.

Since our distributor had hamlet and it was one of the cheapest (being a less known brand) we went for them. However all of them should be equal as far as faxing is concerned since chipset is the same.

Specifically ask for chipset type, and pay attention to model names, often they have slightly different models which look similar but have completely different chipsets inside; they also change chipset without changing model name.

Latest conexant also do class2 faxing, but class1 + HylaFAX >= 4.2beta give you more features (ECM, 2D-MMR, etc.)

This page was last edited on 20 August 2014, at 06:50.

Powered by MediaWiki
Attribution-ShareAlike 2.5

Project hosted by iFAX Solutions