Clever Quest Lab ← Labs

RTTY Decoder

Turn the two-tone warble of radioteletype into text, straight from your receiver’s audio.

Sound is off – choose an audio source to start decoding.

Microphone, computer and file audio is decoded in your browser and never leaves your device. Captured audio is not played back. When you share computer audio, the picture of your screen is not used, recorded or sent.

Click or drag on the spectrum to put the centre line between the two tones. Keys (with the spectrum focused): ← → 5 Hz, with Shift 25 Hz, A auto-tune, R reverse.

Decoded text

Readouts

Centre
–
Baud
–
Mark
–
Space
–
Signal level
–
Framing errors
–
Characters
0
Squelch
–

Tuning indicator. Mark draws across, space draws up and down. A sharp cross means you are tuned; a blob means you are not.

Mode

Demo signal

The demo uses the mode settings at the moment you press “Play demo signal”. Noise is the signal-to-noise ratio in a 3 kHz bandwidth.

Monitor

Only the demo signal and audio files are played through the speakers. Computer audio and the microphone are analysed silently.

How to use it

Radioteletype (RTTY) is one of the oldest digital modes on shortwave: a transmitter jumps between two frequencies to send text. This page listens to a receiver’s audio and prints that text. Tune a receiver to a signal that sounds like a fast two-tone warble and bring its audio in as described under “Getting the audio in” below. “Play demo signal” generates RTTY inside the page.

Decoding keeps running while this tab is in the background, so you can keep watching the receiver. Only the drawing pauses.

Where to find it and how to tune

Getting the audio in

There are four ways to get the signal in. Nothing is uploaded: all decoding happens in this tab.

  1. No radio needed — a web receiver in another tab. Open a public web-based SDR receiver in a second tab (universities and radio clubs run many of them), tune it as described below and start its audio. Here, press Use computer audio, choose that tab in the sharing dialog and switch on sharing of the tab’s audio. Keep the receiver tab playing; this page can stay in the background.
  2. Your own receiver or SDR program on this computer. Press Use computer audio and share the program’s window or the entire screen together with system audio, or send the program’s output to a virtual audio cable and pick that cable after pressing Use microphone.
  3. A radio with a speaker. Hold it near the microphone and press Use microphone. It works, but room noise hurts weak signals; a cable from the headphone socket to the line or microphone input is better.
  4. A recording. Load a WAV or MP3 file with Open audio file.

Receiver setup

SettingValue
ModeUSB. On LSB the two tones swap places; the page then switches Reverse by itself.
Filter width500 Hz is enough for the 170 Hz amateur shift. The normal 2.4 kHz voice filter suits every shift, including the 450 Hz of the weather stations.
TuningBoth tones should show between 300 and 3000 Hz; the exact pitch does not matter, because Auto-tune finds the centre. In USB the pitch is the signal frequency minus the dial frequency, so set the dial 1–2 kHz below a listed frequency.
AGC / noteMedium AGC, noise reduction off. If the text is nonsense although the tuning cross is sharp, try another baud rate.

Example frequencies

FrequencyWhatReceiver settingWhen / note
4.583, 7.646 and 10.1008 MHzGerman weather service (DWD), call signs DDK2, DDH7 and DDK9: weather bulletins, storm warnings and coded observations for shipping.USB with Reverse ticked; 50 baud, shift 450 HzTransmitted 24 hours a day.
11.039 and 14.4673 MHzDWD, call signs DDH9 and DDH8; same content and settings.USB with Reverse ticked; 50 baud, shift 450 Hz05:00–22:00 UTC only.
14.070–14.099 MHzAmateur narrow-band digital segment, 20 m (IARU Region 1).USB; 45.45 baud, shift 170 HzStay below 14.099 MHz, where the beacon segment begins.
7.040–7.050 and 3.580–3.600 MHzAmateur narrow-band digital segments, 40 m and 80 m.USB, or LSB with Reverse ticked; 45.45 baud, 170 HzIARU Region 1 band plan.

Schedules change from time to time; the German weather service publishes current plans on its website.

Controls

How it works

RTTY is frequency-shift keying. The carrier rests on the mark frequency and hops to the space frequency, a fixed shift away. In the receiver’s audio they appear as two tones:

fmark, fspace = fcentre ± shift / 2     Tbit = 1 / baud

At 45.45 baud one bit lasts 22 milliseconds. Each character is one start bit (space), five data bits and a stop bit (mark) that usually lasts 1.5 bit times, so 7.5 bit times in total: about six characters per second. Five bits give only 32 combinations, so the ITA2 code (often called Baudot) uses two of them, LTRS and FIGS, to switch between a letters table and a figures table.

The decoder multiplies the audio by a sine and a cosine at the mark frequency and averages both products over exactly one bit time, then does the same for space. For rectangular bits in white noise this averaging is the matched filter. The two strengths are then compared, but not against a fixed threshold: the decoder tracks the recent peak of each tone and the noise floor and weights the decision by them. On shortwave one tone often fades while the other stays strong (selective fading); this automatic threshold correction copes with it.

The bit clock is not transmitted. Every mark-to-space edge may be a start bit, so the decoder starts a timer there, checks half a bit later that the tone is still space, and then samples the five data bits and the stop bit in the middle of each. If the stop bit is not mark, it counts a framing error, waits for mark and synchronises again on the next edge. AFC measures how fast the phase of each filtered tone rotates and moves the centre to cancel it.

Things to try

Frequently asked questions

Normal or reverse?

“Normal” treats the higher audio tone as mark. Amateur stations put mark on the higher radio frequency, so their signals read normally on USB and need Reverse on LSB. Weather stations such as DWD are the other way round and need Reverse on USB. When the other polarity clearly frames better, the page switches Reverse by itself; a setting made by hand stays until the next Auto-tune, preset or new source.

Why do I get digits instead of letters?

A FIGS or LTRS character was lost in noise. The text recovers at the next shift character, or at the next space when “Unshift on space” is on. If numbers come out as letters instead (QWZ for 12Z), untick “Unshift on space”: weather broadcasts do not use it.

Why does “Use computer audio” hear nothing?

Sharing a single window carries no sound. Share the entire screen with system audio, or a browser tab with its audio, and check that the receiver program is not muted.

Is my audio uploaded?

No. Everything is computed in this page, which also works offline.

More free games and simulators