A software defined radio capture library in python
Project description
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
- Obtain pyproject.toml & poetry.lock
- 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
- Support all rtlsdr.rtlsdr.BaseRtlSdr API options
- Support asyncio streaming
- Support/ expand TCP server client functions -> rtlsdr.rtlsdrtcp
- Add compliant encryption for data at rest, data in air
- Add on more advanced data transformation, interpolation, sniffing and analysis features
In general: 0. Solid support for receive only functionality cross SDR's
- GNU Radio integration/ experimentation
- GUI client app?
SDR devices to add (not in order): 0.
- USRP B200mini: https://www.ettus.com/all-products/usrp-b200mini/
- USRP B205mini-i:
- hackRF One: https://www.amazon.com/dp/B0BKH7Z2NJ/
- ADALM Pluto
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sdrcap-0.0.1.tar.gz
.
File metadata
- Download URL: sdrcap-0.0.1.tar.gz
- Upload date:
- Size: 18.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5+ Linux/6.9.3-76060903-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 408e8074003b7fc7b249d30d76b39dfb0643da11c11058489dd6d066f4f87e44 |
|
MD5 | 7d01888a71cb2950b850e54ffd13e637 |
|
BLAKE2b-256 | 8865d4dde6b7f28f35f396d485eaa71074ff17ce94fafb13877ba0f6ff646680 |
File details
Details for the file sdrcap-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: sdrcap-0.0.1-py3-none-any.whl
- Upload date:
- Size: 20.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5+ Linux/6.9.3-76060903-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 795a74f2a8fb5d44010506f2f99628567d34f0613b2f3bb37797bd8d20c51c67 |
|
MD5 | afff1d243592ed7ffd61d7ffda7b8652 |
|
BLAKE2b-256 | 692456211f98027aab163ceec5a18284ef3ab72a167d7e13e5efb9b122e31f26 |