Crash Course
Dial-up modems operate on the same principles as a satellite modem - data is transformed into an analog signal, but in this case it travels down a phone line instead of through space. Phone lines presented a unique challenge for sending information, especially as technology progressed faster than the phone networks could keep up. Phone lines were built to carry voices, so there is a specific range of audible frequencies that are safe to send. In the early days of simple FSK modems, this wasn't an issue. However, as the demand for faster internet speeds increased, different techniques had to be used to send data. The coolest thing about all of them is that they each have a characteristic sound that you can hear - it is, after all, travelling down a phone line.
These sounds are the handshakes used to set up the connection between two modems. During these handshakes, modems use a combination of different modulations as they learn more about each other. Additionally, the modems probe the phone line - sending out a specific signal, so the modem on the other end knows if specific frequencies aren't propagating as well as others. The modems then have to agree on a specific modulation to use (based off the information they learn about each other). This is why it took so long to connect to your ISP back in the day - a whole process of modems saying hello, determining the quality of the connection between them, and coming to a consensus on how information should travel between them.
Are these still relevant?
For the majority of people getting online, no. But for other reasons, yes!
- They're still around. Though modern telecommunications infrastructure causes problems for these older devices (VoIP breaks a lot of assumptions made by the modems), they still exist in some places as a last resort method to connect to a datacenter.
- They're a lot of engineering in a cheap package. The amount of work that went into the development of the dial-up modem is astounding. From manufacturers creating the hardware and software, to researchers who devised new modulation schemes, to the telecom industry that connected it all - it's a lot.
Interacting with modems
Every modem is different, but most adhere to a common standard - the AT command set. This was originally introduced by Hayes for the Smartmodem in 1981, and allowed for both modem commands and data to be sent over a single serial port. Despite being so old, many modern modems still support this - you'll even find it in cell phone modems!
Every command in this set starts with AT - meaning ATtention. A few common AT commands are described below:
- ATD5551234 - Dial 555-1234
- ATA - Answer an incoming call
- ATH - If there's an active connection, hang up
- ATI - Display modem information
- ATZ - Reset modem configuration
There are many AT commands, and they often vary between manufacturers and different devices.
A Hackable Modem
We discovered a modem that's easier to play with than many others you'll find around. It's the USR5686G, a reimplementation of an older U.S. Robotics modem, the USR5686E. Despite having such a similar model number, they're entirely different pieces of hardware. The G model uses an ARM CPU to replace many of the tasks performed by multiple chips in the older model. Additionally, the firmware is available online and trivially viewable and modifiable.
Want to see how to modify this modem? Check out our GitHub Repo!
NEXT CHAPTER