daniestevez / gr-satellites

GNU Radio decoder for Amateur satellites
GNU General Public License v3.0
790 stars 163 forks source link
ccsds decoder fec gnuradio satellite sdr telemetry

gr-satellites

GitHub release (latest by date) Conda Read the Docs GitHub license

gr-satellites is a GNU Radio out-of-tree module encompassing a collection of telemetry decoders that supports many different Amateur satellites. This open-source project started in 2015 with the goal of providing telemetry decoders for all the satellites that transmit on the Amateur radio bands.

It supports most popular protocols, such as AX.25, the GOMspace NanoCom U482C and AX100 modems, an important part of the CCSDS stack, the AO-40 protocol used in the FUNcube satellites, and several ad-hoc protocols used in other satellites.

This out-of-tree module can be used to decode frames transmitted from most Amateur satellites in orbit, performing demodulation, forward error correction, etc. Decoded frames can be saved to a file or displayed in hex format. For some satellites the telemetry format definition is included in gr-satellites, so the decoded telemetry frames can be printed out as human-readable values such as bus voltages and currents. Additionally, some satellites transmit files such as JPEG images. gr-satellites can be used to reassemble these files and even display the images in real-time as they are being received.

gr-satellites can be used as a set of building blocks to implement decoders for other satellites or other groundstation solutions. Some of the low level blocks in gr-satellites are also useful for other kinds RF communications protocols.

Documentation

gr-satellites documentation is hosted in reathedocs.io.

Releases and branches

Currently there are the following series of releases in the history of gr-satellites:

The repository is organized in the following branches:

In general, pull requests should be submitted to main.

Installation

The installation procedure of gr-satellites is roughly the usual of a GNU Radio out-of-tree module. Detailed instructions about the required dependencies and how to build and install gr-satellites are given in the documentation.

Support

Support for gr-satellites is handled only through Github issues and Github discussions so that the whole community can benefit, rather than through private channels such as email. Please understand this when asking for support. Take a look here to check whether a new topic fits better in the issues page or in the discussions page.

Satellite teams

Satellite teams interested in using gr-satellites for your groundstation solution, please read this note, especially if you will be using Amateur radio spectrum.

Commercial satellites

This note describes the policy of the gr-satellites project with respect to code contributions that add support for commercial satellite missions.

CCSDS TM and TC Space Datalink and SpacePacket blocks

Athanasios Theocharis made under ESA Summer of Code in Space 2019 a collection of blocks covering several CCSDS blue books. The documentation for this blocks can be found in CCSDS_README.md.