THERE WAS A TIME, a decade ago, when the screeching and whistling of a dialup modem connection tone was instantly recognizable and synonymous with getting online to the Internet. TV shows and movies used the sound during scenes and most people could tell right away what it was.
Today, that ship has sailed, the majority of Internet users (in the United States, anyway) no longer use a dialup modem to get connected. As one wag put it, “Nobody ever complained about having ‘too much’
bandwidth” And compared to DSL, Cable, Fiber, or even stealing your neighbors Wifi signal, 56k dialup is slow as molasses in January. As a result, many technicians today are unfamiliar with modem peculiarities and some may have never set one up on a computer, or their setup experience may be limited to “I took it out of the box and plugged it in, but I don’t how how to make it work”
However, modems are not dead, any more than fax machines are dead. USR, the company formerly known as US Robotics, still makes plenty of money on them. Modems still fill a niche for dialup Internet in rural areas that are not serviced by broadband, (and probably never will be), for older NetZero users
on fixed incomes who cannot afford broadband and for medical reasons must have a land phone line, for industrial applications like Point of Sale (POS) systems, & SCADA communications, for office applications like CallerID loggers, Voice Response software (push 1 for sales, push 2 for support), and automated cell phone/pager paging notification systems, and for retail applications like credit card terminal software in locations where Internet connectivity is unreliable or nonexistent.
And of course, despite email, many industries still rely on faxes, particularly industries dealing with contracts, and modems still find a use on PCs for sending and receiving faxes.
So, there is still a small need for modems to be used on even brand new computer installations, and so they are still being sold new. But, the secondary market is awash with older dialup modems that their users no longer need for Internet access, and there are a lot of people who would like to plug in their older, still functional, dialup modem to a new PC and use them for sending the occasional fax. But that is when they run into trouble. Brand new Windows 7 and Windows 8 systems are 64bit, (and many lack COM port hardware) and virtually all older modems were not released with 64bit Windows “drivers” Or, were they? In the case of external serial port modems – probably YES! It just takes some tweaking to get them to work (and perhaps a USB-to-serial port adapter). See my companion article on updating INF files for Windows 7.
I’ll start with a bit of modem hardware history. The height of the dialup modem was the decade from 2000-2010. Then it declined and the early 2010s saw a huge jump of chip makers out of the modem business followed by consolidation of modem manufacturers. Today, the largest remaining producers of modems are LSI which produces software modem chips that others use to make “white box” (unbranded) modems and cards (LSI was just acquired by Avago Technologies) and US Robotics which renamed itself USR and which is known for it’s external modems. The LSI 92EX chips are commonly used on PCI Express cards that have been shipped with “home user” systems, and a variety of embedded uses. The LSI 92U2 chips are common in USB modems. These Softmodems trace their heritage from LSI through Agere Systems through Lucent Technologies. USR’s hardware serial 56k modems, on the other hand, have remained very similar for the last 15 years, (other than newer components) and are divided between the top-of-the-line Courier business modem and the cost-reduced Sportster Faxmodem.
While the vast majority of PC modems today in new desktop PC’s are internal, a big advantage of an external hardware modem is that if an incoming fax locks up the modem, the modem can be reset without power-cycling the PC. External modems that are connected to the PC with a serial cable are known as Hardware Dialup Modems. Another advantage of hardware modems are that they use fewer main CPU cycles. And in rural areas where the phone lines are marginal, external modems have visible lights that are helpful for diagnosing problems.
External modems (except for USB modems) require serial COM ports on the PC. While many new PCs no
longer have them, serial ports are easy to add with a card. But some new PC’s (such as the all-in-ones from Dell) still do have serial ports.
Softmodems/Winmodems
Today, all internal modems are Softmodems, AKA Winmodems. Winmodems encompass just about all USB dialup modems, most if not all internal PCI modems, virtually all PCIe modems, and virtually all internal modems in laptops. A Softmodem is so named because it is partially implemented in a software driver. What part of it is, is dependent on whether the modem is a hardware controller (HCF) or a software controller (HSF) winmodem. (Certain USB modems ARE hardware modems such as the USR modem model 5637, these essentially emulate a serial port in the operating system)
Softmodems/Windmodems can be supplied with either a 32 bit driver or both a 32 bit and a 64 bit driver. Most older Windmodems only come with a 32 bit driver and are thus useless on modern 64 bit versions of Windows. An example of one of these is the Apple G4 USB modem (which implements a Motorola 56K modem chip). All Winmodems are Plug and Play (PnP). A Winmodem with only a 32 bit driver CANNOT be used on a 64bit operating system like Windows 7 64bit. Note that a Winmodem with only a 32 bit driver CAN be used on the 32bit version of Windows 7, although when adding the driver you will get a warning that the driver has not been tested with Windows 7 – but it will usually work. The 32bit version of Windows 7 also comes with many generic Winmodem drivers, that often will work with older Winmodems. The 32bit version of Windows 7 also will work with most older flatbed scanners (which also only came with 32 bit TWAIN drivers) so the 32bit Windows 7 version is definitely recommended if you have older peripherals and software which you depend on and you do not want to replace.
In general, Softmodems only have drivers for Windows, although http://www.linuxant.com and http://linmodems.org have Softmodem drivers (binary only) for some Linux distributions (mainly all are compiled for the 2.6.x kernels like Ubuntu 10.04 LTS and earlier, and RedHat 12, for example, and most stop working after the 3.2.x kernel series) Unlike Windows, Linux does permit some 32 bit drivers to run on 64 bit Linux. Some vendors (Like US Robotics) are selling USB dialup modems (USR5637 56K USB Faxmodem) that work with the Linux standard USB Communications driver included in Linux.
Winmodems are generally considered by their manufacturers to be throwaway peripherals. In other words, use them until you have to upgrade to a newer machine or newer operating system then throw them away. External hardware serial port modems are generally what people select for long term installations. That is why Winmodems are so inexpensive and manufacturers are not interested in supplying drivers for newer operating systems.
Unimodem/V and INF files
In Windows, all modems use INF files that describe the modem to a driver in the operating system called the Unimodem driver. Hardware serial port modems only use the INF file, software Winmodems use the INF file plus a hardware driver that works in conjunction with Unimodem. Older hardware modems may only have an INF file that has the defines for a 32bit operating system, if you have one of these see our companion article on updating modem INF files. Don’t waste time with the few “Generic” modem entries in Windows, these simply don’t work as they lack hardware flow control, and aren’t even that useful even if you are using a program that directly accesses the serial port and does it’s own modem programming (such as TeraTerm, or an old version of Telemate running in DosBox) Newer hardware modems are also PnP and with some of them the INF file is in Windows or in the Microsoft online driver database so the user does not have to go to the trouble of supplying the INF file.
Terminal programs under Windows 7
When troubleshooting modem or phone line issues it is very useful to have a terminal program that allows you to type commands to the modem. Under Windows XP, Microsoft included Hyperterminal which was a limited version of the commercial program. But this is NOT included with Windows 7. You will need to download something. A very useful program to use for testing is MTTY written by Microsoft. The source is located here and here and the compiled binary of the program is available here. If you have to login to the above, use userID guest password guest.
Mtty really isn’t a terminal emulation program as much as it is a serial port testing program, it allows you to set many specific flow control parameters and other serial port parameters as well as doing the dialing with ATDT commands and it works fine under Win 7. It also understands how to talk directly to virtual COM ports, so if you have a USB-to-serial adapter it will work with that. In particular since it brings all the RS232 pin statuses out it is particularly useful with USB to Serial cables. And it does not require the modem to be installed, so if your testing with a device on a serial port that has no INF file and/or is not plug and play (like an old external modem) you can send characters to the modem. It also has a scrollback buffer.
Another program is the free Hyperterminal program that came with Windows XP. This program actuates the Windows Dialer software in Windows which can be handy for testing. It is not supplied with Windows 7 but if you want to continue to run it under Windows 7, here is how to get that version of HyperTerminal on to Windows 7 (32 or 64-bit).
On the Windows 7 32-bit box make a new folder under C:\Program Files\HyperTerminal and for 64-bit make a new folder C:\Program Files (x86)\HyperTerminal
Find a Windows XP box and copy the following 3 files to the folder that was just created on the Windows 7 box:
C:\Program Files\Windows NT\hypertrm.exe
C:\WINDOWS\system32\hypertrm.dll
C:\WINDOWS\Help\hypertrm.chm
Now just run hypertrm.exe. Note that the license to use this software is the XP license, so you must have XP licensed for your PC to legally use it. Most corporations have Windows volume licenses that cover downgrading so they can legally run this program.
If you want to have HyperTerminal on your Start Menu just create a shortcut to hyperterm.exe and put it in C:\ProgramData\Microsoft\Windows\Start Menu\Programs and when you go to All Programs under the Start Menu, HyperTerminal will be there.
If you don’t have a Windows XP system handy, and you’re running the software as a home user (you’re not in a corporation) you can download and install Hyperterminal Private Edition version 6.3. This is the last “free” version. A web page explaining how to do that is here. Download it from the Internet Archive.
Note that you will need to install a program for “old style” windows Help, which you can get here
Modem Diagnostics under Windows 7
Last part I’ll talk about in this article is modem diagnostics. While you can use the terminal program to access the modem directly to get some diagnostics information, to test that the correct INF file is installed and the modem is fully accessible to the Windows Unimodem (required for faxing) you will need to become familiar with accessing the logging that Windows provides for a modem and creates in C:\windows\modemlogs.
When you install a modem in Windows 7 and go to Control Panel, Phone & Modem, Modems, Properties, Diagnostics, you MAY notice that under Logging, the Append to Log is greyed out. This seems to be dependent on the modem INF file in use. Like XP, under Windows 7, modem logging is ALWAYS on. The logs are accessed by clicking the View Log button. They are zeroed out when a new connection attempt is made. But what if you don’t want them zeroed and you can’t access the Append to Log setting? Simple. Unplug the phone line and attempt to dial. After a while an error screen pops up with an option to turn on logging. Clicking this will turn on log appending, and the modem log will NOT be erased at the beginning of every new connection attempt. Instead it will grow forever, and you will see a check in that grayed out append to log section in the modem properties. When you want to stop the appending, then do the pull-phone-line trick again, wait for the error message, and uncheck the logging.
The Modem logs contain a record of the commands that the Windows dialer sends to the modem and the responses that it gets. These commands are AT commands that are part of the AT command set. (Sometimes called the Hayes Command Set) If for example the modem does not support a specific AT command, there will be an error in the log, and you can modify the INF file and delete then re-install the modem. To find the INF file to modify, under Windows 7 do the following, go to Control Panel, Phone & Modem, Modems, click modem then Properties, then General and note the exact name of the modem. Then open regedit and do a search for the exact modem name. This will be in the Registry in several places, one location has all of the parameters. One of the params is “InfPath” and in that is the name of the actual INF file. These are in \Windows\inf in Windows versions up through Windows 7.
Better modems can also give information on line quality and signal strength. Please see our companion article titled “Phone line quality diagnosis” for information on how to access this.
IPv6 detector
Still using IPv4? 3.147.104.18 Show stats- Hide stats
This server has received 864031 hits from both ipv4 and ipv6. IPv4 98.0% IPv6 2.0%