skysafe / gr-sigmf

GNURadio blocks to read, write, and modify SigMF datasets
Other
30 stars 11 forks source link

gr-sigmf: GNU Radio SigMF Blocks

This module contains blocks to read from and write to SigMF (the Signal Metadata Format) recordings in GNU Radio.

Currently gr-sigmf is best described as alpha software. Basic interactions work, but features are not complete and the API should be considered somewhat unstable. We welcome any feature requests or bug reports. Pull requests are fine too, but will be met with more success if you make an issue first.

Data correctness issues will be prioritized over reliability issues, which will in turn be prioritized over new feature development.

Spec Version

Note that gr-sigmf does not yet target version 1.0 of the SigMF specification. Once a SigMF 1.0 spec is finalized, this OOT module will be updated soon after.

Quick Start

Dependencies required:

To install dependencies on Ubuntu 18.04 LTS:

$ sudo apt install rapidjson-dev swig gnuradio libuhd-dev

To install from source:

$ git clone git@github.com:skysafe/gr-sigmf.git
$ cd gr-sigmf
$ mkdir build; cd build
$ cmake ..
$ make
$ sudo make install

To make a SigMF recording using an Ettus Research USRP:

$ sigmf-record --sample-rate 10e6 --freq 88.5e6 --gain 30 example.sigmf

Note that the gr-sigmf Python module is named gr_sigmf to avoid conflicts with the official GNURadio sigmf module. This is different from the typical GNU Radio OOT module convention, where the Python module would simply be named sigmf.

Design Principles

Contents

Roadmap

Near Future

Farther Future