Everyday multiple NOAA weather satellites pass above you. Each NOAA weather satellite broadcasts an Automatic Picture Transmission (APT) signal, which contains a live weather image of your area. The rtl-sdr dongle combined with a good antenna, SDRSharp and a decoding program can be used to download and display these live images several times a day.
This tutorial will show you how to set up a NOAA weather satellite receiving station, which will allow you to gather several live weather satellite images each day. Most parts of this tutorial are also applicable to other software radios, such as the funcube dongle and HackRF, but the rtl-sdr is the cheapest option. Hardware radio scanners can also work, provided the radio has a large IF bandwidth (30 KHz +) and a discriminator tap.
YouTube user GaitUutLiern shows an example of receiving NOAA satellite weather images with rtl-sdr, SDRSharp, decoding program WXtoImg and a QFH antenna.
Here, YouTube user themrworf1701 shows a video tutorial on how he set up his weather satellite receive station. He used an rtl-sdr, SDRSharp, WXtoImg, a QFH antenna and also an LNA.
Requirements and Setup
To set up a NOAA weather satellite receive station you will need
- An rtl-sdr dongle working with SDRSharp.
- An audio piping method.
- A right hand circularly polarized antenna tuned to 137 MHz.
- Software such as WXtoImg for decoding the APT signal.
We will assume you have the rtl-sdr dongle set up and working already. If you have not bought a dongle yet, see the Buy rtl-sdr page for information, and the check out the Quickstart Guide for an easy setup routine with SDRSharp. You will also need to have an audio piping method installed and set up. Audio piping will allow the audio from SDRSharp to be passed to a decoding program. You can use either windows stereo mix, VB-cable (free) or virtual audio cable (paid with trial version).
The sampling rate of your audio piping method should be set to at least 48000 samples/sec. To set this in Windows, right click your device in the Windows sound recording tab, go to properties and under the advanced tab, set the sample rate to 48000 Hz. Do the same to the same device under the Playback tab as well.
Also, in your SDRSharp folder, open SDRSharp.exe.Config in a text editor such as Notepad, and ensure the key minOutputSampleRate has a value of 48000 such that the line reads as <add key=”minOutputSampleRate” value=”48000″ />.
NOAA Weather Satellite Antennas
The NOAA APT weather satellites broadcast their signal at about 137 MHz, and their signals are also right hand circularly polarized (RHCP), which means you will need a right hand circularly polarized antenna to properly receive the signals. This is because as the satellites broadcast their signal, they also rotate, rotating the signal polarization. Three options for easy homemade circularly polarized antennas are presented below.
A turnstile antenna is simply two dipoles aligned at right angles to each other, and connected in a way so that their signals are 90 degrees out of phase, giving the circular polarization. The turnstile is also sometimes known as a cross dipole.
Quadrifilar Helix (QFH) Antenna
A Quadrifilar Helix (QFH) is a circularly polarized antenna that can be constructed out of PVC pipe and coax cable. Most people report that the QFH antenna has slightly superior reception compared to the turnstile.
If you are into antenna theory, a good technical paper on the QFH (called QHA in the paper) can be found here.
A tutorial on building a QFH out of coax cable and PVC pipe can be found here. Another home brew QFH antenna constructed out of copper wire is here. Also, a good calculator for determining QFH antenna dimensions for 137 MHz can be found here.
Double Cross Antenna (DCA)
Another antenna that works well with the NOAA APT satellites is the double cross antenna (DCA). It is basically four dipoles arranged in a certain way to produce circular polarization.
A good guide on DCA antennas, and constructing them can be found in this pdf guide by Gerald Martes (KD6JDJ).
Yagi antennas can also work, but since they are so directional you will need to carefully track the satellite by hand, or by using a rotor controller.
The NOAA satellites only pass overhead at certain times of the day, broadcasting a signal. These signals appear at around ~137 MHz, and only when a satellite is passing overhead. Each satellite has a different frequency. Currently only NOAA satellites 15, 18 and 19 are operational, their frequencies are shown below.
NOAA 15 - 137.6200 MHz
NOAA 18 - 137.9125 MHz
NOAA 19 - 137.1000 MHz
An example of a NOAA APT weather satellite signal is shown to the left, and an example audio file of the signal is shown below.
WXtoImg is a free weather satellite decoding program, which can decode the APT signal, and also tell you the times and frequencies of the satellites passing overhead. There is also a paid version of WXtoImg which can unlock more features, however it is not required for use with rtl-sdr. To use WXtoImg and SDRSharp together follow the instructions below.
- First, download and install WXtoImg from their homepage here.
- Next open WXtoImg, and then set your Ground Station Location, (which is the coordinates of your antenna) by going to Options -> Ground Station Location. The city you are in should suffice, but you can be more accurate by entering in an exact latitude and longitude if you want.
- Set your audio piping method which you have chosen in WXtoImg. Go to Options -> Recording Options, and ensure the correct device is selected under the soundcard option.Also, here you can adjust the “Record only when active APT satellites are overhead” “with maximum elevation above (degrees)” and “record only when satellite is above (degrees)” settings. You may want to reduce the default values if you have an antenna with a good view of the sky, and find that WXtoImg stops recording or doesn’t start fast enough even though the APT signal is present in SDRSharp.
- Now you will need to update your Kepler files. These files contain the information about satellite locations. They need to be periodically updated, because satellites drift in their orbit over time. Go to File -> Update Keplers to do this. Make sure you have an internet connection for the update.
- Now you can go to File -> Satellite Pass List, and find a time when a satellite will be passing overhead. Take note of the frequency as well.
- When the time comes for the satellite to appear, open WXtoImg, and then go to File->Record, and click on Auto Record. The recording and decoding will begin when the satellite appears on your horizon, and stop when it goes out of view according to the times in the satellite pass list.
- Open SDRSharp select the audio piping method you are using under the Audio Output drop down box, and then tune to the frequency that the satellite will be broadcasting at. Adjust the gain settings in SDRSharp under the Configure button so that you get good reception of the signal. Set the receive mode to WFM, filter bandwidth to 34 KHz and Filter Audio set to OFF. It may also be useful to ensure Snap to Grid is unchecked.
- As the rtl-sdr is not frequency accurate, and also due to the Doppler effect, the signal may not be at the exact frequency it should be at. Just adjust the frequency in SDRSharp until it is centered on the satellite signal.
- Adjust the AF Gain in SDRSharp, and/or Windows volume settings so that the volume bar in the bottom right hand corner of WXtoImg shows a green color.
WXtoImg should now be decoding and showing the weather satellite image as it is received. You may need to periodically adjust the frequency to center the signal as the Doppler effect will cause it to move. But, with the rtl-sdr adjusting for the Doppler shift is not critical as the filter bandwidth can be simply set larger than 34 KHz (try 36 -40 KHz) so that it is large enough to receive the entire signal even as it as it shifts.
Once the image has been fully received, you can play with the options under the Enhancements and Projection menu in order to add false color and enhance the received image.
It is not entirely necessary for these NOAA satellites, but if you want the Doppler effect to be automatically adjusted for in SDRSharp, you can use free a program called Orbitron, which with the aid of a plugin, will interface with SDRSharp.
- Download and install Orbiton from their website here.
- Download the SDRSharp Orbitron plugin from here. The readme file comes with installation instructions, but some of the instructions did not work for me. You can try follow their instructions, or mine below. I start from the step after installing the plugin into SDRSharp. I also found that I did not need to download the DDE driver, but you might want to anyway just to be safe.
- Open Orbitron in Administrator Mode (if in Windows Vista/7/8), by right clicking it, and selecting Run as Administrator. Orbitron may open in full screen mode. Press Alt+Enter to exit full screen if you wish. You will probably also be initially presented with a TLE file update screen. You can leave all the boxes as default. Click on the update button, which is the icon with a globe and lightning bolt. Orbitron will download the new TLE files. The TLE files contain the satellite orbit information, and will need to be periodically updated every few days. Running Orbitron in Administrator mode is important, as otherwise the TLE files will not be able to be written to.
- Close Orbiton. Now open Notepad in Administrator mode, by right clicking it’s shortcut in the Start Menu, and clicking on Run as Administrator.
- In Notepad, go to File->Open, and browse to your Orbitron\Config folder. Orbitron is probably installed in “Program Files (x86)\Orbitron”. Open Setup.cfg.
- At the bottom of the Setup.cfg text file, add these two lines.
- Now open Orbitron, and set your home location, by clicking the location tab on the bottom. You can select your city on the right side if you don’t know your exact longitude and latitude.
- Next click on Load TLE, and load the noaa.txt file.
- We are interested in NOAA satellites 15, 18 and 19, as they are the only ones working, so place a check next to those. Double clicking on a satellite name will select it and show it in the map window.
- Now go to the Rotor/Radio tab, and set the Dnlink mode to FM-W, and the Driver to SDRSharp. Click the icon with two windows next to the Driver dropdown box, and make sure it is pressed in.
- Open SDRSharp, press Play and then head to the Orbitron Plugin, select Enabled, set the Tracking Software to Orbitron, and then click connect. Now double clicking on a satellite name in Orbitron should set the correct Doppler corrected frequency in SDRSharp.
- SDRSharp should now snap to the correct frequency, and adjust for the Doppler effect automatically. You will still need to manually set the correct filter bandwidth. Also, since the rtl-sdr is not frequency accurate, you will need to adjust the PPM correction in the SDRSharp configure box to ensure the signal is centered.
- An LNA such as this one may improve signal reception, especially if you run a long feedline from the antenna to the dongle.