Here is the specification for the FEC format. It refers to this CCSDS coding standards document.
Here is the published paper I presented at the 2002 AMSAT Annual Meeting in Ft Worth, Texas. My presentation slides are also available in Open Office format and in Power Point format.
An article by James Miller, G3RUH explains my design with some excellent diagrams. James also shows some small antennas that were used to successfully copy the FEC telemetry.
And here is the same telemetry frame with simulated fading and noise. The fading envelope is a 1Hz sinusoid, so there are two nulls and two carrier phase reversals per second. After fading, simulated gaussian noise was added to yield an average Eb/No of 7 dB.
There is room for improvement in my prototype demodulator/decoder, but it was still able to fully decode this fading, noisy signal with no uncorrected errors.
Had this frame been sent in the original, unencoded format, decoding it would have been utterly hopeless as a single channel symbol error would have been enough to ruin it. Also, the coherent demodulators usually used would not have been able to track the amplitude fluctuations and frequent carrier phase reversals caused by the fading.
Note: these demo files have been updated to use a transmit filter that matches the actual analog filter on AO-40. When this same filter is used in the receiver, there is significant intersymbol interference (ISI) that degrades performance by 1-2 dB over matched filters that meet the Nyquist criterion. I'm working on a better receiver filter that compromises between minimizing ISI and minimizing noise when used on the AO-40 signal.
And here is a prototype modulator and demodulator to test and demonstrate this format. This version is rewritten for asynchronous framing as currently used on AO-40. A decoder for the existing uncoded format is also included. (updated 14 July 2003)
The prototype encoder/decoder requires three library packages. These are the Viterbi decoder, simd-viterbi-2.0.3.tar.gz the Reed-Solomon codec, reed-solomon-4.0.tar.gz, and the DSP library dsp-1.0.2.tar.gz.
Last modified: 21 Aug 2007, Phil Karn