SatNOGS GNU Radio Out-Of-Tree Module
Go to file
Sebastian 71be84ac85 Added module
Added sync detection to module
2019-07-30 20:32:16 +02:00
apps Fix resampling ratio 2019-07-19 22:48:43 +03:00
cmake Include GrVersion.cmake module so the git version can be extracted 2018-11-27 16:03:15 +02:00
docs Several minor improvements 2018-01-21 22:23:22 +02:00
examples Remove obsolete examples 2018-03-20 20:40:13 +02:00
grc Added module 2019-07-30 20:32:16 +02:00
include/satnogs Added module 2019-07-30 20:32:16 +02:00
lib Added module 2019-07-30 20:32:16 +02:00
libfec Add libfec as external project 2018-03-24 21:43:18 +02:00
python Update hw_settings.py to add support for USRP1 2019-07-20 00:50:33 +03:00
swig Added module 2019-07-30 20:32:16 +02:00
.gitignore Add a generic clear text message sink. 2016-01-24 21:43:17 +02:00
.gitlab-ci.yml Start the implementation of a generic frame synchronizer 2018-12-02 00:48:14 +02:00
CMakeLists.txt Bump up version to 1.5.1 2019-07-03 15:41:08 +03:00
CONTRIBUTORS.md Add contributors list and update versioning scheme 2019-07-30 20:32:16 +02:00
LICENSE Update and rename LICENSE.md to LICENSE 2016-01-07 18:52:51 +02:00
MANIFEST.md Create the README and the OOT module structure. 2016-01-07 21:24:51 +02:00
README.md Update README.md 2019-07-18 23:35:35 +03:00

README.md

gr-satnogs: SatNOGS GNU Radio Out-Of-Tree Module

gr-satnogs is an out-of-tree GNU Radio module that provides all the necessary tools for decoding signals from various scientific and academic sattelites.

Install

Requirements

  • GNU Radio ( > 3.7.7 )
  • CMake ( > 3.1)
  • G++ (with C++11 support)
  • VOLK
  • libogg
  • libvorbis
  • libpng
  • libpng++
  • git
  • swig

Optional

  • gr-osmocom (for using the flowgraphs with real SDR hardware)
  • libfec (it will automatically installed if not present)

Debian / Ubuntu

apt install -y build-essential cmake gnuradio g++    \
               python-mako python-six libogg-dev     \
               libvorbis-dev libpng-dev libpng++-dev \
               swig
cd /tmp
git clone https://github.com/gnuradio/volk.git
cd volk
mkdir build
cd build
cmake ..
make -j $(nproc --all)
sudo make install

Installation from source

  1. git clone https://gitlab.com/librespacefoundation/satnogs/gr-satnogs.git
  2. cd gr-satnogs
  3. mkdir build
  4. cd build
  5. cmake ..
  6. make -j $(nproc --all)
  7. sudo make install

If this is the first time you are building the gr-satnogs module run sudo ldconfig

Advanced

By default, the SatNOGS module will use the default installation prefix. This highly depends on the Linux distribution. You can use the CMAKE_INSTALL_PREFIX variable to alter the default installation path. E.g:

cmake -DCMAKE_INSTALL_PREFIX=/usr ..

Also, by default the build system enables a set of blocks used for debugging during the development. The enable/disable switch is controled through the INCLUDE_DEBUG_BLOCKS boolean variable. If for example, you want to disable the debugging blocks, the CMake command would be:

cmake -DINCLUDE_DEBUG_BLOCKS=OFF ..

Another common control option is the library sugffix of the Linux distribution. There are distributions like Fedora, openSUSE, e.t.c that the their 64-bit version use the lib64 folder to store the 64-bit versions of their dynamic libraries. On the other hand, distributions like Ubuntu do the exact opposite. They use lib directory for the libraries of the native architecture and place the 32-bit versions on the lib32 directory. In any case the correct library directory suffix can be specified with the LIB_SUFFIX variable. For example:

cmake -DLIB_SUFFIX=64 -DCMAKE_INSTALL_PREFIX=/usr -DINCLUDE_DEBUG_BLOCKS=OFF ..

will install the libraries at the /usr/lib64 directory.

Website

For more indormation about SatNOGS please visit our site.

Release Policy

The gr-satnogs OOT module uses the major.api-compatibility.minor versioning scheme. is used by the satnogs-client, so the release and versioning policy is based on how the satnogs client is affected by the changes on the gr-satnogs software.

  • Minor changes, bug fixes or improvements that do not affect in anyway the satnogs-client advance the minor version.
  • The api-compatibility indicates changes that require modifications on satnogs-client but do not brake the backwards compatibility (e.g a new satallite decoder). In other words, the satnogs-client should continue to operate normally without any modifications. Changes on satnogs-client should be performed only to integrate the new features.
  • major version advances when the changes break backwards compatibility with the satnogs-client.

For every release change a tag with the corresponding version is created. Releases can be retrieved by the tags page.

License

© 2016,2017,2018 Libre Space Foundation.

Licensed under the GPLv3.