FAASGS: A Setup to Build a Fully Automatic Amateur and APT Weather Satellite Ground Station

Over on GitHub stdevPavelmc has released his software called FAASGS (Fully Automatic Amateur Satellite Ground Station). FAASGS is an open source program that allows RTL-SDR users to set up a satellite ground station that tunes, record and generate images for NOAA APT weather satellites, as well as records FM amateur radio satellites. The software runs on a single board computer such as a Raspberry Pi, however in the authors own setup he uses an Orange Pi Prime board. The features include:

  • Web interface to see the next passes, the recorded ones, and details for it.
  • Receive any satellite in FM mode (SSB is possible but no there is doppler control yet, so no SSB by now)
  • Record the satellite pass and keep the audio for later.
    • APT WX audio is preserved in wav format and 22050 hz of sampling (the format wximage needs to work with)
    • FM audio satellites is preserved in .mp3 mode but with high quality settings, and other tricks.
      • The spectrogram of the audio is embedded as album art (see below).
      • The pass data and receiving station are stored in the mp3 tags.
  • Automatic decode APT images from WX sats (NOAA 15, 18 and 19)
  • For the voice FM sats we craft a spectrogram and embedd the metadata of the pass on the image
FAASGS main screen showing recordings
FAASGS screen showing an FM amateur radio satellite pass

22 comments

  1. Pavel Milanes (CO7WT)

    FAASGS author here,

    Glad to see the warm testing/adoption, I just want to clarify that this was a own tool that I made to be able to record NOAA and SSTV from the ISS.

    It works on my setup, but when you let the dogs out… I had to face another scenarios and then the bugs you are seeing raises.

    Don; t worry, I will be updating the software on weekend style (remember this is a hobby), in fact I’m polishing some of the detected bugs right now, so stay tuned!

    Cheers

    • Marios

      I’ve been able to install the software on my raspberry pi following the guides on github. The first 4 passes of ISS, NOAA 15/18/19 worked great when I first start the program. The only issue I’m having is that the following passes aren’t added to the web interface and no new passes are scheduled or processed.

      Any help is greatly appreciated.

  2. David Carter

    One other thing it doesn’t look like you used sudo to do the install
    sudo make install
    sudo make permanent
    in the FAASGS directory as that’s what it looks like with mkdir: cannot create directory ‘/var/www’: Permission denied

    • Roy

      David – thanks for your help – but that’s not it. I went step by step through the install being very sure to use “sudo”, and even just did it again. Same results.

  3. David Carter

    Roy
    Did you do the install as root
    e.g
    sudo make install
    sudo make permanent
    and sudo ./sat.sh
    if not that will give you all those errors

    • Roy

      Did all those steps. still get the following:
      [email protected]:~/FAASGS $ sudo ./sat.sh
      Updating data and scheduling new sats
      Fresh data fetched, updating the good file
      Filtering the sats we need and set simple names
      ./sat.sh: line 301: /usr/bin/jq: No such file or directory
      ./sat.sh: line 48: /usr/bin/jq: No such file or directory

      • David Carter

        Hi Roy
        Still trying to get mine working as well. As I get things sorted am passing the info on so hopefully will get there.
        Did you do this step. sudo apt-get install jq
        Have also just found an error in the cron file. Run sudo crontab -e and remove the word ‘root’
        If it’s the first time you have run crontab then it will ask you which editor you want to use.
        Probably more to come.

  4. David Carter

    Did you do the install as root
    e.g
    sudo make install
    sudo make permanent
    and sudo ./sat.sh
    if not that will give you all those errors

  5. Klaus

    I have installed it on a Pi 3. When I start sat.sh I got the following error :
    Updating data and scheduling new sats
    Fresh data fetched, updating the good file
    Filtering the sats we need and set simple names
    => ISS (ZARYA)/ISS
    ./sat.sh: line 89: [: file: integer expression expected
    => RADFXSAT (FOX-1B)/AO91-FOX-1B
    ./sat.sh: line 89: [: file: integer expression expected
    => FOX-1CLIFF (AO-95)/AO95-FOX-1CLIFF
    ./sat.sh: line 89: [: file: integer expression expected
    => FOX-1D (AO-92)/AO92-FOX-1D
    ./sat.sh: line 89: [: file: integer expression expected
    => DIWATA-2B/PO101-DIWATA-2B
    ./sat.sh: line 89: [: file: integer expression expected
    => NOAA 19/NOAA19
    ./sat.sh: line 89: [: file: integer expression expected
    => NOAA 18/NOAA18
    ./sat.sh: line 89: [: file: integer expression expected
    => NOAA 15/NOAA15
    ./sat.sh: line 89: [: file: integer expression expected

    Any sugesstion ?

    Regards

    Klaus

    • Pavel Milanes (CO7WT)

      Can be but is not on the ROADMAP now, if some Windows Guru wanna try it Has my Full cooperation

      (FAASGS author here)

      • Roy

        I’ve tried the install on two rpi’s, and now I get the following:
        [email protected]:~/FAASGS $ ./sat.sh
        Updating data and scheduling new sats
        mkdir: cannot create directory ‘/var/www’: Permission denied
        /etc/sat_data/data_temp.txt: Permission denied
        Can’t fetch fresh TLE data, using old one
        ./sat.sh: line 30: /var/www/html/sat/passes.txt: Permission denied
        ./sat.sh: line 48: /usr/bin/jq: No such file or directory

        • David Carter

          Hi Roy
          Havre just built the system on another pi and can replicate you problem. think it’s down to the missing directory /usr/bin/jq not sure why it’s missing or how it gets there at the moment but will let you know if I find the solution. On the original pi I was using the directory is there but how it got there I don’t know.

Leave a Reply to Klaus Cancel reply

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.