Skip to content

anoduck/rtl-sdr-scanner-cpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rtl-sdr-cpp scanner and recorder

This project contains rtl-sdr tool written in c to scan and record interesting frequencies. See video below for details.

This project is new version of rtl-sdr-scanner written in python.

An improvement over the previous version:

  • huge performance boost
  • support long time recordings
  • faster signals detection
  • save recordings as mp3

YouTube video

Prerequisites

You need gcc, cmake and some libraries to start the work. Install it before continue. For example on Debian based distribution run follow commands:

sudo apt-get install build-essential cmake libspdlog-dev librtlsdr-dev libsox-dev libsoxr-dev libliquid-dev

Configuration

Edit your configuration in file sources/config.cpp.

Build

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
cd ..

Run

./build/auto-sdr

Example

shajen@artemida:~/git/auto-sdr-cpp $ ./build/auto-sdr 
[2022-01-21 03:00:55.105] [auto-sdr] [info]     [main]        start app auto-sdr
[2022-01-21 03:00:55.105] [auto-sdr] [info]     [main]        build type: release
[2022-01-21 03:00:55.172] [auto-sdr] [info]     [rtl_sdr]     open device, index: 0, name: Generic RTL2832U OEM, serial: 00000001
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     ignored frequency ranges: 2
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     frequency range, start: 144.100.000 Hz, stop: 144.200.000 Hz, step:   0.000.000 Hz, bandwidth:   0.000.000 Hz
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     frequency range, start: 145.588.000 Hz, stop: 145.608.000 Hz, step:   0.000.000 Hz, bandwidth:   0.000.000 Hz
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     original frequency ranges: 1
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     frequency range, start: 144.000.000 Hz, stop: 146.000.000 Hz, step:   0.000.125 Hz, bandwidth:   2.048.000 Hz
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     splitted frequency ranges: 1
[2022-01-21 03:00:55.659] [auto-sdr] [info]     [rtl_sdr]     frequency range, start: 144.000.000 Hz, stop: 146.000.000 Hz, step:   0.000.125 Hz, bandwidth:   2.048.000 Hz
[2022-01-21 04:30:48.280] [auto-sdr] [info]     [rtl_sdr]     recording signal, frequency: 145.821.500 Hz, power:  18.61 dB ##############################
[2022-01-21 04:30:48.281] [auto-sdr] [info]     [recorder]    start recording frequency: 145.821.500 Hz
[2022-01-21 04:30:48.487] [auto-sdr] [info]     [rtl_sdr]     start stream
[2022-01-21 04:30:49.105] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.205] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.297] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.389] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.501] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.595] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.688] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.782] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.898] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:49.994] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.088] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.182] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.299] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.393] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.490] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.516] [auto-sdr] [info]     [rtl_sdr]     cancel stream
[2022-01-21 04:30:50.582] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.695] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:50.793] [auto-sdr] [info]     [recorder]    no signal
[2022-01-21 04:30:51.534] [auto-sdr] [info]     [rtl_sdr]     stop stream
[2022-01-21 04:30:51.536] [auto-sdr] [info]     [recorder]    stop recording
[2022-01-21 04:30:51.539] [auto-sdr] [info]     [mp3]         recording time: 0.00 s, too short, removing

All recorded frequencies are stored in ~/sdr/recordings/ directory by default.

Contributing

In general don't be afraid to send pull request. Use the "fork-and-pull" Git workflow.

  1. Fork the repo
  2. Clone the project to your own machine
  3. Commit changes to your own branch
  4. Push your work back up to your fork
  5. Submit a Pull request so that we can review your changes

NOTE: Be sure to merge the latest from upstream before making a pull request!

Donations

If you enjoy this project and want to thanks, please use follow link:

Support via PayPal

License

License

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 95.9%
  • CMake 2.7%
  • Dockerfile 1.4%