gr-satnogs/apps/flowgraphs
Manolis Surligas de8ba5b768 Automatically generate flowgraphs with GRCC
This commit adds GRCC into the CMake build system and creates the
executables from the .grc files on demand.

Because there is always the case that the gr-satnogs has not
been installed yet in the system, we still ship the auto-generated
from our side executables. In next releases, during the install
target, the GRCC and the executables generation, will be called
after the gr-satnogs is installed.
2019-12-24 00:29:24 +02:00
..
satellites Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
CMakeLists.txt Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
README.md Add example flowgraph and documentation 2018-04-27 11:32:07 +03:00
afsk1200_ax25.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
bpsk_ax25.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
cw_decoder.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
example_flowgraph.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
fsk_ax25.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
iq_receiver.grc Fix faulty generated flowgraphs 2019-12-23 17:48:32 +02:00
satnogs_afsk1200_ax25.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
satnogs_bpsk_ax25.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
satnogs_cw_decoder.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
satnogs_example_flowgraph.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
satnogs_fsk_ax25.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00
satnogs_iq_receiver.py Automatically generate flowgraphs with GRCC 2019-12-24 00:29:24 +02:00

README.md

SatNOGS flowgraphs

This directory contains all the available flowgraphs that can be executed from the satnogs-client.

Contribution guide

Flowgraphs are placed inside the apps/flowgraphs directory. If a decoding flowgraph targets only specific satellite/mission, the flowgraph should be placed inside the apps/flowgraphs/satellites directory.

Each flowgraph should have a representative name (eg voyager_decoder) and both the GNU Radio file (.grc) and the generated pythons script should be available. Python auto-generared flowgraph scripts should have the satnogs_ prefix. This can be performed by setting properly the ID field of the Options block of the flowgraph. For example the voyager_decoder.grc should generate a python executable named satnogs_voyager_decoder.py

NOTE:: Custom python GNU Radio scripts are not allowed. Each flowgraph should be able to be generated from the corresponding .grc file.

All generated python scripts should be installed using the CMake build system. To do so, edit properly the apps/CMakeLists.txt or apps/flowgraphs/satellites/CMakeLists.txt file.

In the apps/flowgraphs directory, the is an example flowgraph called example_flowgraph.grc that can be used as a base.

Execution arguements interface

The stanogs-client and the gr-satnogs communicate through a set of predefined command line arguments. Depending the decoding flowgraph, additional arguments may exist or missing. However, there is a set of mandatory arguments.

  • --antenna: The name of the antenna to use
  • --dev-args: SDR device specific arguments
  • --bb-gain: Baseband gain
  • --if-gain: Intermediate frequency gain
  • --rf-gain: RF gain
  • --ppm: The PPM correction
  • --rx-freq: RX frequency
  • --rx-sdr-device: The RX SDR device identification name (e.g uhd, airspy, etc)
  • --rigctl-port: The rigctld port
  • --doppler-correction-per-sec: Number of Doppler corrections per second
  • --lo-offset: Offset from the desired center frequency. The flowgraph should tune the SDR with this offset from the center frequency and digitally compensate it. This eliminate the problem of the DC leakage, expressed in the majority of the SDR devices.