Analog mobile phones were popular in the 90s and the last operators ended their service only in 2007. Some technicians are still able to run these phones.
Advanced Mobile Phone System (AMPS) standard was created by Bell Labs in 1983, these phones became popular in the 90s. This standard was a sort of first-generation cellular technology — the voice was transmitted using the “old way” method of frequency modulation (FM), like in a walkie-talkie radio, but the radio spectrum was divided into separated channels, and the so-called “control channel” was actually digital.
The AMPS is using 825–845 MHz and 870–890 MHz frequency bands, the spectrum is divided into 21 control channel and 395 traffic channels. Each client is assigned a separate channel for a single cellular phone call. Some modern features, like roaming, were also available, and the process of dialling the phone number was easy and not too much different from modern phones in the XXI century. The biggest disadvantage of the AMPS was the analog voice transmission — every phone call can be overheard by using the radio receiver, capable to be tuned to these frequencies. On the other side, in the 80s the microcontrollers just did not have enough computing power to use the secured digital channels, we have nowadays. Thus, the digital data stream was used only to establish a connection but the voice was transmitted in an analog way, like in any other portable FM radio. Several years ago, radio scanners made for the USA market (like Icom) had some “blocked” frequencies in the 800–900 MHz range. Of course, the experts could unlock it back, but it at least makes the task more complicated for non-specialists and makes it impossible occasional tuning to someone’s phone call.
Nowadays all AMPS operators are obviously out of service, but thanks to the open-source contributors and the SDR technology, it is possible to run a local AMPS network, at least on the short-range scale. It can be interesting not only for self-education but also for demo purposes, as a demonstration in the museum or temporary exhibition — it’s always much more exciting when you can see the stuff in a working condition, than just laying on the shelf.
To start a micro-network, youneed several components:
- Software-Defined Radio Transmitter. The transmitter should be capable to send and receive wide-band signals in full-duplex mode (transmit and receive simultaneously). USRP or LimeSDR will be fine for this job.
- Computer with Linux. You can use the Raspberry Pi 4, so you don’t have to install Linux on your main PC. When using a Raspberry Pi, a good power supply is essential, because the transmitter will be powered via the USB port from the same power source.
- Software that is controlling the transmitter. For AMPS, two possible solutions are available: osmocom-analog and gr-amps.
Installing the software
First, you need to update the system and install the SoapySDR library, which is required to access the hardware. Version 0.8 of SoapySDR is already available, but the osmocom-analog was made for version 0.7. Next, you need to install the USRP library (only if using the USRP transceiver). Finally, you can download and install the osmocom-analog software.
When the software is ready, you can connect the transmitter to the Raspberry Pi. Here you open two channels, a control channel 334 and a voice channel 332 — the total number of channels should be equal to the number of phones plus one. Optionally, you can also adjust tx-power and rx-sensitivity if needed. At the same time, the phone will get the data from the control channel and the LED status will be changed to “online”.
During a phone call, it is also interesting to see the AMPS signals on the radio spectrum. It is really possible to tune to the channel and to listen for the voice, that is sending to the phone.