Over on Twitter and his github.io page, Pieter Noordhuis (@pnoordhuis) has shared details about his low cost RTL-SDR based GOES satellite receiving setup. GOES 15/16/17 are geosynchronous weather satellites that beam back high resolution weather images and data. In particular they send beautiful high resolution 'full disk' images which show one side of the entire earth. As the satellites are in geosynchronous orbit, they are quite a bit further away from the earth. So compared to the more easily receivable low earth orbit satellites such as the NOAA APT and Meteor M2 LRPT satellites, a dish antenna, good LNA and possibly a filter is required to receive them. However fortunately, as they are in a geosynchronous orbit, the satellite is in the same position in the sky all the time, so no tracking hardware is required.
In the past we've seen people receive these images with higher end SDRs like the Airspy and SDRplay. However, Pieter has shown that it is possible to receive these images on a budget. He uses an RTL-SDR, a 1.9 GHz grid dish antenna from L-Com, a Raspberry Pi 2, the NooElec 'SAWBird' LNA, and an additional SPF5189Z based LNA. The SAWBird is a yet to be released product from NooElec. It is similar to their 1.5 GHz Inmarsat LNA, but with a different SAW filter designed for 1.7 GHz GOES satellites. The total cost of all required parts should be less than US $200 (excluding any shipping costs).
Pieter also notes that he uses the stock 1.9 GHz feed on the L-com antenna, and that it appears to work fine for the 1.7 GHz GOES satellite frequency. With this dish he is able to receive all three GOES satellites at his location with the lowest being at 25 degrees elevation. If the elevation is lower at your location he mentions that a larger dish may be required. It may be possible to extend the 1.9 GHz L-Band dish for better reception with panels from a second cheaper 2.4 GHz grid dish, and this is what @scott23192 did in his setup.
For software Pieter uses the open source goestools software that Pieter himself developed. The software is capable of running on the Raspberry Pi 2 and demodulating and decoding the signal, and then fully assembling the decoded signal into files and images.
Over on his blog USA-Satcom has released his XRIT (LRIT/HRIT) decoder for GOES satellites. The software requires a licence and costs $100 USD. GOES-13 (East), GOES-15 (West) and the new GOES-16 are geosynchronous orbiting satellites that broadcast very nice high resolution weather images of the entire visible disk of the earth. The transmit their LRIT/HRIT signals at about 1.7 GHz at fairly weak power, which means that a good LNA and dish set up is critical to be able to receive them. A dish size of about 1 meter, or an equivalent grid or Yagi is recommended as the lowest starting point.
USA-Satcom’s decoder is Windows based and comes with a nice GUI. Some portions of the code are based on the Open Satellite Project created by Lucas Teske. It currently supports the Airspy R2/Mini and the SDRplay RSP2 software defined radios.
The software is not free, it costs $100 USD for the licence. To help curb illegal distribution of his software which has been rampant in the past, USA-Satcom also requests that you show some proof of a working setup which is capable of receiving the GOES signal before inquiring about the software.
If you are also interested, USA-Satcom did an interesting talk at Cyberspectrum a few months ago, and he has also recently uploaded his slides.
Over on his blog Lucas Teske has been comparing the LNA4ALL and an SPF5189 LNA from eBay on HRIT/LRIT reception from GOES satellites. SPF5189 LNA’s can be found on eBay for less than $8 USD, with free shipping from China, whereas the LNA4ALL costs 27 Euros shipped from Croatia. GOES is a geosynchronous orbit weather satellite which requires a satellite dish or other high gain antenna to receive. It downlinks at about 1.7 GHz, which means that a high quality LNA with low noise figure and good PCB design is needed for reception.
In his post Lucas mentions how he saw a review on eBay stating that the SPF5189 did not work at L-band. However, he found that odd as all of his SPF5189 LNA’s seemed to work just fine with L-band reception. So he did a benchmark comparing the SPF5189 to the PSA5043+ based LNA4ALL which is known to work well on L-band.
From his comparisons he found that the SPF5189 does indeed work well on L-band, and is comparable to the LNA4ALL. He concludes that the reviewer must have received a bad unit, or didn’t know what he was doing.
Lucas also makes an important note regarding the PCB design of these LNA’s. Even though the SPF5189 and PSA5043 chips have similar specs, with LNA’s the design of the PCB is crucial, as a poor design can significantly degrade performance. With the LNA4ALL you can be sure that the design is good, although the SPF5189 LNA’s currently on eBay look to be designed okay as well. Though with some eBay sellers there is no guarantee that you will receive a good board. We note that we have seen some really poor designs for PSA5043 LNA’s out there as well.
Back in October/November of last year Lucas Teske showed us how to receive weather satellite images from the GOES line of geostationary satellites with an Airspy SDR (and possibly an RTL-SDR too), dish antenna and the decoding software that he created.
On November 19, 2016 the next generation GOES 16 (aka GOES-R) satellite was launched by NASA. GOES 16 is a little different to the older GOES satellites as it has better sensors and is capable of capturing and transmitting a new image every 15 minutes which is quite fast. Thus a different and higher bandwidth RF transmission protocol called HRIT (High Rate Information Transfer) is used, compared to the LRIT (Low Rate Information Transfer) signal used on the older satellites.
The images being sent right now seem to just be relays of other similar satellites like Himawari-8 and Meteosat, as it seems that they are still testing the satellite. The relayed images received via GOES 16 received by Lucas can be seen on the Open Satellite Project twitter feed and on Lucas’ personal twitter feed.
GOES is an L-band geosynchronous weather satellite service that can be received typically with a satellite dish. It produces very nice full disk images of the earth. In the past we’ve posted about Lucas Teske’s work in building a GOES receiving system from scratch (including the software decoder for Airspy and RTL-SDR receivers), devnullings post about receiving GOES and also this talk by @usa_satcom on decoding GOES and similar satellites.
Over on Twitter @usa_satcom has been tweeting about his experiments where he has been successfully receiving GOES L-Band weather satellite images with a small grid antenna and an Airspy Mini. In a Tweet he writes that the antenna is an $85 USD Hyperlink 1.9 GHz 22 dBi Grid Antenna made by L-com. A grid antenna may be more suitable for outdoor mounting for many people as they are typically lighter, smaller and more suitable for windy and snowy conditions. As the GOES satellite is in geosynchronous orbit, no tracking motor or tracking mount is required.
In his latest two posts Lucas Teske continues with his series about receiving and downloading weather satellite images from the GOES satellites. In past posts he’s show us how to receive the signal with a satellite dish and Airspy or RTL-SDR (part 1), how to demodulate the signal (part 2), and how to extract frames from the demodulated signal (part 3). Lucas has recently completed his series with parts 4 and 5 having just been uploaded.
In part 4 Lucas shows how to parse the frames and get the packets which will ultimately be used to generate the weather image files. His post explains how to de-randomize the frame data which is initially randomized to improve performance, how to add Reed Solomon error correction, how to demux the virtual channels and the packets and finally how to save the raw packet.
In part 5 Lucas shows us how to finally generate weather satellite images from the GOES satellites. He notes that there is a problem with the LritRice compression method used by NOAA, because the library is currently broken on Linux. So he made a workaround which involved making a Windows application that runs through Wine for decompressing the data. Once the files are decompressed he uses the xrit2pic program which can open the generated .lrit files and convert them into images.
In the future Lucas mentions that he will write a user guide to his LRIT decoder, and make the whole decoding process more user friendly for people who do not care so much about the actual decoding process. Below are some images that Lucas was able to receive with his system.
Yesterday we posted about Lucas Teskes (@lucasteske) success in building a demodulator for the GOES weather satellite. Before that he also showed us how to build an antenna system to receive GOES with an Airspy or RTL-SDR dongle.
Today Lucas continues with part three of his series on GOES decoding. This time he shows how he has built a frame decoder to process the output of the demodulator, and also gives us a link to his code. The decoder is written in C code. Lucas’ post explains how to sync the frame by detecting the preamble, perform convolution encoding to generate a parity and help correct any errors, and decode the frame data.
In part four Lucas will show us how to parse the frame data and extract the packets which will eventually form an image file of the earth.
Last week we posted about Lucas Teske’s (@lucasteske) experience with setting up an antenna system that can receive the geostationary GOES weather satellites. He set up a dish antenna, feed, LNA and filter and was able to successfully receive the GOES signal with an RTL-SDR and Airspy.
In order to demodulate the signal Lucas wrote a BPSK demodulator in GNU Radio. His post goes into good technical detail and shows exactly how the demodulator is constructed. Basically the the BPSK signal is first decimated down to 2.5e6, normalized with an AGC, then cleaned up with a Root Raised Cosine Filter. From there the signal goes through a Costas Loop PLL to receover the carrier wave, then a Clock Recovery MM block to recover the symbol clock. The data is then output to a TCP pipe for the decoder.
In the upcoming third part of his article Lucas will show us how to actually turn the demodulated data into an image of the earth.