Skip to content

Tutorial FreeDV

adswill edited this page Oct 17, 2026 · 1 revision

Tutorial: FreeDV

What it is

FreeDV is open digital voice for HF on single sideband: speech is compressed to about 700 to 1600 bit/s and sent as a digital signal that works at a lower signal-to-noise ratio than analogue SSB. OnAir decodes the text and counts speech frames; the speech itself is played if the codec2 library is found, which it normally is because it ships with OnAir.

What you need

  • An HF-capable receiver. An SDRplay or an Airspy HF+ tunes the HF bands directly. An RTL-SDR reaches HF only in direct-sampling mode (Radio settings, see Radio-RTL-SDR; the RTL-SDR Blog V4 uses its built-in up-converter). A HackRF or another radio that starts above the HF bands needs an up-converter such as Ham It Up or SpyVerter, which you pick in Radio settings so that the whole app shows the true frequency (see Supported-radios). The mode asks for 2 Msps and keeps working down to 250 ksps, so even a small radio is enough: the signals sit within about 3 kHz of the dial frequency.
  • An HF antenna: a long wire of 10 m or more as far from household electronics as you can get it, a dipole cut for the band, or a magnetic loop for a noisy site. Keep the feed line away from switching power supplies and LED lighting, which are the usual source of S9 noise on a city balcony.
  • Frequencies (USB dial): FreeDV 3.625, 7.177, 14.236 (the default), 18.118, 21.313, 24.933 and 28.33 MHz.
  • The codec2 library (LGPL, loaded at run time). It comes with OnAir; if it is missing the panel says codec2 library not found: FreeDV needs it to decode, and the ? button shows what to do.

Before you start

Lower the gain until the ADC level in the status line is well below full scale: strong broadcast stations next to an amateur band overload a direct-sampling RTL-SDR easily, and the result is spurs that look like signals. Use Auto-tune or Optimise gain (see Your-first-reception) rather than guessing. Choose upper sideband for all dial frequencies in the lists below; the decoders listen from the dial frequency upwards. A DC spike in the middle of the spectrum is normal for some radios and is not a signal: leave a few kHz of offset if you can.

Step by step

  1. Connect the radio and antenna and start OnAir. Open the group Amateur: voice & packet and choose Digital voice (the entry reads Digital voice, 14.236 MHz).
  2. Choose the Mode: Automatic, RADE or a fixed one such as 700D, 700E or 1600 (check the list in the panel).
  3. Press Start. The panel shows Library (codec2 found or not), Sync, SNR, Receiving and Speech frames.
  4. Wait for sync. A FreeDV signal sounds like a rough buzz in an SSB receiver.
  5. Read the Text pane: stations often send their callsign as text, and no text received yet means none arrived.
  6. Press Listen to hear the decoded speech.

What you should see

Sync switches on when a signal is locked. SNR is the codec2 library's estimate in 3 kHz; FreeDV 700D and 700E work down to about 0 dB. Speech frames counts decoded speech frames, and the text appears when sent.

Reading the screen

Mode, Receiving (the mode in use), Sync, SNR, Speech frames, Text, Library.

Options and settings

  • Mode: Automatic, RADE or a fixed mode.
  • Listen: the decoded speech.
  • The ? button explains the codec2 library.

Troubleshooting

  • Library not found. Reinstall OnAir or put codec2 into the codecs folder; see Voice-codecs.
  • No sync. Wrong mode: try Automatic. Or the signal is too weak, or you are on lower sideband.
  • Sync but the speech is broken. SNR is too low or the signal fades.
  • Wrong sideband. FreeDV uses upper sideband on all bands in this list.
  • Clipping, distorted signal. Gain too high.

Tips

  • FreeDV activity peaks at weekend net times; check the FreeDV website and local amateur news for scheduled nets.
  • Keep a recording (Tutorial-Record-IQ-then-the-Signal-workbench) of a good opening and replay it to try the settings.

Legal and privacy notes

Receiving amateur signals is allowed in most countries; the text is public by design. Transmit works in OnAir and has been used on a real radio by the maintainer and in loop-back tests; you need an amateur licence to transmit (see Transmit and Legal). codec2 is open source (LGPL); the OnAir copy is loaded at run time and is not a patented vocoder.

Under the hood

FreeDV combines the codec2 speech codec with OFDM modems. 700D and 700E use LDPC forward error correction and a low rate; 1600 is an older FDMDV-style mode; RADE is a newer neural-network based mode. Check the FreeDV documentation for details.

Related

Mode-FreeDV, Voice-codecs, Tutorial-HF-digital-FT8-and-WSPR, Tutorial-Digital-voice-DMR-D-STAR-P25, Radio-RTL-SDR, FAQ

Clone this wiki locally