NOAA-19 APT Recption using GNU Radio and a FUNcube Dongle

Antenna

NOAA APT transmissions are right hand circular polarized at frequences around 137 MHz. This requires the use of an antenna designed for receiving such a signal, for example a quadrifilar helix antenna or a turnstile antenna. Since none of these antenna types was available, a simple 137 MHz ground plane antenna was constructed. As usual for this type of antenna, 4 pieces of 12 gauge copper wire were attached with machine screws to a SO-239 UHF-type chassis-mount coaxial socket and a fifth wire was soldered to the center pin. All elements are 52cm in length.

Receiver

The reciever consists of a FUNcube Dongle and a computer running GNU Radio.

The computer is a Dell Optiplex GX280 with a dual core 3.40 GHz Pentium processor and 3 GB RAM. The operating system is Fedora 12 Linux running a custom 2.6.31.5 kernel. It also has an ASUS Xonar D1 soundcard that is used for various SDR experiments.

FUNcube Dongle is a software defined radio receiver in a USB stick tunable over a range of 64 MHz - 1.7 GHz. It provides I/Q data via USB audio and its control interface (frequency, gains, filters) uses the USB HID api. This particular unit is serial number 980 and has been upgraded to the 18h firmware.

The FUNcube Dongle

GNU Radio is a free software development toolkit that provides the signal processing runtime and processing blocks to implement software radios using readily-available, low-cost external RF hardware and commodity processors. GNU Radio applications are primarily written using the Python programming language, while the supplied, performance-critical signal processing path is implemented in C++.

The GNU Radio portion of the receiver was built using the GNU Radio Companion, a graphical tool for creating signal flow graphs and generating flow-graph source code. It is modeled after a USRP APT receiver by Alexandru Csete (OZ9AEC). The flow chart uses the Funcube Dongle source block for GNU Radio, gr-fcd, also developed by Alexandru Csete. This block wraps both the audio input and the control interface into a GNU Radio source block with a complex data stream output. His web site has more useful GNU Radio information than almost any other site on the web.

The GNU Radio Companion flow graph of the receiver

The major components of the flow graph and their function in the receiver-

Funcube Dongle Source - provides a complex data stream output and an interface to some of the dongles controls

Frequency Xlating FIR Filter - with its associated controls, allows the passband of the received signal to be narrowed to minimize interference

WX GUI FFT Sink - displays the power spectrum of the received signal after the bandpass filtering- useful for fine-tuning the receiver

WBFM Receive - demodulates the received FM signal and converts its type from complex to float

Rational Resampler - the resampler in front of the audio sink resamples the 96k data stream to the 44.1k required by the audio sink

Audio Sink - the output of one of the sound cards on the computer, to allow for listening to the received signal

Rational Resampler - the resampler in front of the file sink resamples the 44.1k stream to the 11.025k required for the image decoder

Wave File Sink - the received signal is recorded to a 16 bit, 11.025k, mono wav file

The other blocks in the flow graph define either variables or GUI components. The blocks are mostly written in C++. GRC produces a Python executable from the flow graph that basically "glues" the block together.

The end result of the receiver's operation is an audio file, a mono wav file with a sample rate of 11025. This audio file is decoded to produce the final image. A sample of the audio is available for download: sample.mp3

Decoding the image

The audio file was decoded into the image using atpdec, a command line oriented NOAA POES weather satellite image software decoder. The software is open source and GPL licensed. Decoding the image is as simple as running the command "atpdec audio_file.wav."

There seem to be two types of noise in the image. The white bands are generally the result of poor reception, particularly at lower elevetions of the satellite. The darker bands are interference; the interference can be heard and sounds at times like FM broadcast, and at other times like aviation band.

NOAA-19 and this pass

NOAA-19 is the last of a series of NOAA POES satellites using an Automatic Picture Transmission system. The satellite was launched on February 6, 2009, and is an 845 x 866 km orbit with an inclination of 98.8° and an orbital period of 102 minutes. This pass, on Saturday, May 29, 2011, was northbound during orbit number 11865. The satellite rose above the local horizon at 17:49:52UT and recording started at 17:52:27UT when the satellite was approximately 10° above the horizon. The satellite was visible for 15:33, of which 10:57 was recorded. The satellite reached a maximum elevation of 64° and at its closest point was 933km from the station.