Skip to content
/ gr-pus Public

gr-pus: ECSS-E-ST-70-41C Packet Utilization Services C++ OOT blocks for GNURadio .

License

Notifications You must be signed in to change notification settings

gjg1976/gr-pus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alt text

gr-pus

The gr-pus OOT package incorporates the Packet Utilization Services ECSS-E-ST-70-41C interfaces and services into GNURadio.

Additional ad-hoc (application specific) services could easily be added later as OOT blocks.

The folder docs includes a document with the description and the user manual, in addition there is a sheet document with QA test cases tracking

This implementation is based in the AcubaSat one (https://github.com/AcubeSAT/ecss-services), but adapted to GNURadio and including full verification support, additional service types and message types.

Alt text

Because this package is for GNURadio and Linux, it is not intented to be a "flight software" as so. The "Flight software", as any critical softare, has a set of specific requirements, but those requirements have a clear objetive, and knowing the risks you could deviate them.

I found out that for certain cases where the risk is very low, it is far better to use Linux as O/S in a SoC instead of "flight" O/S such as RTEMS (which, by the way, the v3.10+ is not a "flight software" neither!) or Vxworks. Linux will simplify (time, money, etc) the development and testing process (no special tools, simulators, knowledge will be required!).

gr-pus is aimed to such cases (ie: SDR instruments)!

Installation

GNURadio 3.10 is required for this installation

Install the Embed Template Library:

git clone https://github.com/ETLCPP/etl.git
cd etl
git checkout <targetVersion>
cmake -B build .
sudo cmake --install build/

Install pySerial for the serial port block helper

pip3 install pyserial

or

sudo apt-get update -y
sudo apt install python3-serial

Install nlohmann for json parsing:

sudo apt-get update –y
sudo apt-get install -y nlohmann-json-dev

Configure the gr-pus restrains and limitations according to your needs editing the file:

gr-pus/include/gnuradio/pus/Definitions/ECSS_Definitions.h

And then install gr-pus:

git clone https://github.com/gjg/gr-pus.git
cd gr-pus
mkdir build 
cd build
cmake ..
make
sudo make install
sudo ldconfig

About

gr-pus: ECSS-E-ST-70-41C Packet Utilization Services C++ OOT blocks for GNURadio .

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published