RTTY decoder for Windows XP/7/8/10, 32/64-bit
GRITTY is an RTTY decoding program based on the technology developed for the
RTTY Skimmer Server
project. This is not a skimmer, it decodes a single signal in the 3-kHz audio
coming from the transceiver via a soundcard, just like any other RTTY program.
Fig.1. GRITTY is decoding weak signals. Unreliable characters in the text are
printed using light colors, many of them are errors, but the program still
determines the correct callsign and shows it on the callsign stack.
How It Works
The decoding algorithm in GRITTY is based on the methods of Bayesian statistics. This
results in a better decoding accuracy than other algorithms, created by the
trial and error method, typically achieve. In the Bayesian framework, all
information is represented in the form of probabilities. In particular, the
Bayesian decoder computes not only the 5-bit Baudot codes, but also the
probability of error in each of the bits.
One obvious use of these
extra data is to compute the error probability for each character in the text,
and color-highlight the unreliable characters. Another use is smart squelching.
In GRITTY, the squelch function is based not on the signal amplitude
but on the error probability.
This works better than the traditional squelch since it allows decoding
of very weak signals but suppresses strong signals when interference
makes accurate decoding impossible. The net result is very little garbage in the
The bit error probabilities are also used in other, more interesting ways.
GRITTY not simply prints what
was decoded, but performs some intelligent analysis of the decoded text.
When similar callsigns appear in the message, an experienced operator can
often tell which call is correct and which one is corrupted. GRITTY can do
the same, but more accurately than a human, because it can compare the calls
bit by bit and merge the probabilities using the Bayes formula. Quite often
the program is able to determine the correct callsign and put it on the
call stack even if all received copies of the call are corrupt.
A similar approach is used to find and correct the errors in other parts of the
text, such as exchange numbers and CQ/DE keywords, to fix incorrect shift state,
Several audio recordings that illustrate the unique features of GRITTY are available
GRITTY Demo page.
Integration with other programs
GRITTY has an open API interface, documented in its Help file, that allows other
programs to receive decoded data and other information, such as mouse click
events. Here is a demo program, with source code, that shows how to receive
decoded text from GRITTY, update previously received characters
when smart decoding makes corrections, and color-highlight unreliable
For comparison, the demo also receives decoded text from either MMTTY or 2Tone.
Download the demo here:
Copyright © 1998-2015 Afreet Software, Inc.
Announcements of new software
for this website