Skip to main content

Python tools to read/write Digital RF data in HDF5 format

Project description

The Digital RF project encompasses a standardized HDF5 format for reading and writing of radio frequency data and the software for doing so. The format is designed to be self-documenting for data archive and to allow rapid random access for data processing.

This package includes:

  • digital_rf Python package
  • Tools for managing and processing Digital RF data
  • gr_digital_rf Python package for interfacing with GNU Radio
  • GNU Radio Companion blocks
  • thor.py UHD radio recorder script
  • Example scripts and applications

Digital RF C and MATLAB libraries can be found at the official source code repository. To build from source, you must have the HDF5 library and headers installed.

For help and/or questions, contact the user mailing list.

GNU Radio Configuration

If you plan on using Digital RF with GNU Radio, make sure to run the pip command in the same Python environment that your GNU Radio installation uses so that GNU Radio can find the packages. Depending on your GNU Radio installation, it may be necessary to add the Digital RF blocks to your GRC blocks path by creating or editing the GRC configuration file

Unix (local):$HOME/.gnuradio/config.conf
Windows (local):
 %APPDATA%/.gnuradio/config.conf
Unix (global):/etc/gnuradio/conf.d/grc.conf
Custom (global):
 {INSTALL_PREFIX}/etc/gnuradio/conf.d/grc.conf

to contain:

[grc]
local_blocks_path = {PIP_PREFIX}/share/gnuradio/grc/blocks

(replacing {PIP_PREFIX} with the pip installation prefix, “/usr/local” for example).

Example Usage

The following code will load and read data located in a directory “/data/test”.

Load the module and create a reader object:

import digital_rf as drf
do = drf.DigitalRFReader('/data/test')

List channels:

do.get_channels()

Get data bounds for channel ‘cha’:

s, e = do.get_bounds('cha')

Read first 10 samples from channel ‘cha’:

data = do.read_vector(s, 10, 'cha')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for digital-rf, version 2.6.5
Filename, size File type Python version Upload date Hashes
Filename, size digital_rf-2.6.5-cp27-cp27m-macosx_10_9_x86_64.whl (4.3 MB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27m-manylinux1_i686.whl (1.7 MB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27m-manylinux1_x86_64.whl (1.8 MB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27mu-manylinux1_i686.whl (1.7 MB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27mu-manylinux1_x86_64.whl (1.8 MB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27m-win32.whl (270.1 kB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp27-cp27m-win_amd64.whl (269.0 kB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp36-cp36m-macosx_10_9_x86_64.whl (4.3 MB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp36-cp36m-manylinux1_i686.whl (1.7 MB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp36-cp36m-manylinux1_x86_64.whl (1.8 MB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp36-cp36m-win32.whl (271.4 kB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp36-cp36m-win_amd64.whl (271.2 kB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp37-cp37m-macosx_10_9_x86_64.whl (4.3 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp37-cp37m-manylinux1_i686.whl (1.7 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp37-cp37m-manylinux1_x86_64.whl (1.8 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp37-cp37m-win32.whl (271.4 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp37-cp37m-win_amd64.whl (271.2 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp38-cp38-macosx_10_9_x86_64.whl (4.3 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp38-cp38-manylinux1_x86_64.whl (1.8 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp38-cp38-win32.whl (271.6 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size digital_rf-2.6.5-cp38-cp38-win_amd64.whl (271.4 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size digital_rf-2.6.5.tar.gz (1.2 MB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page