The NOAA weather satellites are the generation weather satellites prior to the GOES satellites (See build article for Raspberry Pi GOES Satellite receiver) but is actually easier and cheaper to get started with and can be done many ways and on any budget.
These builds receive IMAGES of the weather vs. what you may get on your weather radio. NOAA Works on a lower frequency then GOES, less hardware is required, antenna can be built at home from wire coat hangers (not kidding) or a single trip to home depots Plumbing department. NOAA satellites are around 137MHz and GOES satellites are around 1.6GHz range. Needless to say, you are dealing with more losses and different hardware on the GOES. The GOES Satellites are geostationary, meaning, they appear to be in a constant position in the sky as they move at the same speed as earth. Much like Satellite TV satellites such as DirecTV and so on.
To build a NOAA weather satellite you will need a Raspberry Pi 3 or better. Raspberry Pi 4 might be overkill though. 3B model should be also fine. I would recommend a 32GB Micro SD storage card as you will need to store the images and so on. Be careful with larger cards as they are not officially supported and I had issues with running 64GB cards. My 2 cents, play it safe! You will also need a way to power it (5V power supply or USB port with enough current) and perhaps a case if you are building it for long term use.
You will also need a capable antenna to receive. There is a lot of information about this on the web. Some are simple, some are more complex. I use a home built QFH (Quadrifilar Helix) Antenna with a preamp but you can accomplish this with a lot less. Some said they had luck with the V-Dipole (Think of an old fashioned TV rabbit ear antenna), but I had terrible luck with these personally. Some may have better luck though. Construction of the Antenna type I use, can be found here:
- https://www.gregorystrike.com/2010/05/16/quadrifilar-helix-antenna-137-mhz/
- http://tinhatranch.com/how-to-build-a-qfh-quadrifilar-helix-antenna-to-download-images-from-weather-satellites/
An SDR dongle will be needed, nothing fancy. I had good luck with $15 dongles of course some may work better. The Airspy (~ $100) works a LOT better of course.
It is always a good idea to update your Raspberry Pi before installing anything new. You can do this with the following:
sudo apt-get updatesudo apt-get upgrade
sudo reboot
Now you can proceed! While I think VNC built in tool and SSH are nice, personally I like to use remote desktop from my windows machine to access them. This is done by running:
And there is literally nothing else to do on the RPi. On your PC, open the Remote Desktop Connection Application and enter the IP address of your Pi and follow the prompts for the username and password. It may give you a warning, depending on your windows this may look different but just proceed. All done!
I have based by install in large part on this instruction set but made a few changes/improvements to it.
Note: Since this was written, predict looks a little different.
In the script, make the following changes if you want to have the color images from the NOAA satellites:
In the file receive_and_process_satellite.sh change the last line before fi to this:
/usr/local/bin/wxtoimg -m ${3}-map.png -e MSA $3.wav $3_MSA.png/usr/local/bin/wxtoimg -m ${3}-map.png -e MCIR $3.wav $3_MCIR.png
/usr/local/bin/wxtoimg -m ${3}-map.png -e HVCT $3.wav $3_HVCT.png
You can call this up with sudo nano receive_and_process_satellite.sh once you are in the /home/pi/weather/predict folder if you follow the setup via the link above.
Once you reboot, schedule per instructions on the original setup page, you will have 3 images in the decodes folder plus the Wav audio file.
If you are like me, and you just let this unit run all the time dedicated to decoding images are they are coming in, you should likely map a folder to your regularly used PC/Mac so you can view your downloads anytime without having to login to your pi all the time.
If you would like to share a folder on your Raspberry Pi to be able to access it on your PC or Mac, you will need to install something called Samba. To add a Samba Server to your Raspberry Pi is pretty straight forward:
Click Y to allow it to install.
Next you either create the share or make note of the location you want to share in the next step. If you need to create a share:
This can be named anything and location can be different as well, just make sure you remember it. Next edit the config file:
Add these lines at the BOTTOM of the file:
The name shared can be replace with the name you want to use. Defaults are fine for most. Use the arrow to navigate down, Control-X to exit and Y to save.
You can always go back to this file to make changes and to add other shares or change the share permissions.
For chmod (permissions) just remember that 4 stands for reading rights, 2 stands for write, 1 stands for execute, and 0 stands for denied or no access. You use a combination of these. Therefore 7 is the combination of permissions 4+2+1 so can read, write, and also can execute, 5 is 4+0+1 read, no write, but can execute. Therefore the above permission give FULL control.
Now create a user:
Follow the instructions to set password. Restart what is needed using the following so changes take:
Next map the drive as you would normally on your PC or Mac, you should be able to navigate to your newly created share. You you do not know your IP address type:
This will give you an IP4 and an IP6 address. Likely starts with a 192.168.x.x or 10.x.x.x this is what you want. But you can also use the name of the Pi in many cases, this can be under preferences and Raspberry Pi configuration in the host name box.
If you want to auto start some process, like a script at the boot of the Raspberry pi, it can be done a few different ways.
This is perfect for those who have dedicated RPi units all over like me, and you want them to run a dedicated task unattended and resume even after a reboot or a power out for example.
Type atq to see what is schedules to make sure you will not miss passes!
So for this unit, since we want the weather satellites to be scheduled and updated even if the unit if off at midnight or loses power, I did the following:
sudo nano /home/pi/.bashrc Add these two lines on the BOTTOM of the script, Control-X to exit and Y to save, Then Reboot. echo Running at boot /home/pi/weather/predict/schedule_all.shOnce you are back at the command prompt:
ALL DONE! I hope you got something useful out of this and if so, drop me a line as well as any ideas you may have to improve this. I had good luck with this build and has been running for many months at the time of my writing.
Also please be sure to check out the Raspberry Pi for GOES satellites page for a slightly more advanced build. A touch more complicated but very rewarding!
In addition to this website of course, here are some other great places to find more information on the Raspberry Pi and related items:
- AdaFruit
- List of Ham Radio Applications for the RaspberryPi
- MagPi Magazine with a tone of great information
- ModMyPi
- Raspberrypi.org The Official site
- Raspberry Connect
- FlightAware PiAware setup instructions
- NooElec Store for alternative SDRs
- SparkFun