Audio modem (AFSK)

The audio modem is a software TNC. The phone itself encodes and decodes 1200-baud AFSK packet audio — the Bell 202 tones of VHF APRS — so any radio with a speaker and a microphone connection works, connected with a cable.

How it fits in

Add it like any other channel: open the Radio screen (under More on the tab bar), tap Add channel, and pick Audio modem — "No TNC — a cable from the phone to the radio". The channel summary reads AFSK 1200 plus how the radio is keyed. Switch the channel on first: the signal meter, device routing, and push-to-talk settings all need the modem running to mean anything.

The modem listens through the phone's audio input, so it asks for microphone permission. If you refuse it, the channel says exactly why it cannot hear the radio and where to fix it. Receiving carries on in the background behind the app's usual persistent notification — see Background & battery.

Wiring

Two directions, and they are independent:

  • Receive: the radio's speaker or headphone output into the phone's audio input.
  • Transmit: the phone's audio output into the radio's microphone input.

How you get there is up to your hardware: a USB-C audio adapter, the headset socket if your phone still has one, or a purpose-built interface such as a Digirig that presents itself as a USB sound device. The Listen through and Input settings choose where the modem listens; Transmit through and Output choose where it plays. Automatic is usually right — set a device explicitly if the meter stays flat with a cable plugged in.

Android sometimes routes audio somewhere other than what you asked for, silently. The app checks and says so: if the modem is actually listening through the phone's own microphone rather than your cable, or transmit audio is going to the phone's speaker, a warning appears under the setting. Check that warning first when nothing decodes — a wrong route looks identical to a dead cable.

Keying the radio: VOX or a serial PTT cable

Under Push to talk the channel offers two ways to key the transmitter:

  • VOX — the tones key the radio themselves. Turn VOX on at the radio, and give the Transmit delay enough room to trip it: the delay is tone sent before the data, and with VOX it also has to open the transmitter. Too short means the start of every packet is lost — a loss that is not visible on the phone, only to the stations that could not decode you.
  • Serial cable — a handshake line on a USB adapter keys the radio, which is what a Digirig or a CAT cable does. Pick the Keying adapter, and leave the Keying line on RTS — that is the line on almost every commercial interface. Try DTR if the radio never keys. If the same USB device is already held by a USB TNC channel, only one of them can have it, and the app says which.

Setting levels

There is no gain slider in the app, on purpose: the demodulator normalises what it hears, so an amplifier stage in software would move the meter without decoding a single extra packet. The levels that matter are the real ones at either end of the cable:

  • Receive level is the radio's volume knob. The decode counters tell you which way to turn it: "Nothing heard yet" means check the cable, the radio's volume and that the squelch is open; packets arriving corrupted means the signal is getting through and the level is too high — turn the radio down.
  • Transmit level is Android's own volume control for whichever output you chose. The Output picker says which one applies: Call audio uses the headset socket and ignores the media volume, Media follows the media volume slider.

If the modem hears nothing at all, work down the Input source list in order — it is arranged as the troubleshooting procedure, starting with Voice recognition, which skips most of the phone's audio processing. Noise suppression on the default input can remove the very tones the modem needs.

What to expect

Receive and transmit both work over the air. The modem also carrier-senses the channel: it recognises other stations' packet transmissions and shows CHANNEL BUSY rather than transmitting over them. It cannot detect voice, so it will not hold off for a net in progress.

When something is arriving but nothing decodes, Record for diagnosis captures 30 seconds of exactly what the phone is hearing, before any of the modem's own processing — useful evidence for working out where the level or routing has gone wrong.

If you would rather put dedicated hardware in the chain, the same radio can move up to a Bluetooth, Bluetooth LE, or USB KISS TNC later — the app treats them all as channels side by side.

Last updated 31 August 2026