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 and Airspy, 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.
Note that if you have success with this tutorial, you may also be interested in decoding Meteor M N2 weather satellites which provide much higher resolution images. Also, an alternative tutorial for decoding NOAA satellites that uses rtl_fm can be found here.
YouTube user GaitUutLiern shows an example of receiving NOAA satellite weather images with a RTL-SDR, SDRSharp, a decoding program called 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 a RTL-SDR with 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. (Or other more advanced SDRs such an Airspy)
- An audio piping method (e.g. VBCable, Virtual Audio Cable or Stereo Mix)
- A right hand circularly polarized antenna tuned to 137 MHz.
- Software such as WXtoImg for decoding the APT signal.
- An LNA (Optional).
June 2018 Broken WXtoImg Links Update: Note that at the time of this update the WXtoImg website is down, and may never come back as it appears to have been abandoned. The Windows version and some Linux versions of WXtoImg can still be downloaded from archive.org.
July 2018 Broken WXtoImg Links Update: A fan has put together a clone of the WXtoImg website which contains most download links. It is available at wxtoimgrestored.xyz.
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).
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. Satellite antennas are also designed to receive best from signals coming from the sky. Three options for easy home made circularly polarized satellite antennas are presented below.
A turnstile antenna is a circularly polarized antenna. It can be built in two modes, normal and axial. For satellite reception we want it in axial mode.
A page showing a turnstile antenna for 137 MHz is here.
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.
Recently it was discovered by 9A4QV Adam that a simple dipole arranged into a 'Vee' shape placed horizontally makes an excellent and extremely simple weather satellite antenna. This is probably the easiest beginners antenna to build as it only consists of two wires and some coaxial cable.
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. Although not designed for satellite reception, you may also see limited success with other antennas such as quarter wave ground planes and discones, but you will probably discover that the signal will fade in and out.
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 zoomed in and out on the frequency spectrum directly below and an example audio file of the signal is shown further 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 NOAA 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.
- In WXtoImg set your audio piping method which you have chosen. To do this 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. You may also increase the filter bandwidth beyond 34 kHz if there are no nearby interfering signals to cover the entire travel of the signal.
- Adjust the volume 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 or you want to automatically record all satellite passes then 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 SDR# Orbitron DDE tracking and scheduler plugin from here.
- Extract all the plugin files to the SDR# directory. With notepad or another text editor open Plugins.xml. Within the <sharpPlugins> </sharpPlugins> tags add the line <add key="DDE Tracking Client" value="SDRSharp.DDETracker.DdeTrackingPlugin,SDRSharp.DDETracker" /> at the end.
- 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 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 updated TLE files will not be saved.
- In order to have Orbitron accurately track the satellites it is important that your Windows PC time is accurate. Orbitron comes with a method to synchronize your PC time to the NTP servers, which provide accurate time. In the setup screen click on the Time Synch tab, and click on the Synchronize PC clock button (looks like a lightning bolt) to automatically synchronize the time. You may also wish to select the Synchronize PC clock when Orbitron starts checkbox if your PC is always connected to the internet.
- Close Orbiton. Now open Notepad in Administrator mode, by right clicking its shortcut in the Start Menu, and clicking on Run as Administrator.
- In Notepad, go to File->Open, and browse to your Orbitron\Config folder. The full path is probably probably installed in “Program Files (x86)\Orbitron\Config”. Open Setup.cfg.
- At the bottom of the Setup.cfg text file, add these two lines, making note that you should specify the path to your own local install of SDR#. Here we assume you’ve installed SDR# to C:\sdrsharp.
- Now open Orbitron and in the main tab set the refresh interval to 1 second. This is the drop down box in the lower right of the panel.
- 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, or the file for whatever other satellite you are interested in tracking.
- For NOAA weather satellite images we are interested in NOAA satellites 15, 18 and 19, as they are the only satellites working, so place a check next to those. Double clicking on a satellite name will select it and show it in the map window.
- For each satellite enter the correct downlink frequency under Dnlink/MHz, e.g. for NOAA 15 enter 137.62 MHz. The corrected doppler frequency will be automatically calculated.
- Go to the Main Tab in Orbitron and click on the Setup button (looks like a crossed hammer and spanner).
- Go to the Miscellaneous tab and ensure that AOS Notification: Show Notice is selected, with the elevation set to 0. (Increase the elevation if you only want to start tuning to the frequency when the satellite is higher in the sky and thus gives you better reception).
- Go to the Extra tab and ensure that “AOS Notification: Make satellite” active is checked.
- In SDR# ensure you have set the PPM offset correction properly and then press Play and go to the Tracking DDE Client plugin. Click on the Config button.
- Here we need to set up the scheduler instructions. First enter the name of the satellite you want to track in the Satellite name text box, making sure to replace any spaces in the name with underscores. For example if you wanted to track NOAA 15, then you’d set the Satellite name to NOAA_15.
- When a satellite comes into view the scheduler will automatically run the commands written in the AOS text box in the scheduler. When it leaves view it will run the commands in the LOS box. Under AOS using the available commands and the two left arrow buttons (<<) add the commands “radio_modulation_type<WFM>”, “radio_bandwidth_Hz<38000>” and “radio_tracking_frequency_On” to the top AOS box with each command on a seperate line. Also add the command “radio_tracking_frequency_Off” to the bottom LOS box. This will ensure that the correct modulation and bandwidth is automatically set as well as tuning the frequency to the Receiver/doppler frequency specified by Orbitron. Close the Scheduler configuration box.
- Next ensure that the scheduler is enabled by checking the Scheduler box in the plugin.
- Now back in Orbitron 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 drop down box and make sure it is pressed in. If a box pops up saying it could not find the driver then you may have specified the path in step 8 incorrectly. Click Yes and then select the SDRSharpDriverDDE.exe file in the SDR# folder.
- In SDR# the Tracking DDE Client plugin should now show that Orbitron is connected and information about the currently selected satellite in Orbitron will show in the plugin. When a satellite appears overhead the frequency will immediately snap to the doppler frequency specified by Orbitron.
- Finally, if desired WXtoImg can be made to automatically output a live webpage of the latest weather satellite images. This option can be found in WXtoImg under Options->Auto Processing Options->Web Page Settings.
- An LNA such as this or this may improve signal reception, especially if you run a long coax feed line from the antenna to the dongle.
- Ensure that your antenna has a good unobstructed view of the sky.
- You probably won't get very good results without a proper satellite antenna such as a QFH or turnstile.
If you enjoyed this tutorial you may like our ebook available on Amazon.