Skip to main content

SDRCAP

A software defined radio recording library in python.

Organized as a Python Pip Poetry project. Currently only limited support for RTL-SDR via pyrtlsdr package with others to be added.

Setup

Installing

  1. Obtain pyproject.toml & poetry.lock
  2. in root of project, run
poetry install

Both toml and lock files are currently version controlled

Running

Try out the example!

poetry run python examples/example_usage.py

In general, the library is organized around you calling the library -> hardware device interface -> functions We define the hardware device interface in the python file and class name:

For RTLSDRv4 devices:

from sdrcap import rtl_interface 

Output

Currently the recording output supports CSV and HDF5 filetypes.

Dependencies

setuptool is needed for MACOS to import packages

A environment setting script is set to bind the poetry environments rtlsdrlib but shouldn't be necessary if you are explicitly doing:

poetry run python ${target}

instead of:

poetry shell
python ${target}

due to differences in potential python environments. If you want to use it run:

source set_env.sh

then run:

sudo -E python ${target}

where -E attached to sudo retains the environment variable you sourced from the shell script.

TODO's

For RTLSDR: 0. Support multiple devices

  1. Support all rtlsdr.rtlsdr.BaseRtlSdr API options
  2. Support asyncio streaming
  3. Support/ expand TCP server client functions -> rtlsdr.rtlsdrtcp
  4. Add compliant encryption for data at rest, data in air
  5. Add on more advanced data transformation, interpolation, sniffing and analysis features

In general: 0. Solid support for receive only functionality cross SDR's

  1. GNU Radio integration/ experimentation
  2. GUI client app?

SDR devices to add (not in order): 0.

  1. USRP B200mini: https://www.ettus.com/all-products/usrp-b200mini/
  2. USRP B205mini-i:
  3. hackRF One: https://www.amazon.com/dp/B0BKH7Z2NJ/
  4. ADALM Pluto

Metadata

Release files for sdrcap 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sdrcap 0.0.1
File Size Uploaded
sdrcap-0.0.1.tar.gz 18.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sdrcap 0.0.1
File Interpreter ABI Platform
sdrcap-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 38.5 kB

Release files / sdrcap-0.0.1.tar.gz

Download URL sdrcap-0.0.1.tar.gz
Size 18.1 kB
Tags Source
SHA-256 checksum
How to use checksums
408e8074003b7fc7b249d30d76b39dfb0643da11c11058489dd6d066f4f87e44
BLAKE2b-256 checksum
How to use checksums
8865d4dde6b7f28f35f396d485eaa71074ff17ce94fafb13877ba0f6ff646680
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.5+ Linux/6.9.3-76060903-generic

Release files / sdrcap-0.0.1-py3-none-any.whl

Download URL sdrcap-0.0.1-py3-none-any.whl
Size 20.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
795a74f2a8fb5d44010506f2f99628567d34f0613b2f3bb37797bd8d20c51c67
BLAKE2b-256 checksum
How to use checksums
692456211f98027aab163ceec5a18284ef3ab72a167d7e13e5efb9b122e31f26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.5+ Linux/6.9.3-76060903-generic

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page