This package offers a convenient way to parse and analyze I/Q files like those produced by an RTL-SDR dongle.
See this R vignette for a description of some use cases.
(this is the output of example.R)
See the embedded R help system for the full reference. Here is an overview of the available functions:
-
Load from (
iq::FromFile
) and save to (iq::ToFile
) plain or compressed binary files. -
Cut and resample a signal (
iq::Resample
). -
Extract ranges of complex I/Q values from the signal (
iq::SampleRange
) on-demand to avoid overloading the available memory. -
Compute some common operations over complex I/Q values (
iq::Magnitude
,iq::Phase
, etc.). -
Perform power spectrum analysis (
iq::Spectrum
andiq::Spectrogram
) of the signal using builtin (iq::Rectangular
,iq::Hamming
, etc.) or custom window functions.
Using devtools
:
devtools::install_github('cyrus-and/iq')
Although there are already a whole bunch of related software, I thought, as a newbie to the SDR world, that writing this library would be a good opportunity to both delve a bit into the unfamiliar topic of signal analysis and to gain some expertise on the R package development.
This is also an attempt to answer the question: "Well, I've captured something
with rtl_sdr
, now what?" which is probably obvious for
someone in the field but quite confusing for newcomers.