All Projects → AlexandreRouma → Sdrplusplus

AlexandreRouma / Sdrplusplus

Licence: gpl-3.0
Cross-Platform SDR Software

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Sdrplusplus

PothosSoapy
Pothos framework support for software defined radio hardware.
Stars: ✭ 26 (-89.92%)
Mutual labels:  sdr
Opensatelliteproject
Open Satellite Project Information
Stars: ✭ 265 (+2.71%)
Mutual labels:  sdr
Localradio
📻 LocalRadio is "Radio for Cord-Cutters" – a Software-Defined Radio (SDR) app for your Mac and mobile devices. With an inexpensive RTL-SDR USB device, LocalRadio provides a casual, home-based radio listening experience for your favorite local frequencies - FM broadcasts/free music/news/sports/weather/public safety & aviation scanner/etc.
Stars: ✭ 269 (+4.26%)
Mutual labels:  sdr
Jcolor
An easy syntax to format your strings with colored fonts and backgrounds.
Stars: ✭ 255 (-1.16%)
Mutual labels:  cross-platform
Tray
Cross-platform, super tiny C99 implementation of a system tray icon with a popup menu.
Stars: ✭ 262 (+1.55%)
Mutual labels:  cross-platform
Deer
✏️A modern, fast, beautiful note taking app, built on Electron and React
Stars: ✭ 267 (+3.49%)
Mutual labels:  cross-platform
supersdr
SuperSDR: an advanced KiwiSDR client with CAT transceiver integration
Stars: ✭ 21 (-91.86%)
Mutual labels:  sdr
Easy Sdr
This project is about creation of affordable and easy-to-manufacture prototypes of PCBs which are used to expand the capabilities of existing low-cost SDR receivers based on RTL2832U chip.
Stars: ✭ 275 (+6.59%)
Mutual labels:  sdr
Cloaker
Simple, drag-and-drop, password-based file encryption
Stars: ✭ 267 (+3.49%)
Mutual labels:  cross-platform
Ofelia
A real-time cross-platform creative coding tool for multimedia development
Stars: ✭ 269 (+4.26%)
Mutual labels:  cross-platform
Project lemonlime
为了 OI 比赛而生的基于 Lemon + LemonPlus 的轻量评测系统 | 三大桌面系统支持
Stars: ✭ 255 (-1.16%)
Mutual labels:  cross-platform
Megaglest Source
MegaGlest real-time strategy game engine (cross-platform, 3-d)
Stars: ✭ 259 (+0.39%)
Mutual labels:  cross-platform
Fusillade
An opinionated HTTP library for Mobile Development
Stars: ✭ 269 (+4.26%)
Mutual labels:  cross-platform
rfsoc qpsk
PYNQ example of using the RFSoC as a QPSK transceiver.
Stars: ✭ 42 (-83.72%)
Mutual labels:  sdr
Ribbon
🎀 A simple cross-platform toolbar/custom input accessory view library for iOS & macOS.
Stars: ✭ 273 (+5.81%)
Mutual labels:  cross-platform
LeanHRPT-Decode
An easy to use HRPT decoder.
Stars: ✭ 28 (-89.15%)
Mutual labels:  sdr
Easyloggingpp
Single header C++ logging library. It is extremely powerful, extendable, light-weight, fast performing, thread and type safe and consists of many built-in features. It provides ability to write logs in your own customized format. It also provide support for logging your classes, third-party libraries, STL and third-party containers etc.
Stars: ✭ 3,032 (+1075.19%)
Mutual labels:  cross-platform
Liblava
🌋 A modern and easy-to-use library for the Vulkan API
Stars: ✭ 275 (+6.59%)
Mutual labels:  cross-platform
Scrap
📸 Screen capture made easy!
Stars: ✭ 273 (+5.81%)
Mutual labels:  cross-platform
Rtl 433
Program to decode radio transmissions from devices on the ISM bands (and other frequencies)
Stars: ✭ 3,379 (+1209.69%)
Mutual labels:  sdr

SDR++, The bloat-free SDR software

Screenshot SDR++ is a cross-platform and open source SDR software with the aim of being bloat free and simple to use.

Linux Build

Features

  • Wide hardware support (both through SoapySDR and dedicated modules)
  • SIMD accelerated DSP
  • Cross-platform (Windows, Linux, OSX and BSD)
  • Full waterfall update when possible. Makes browsing signals easier and more pleasant

Comming soon

  • Digital demodulators and decoders
  • Light theme (I know you weirdos exist lol)
  • Waterfall color scheme editor
  • Switchable fft size
  • other small customisation options

Installing

Windows

Download the latest release from the Releases page and extract to the directory of your choice.

To create a desktop short, rightclick the exe and select Send to -> Desktop (create shortcut), then, rename the shortcut on the desktop to whatever you want.

Linux

Download the latest release from the Releases page and extract to the directory of your choice.

Then, run:

sudo apt install libfftw3-dev libglfw3-dev libglew-dev libvolk2-dev libsoapysdr-dev libairspyhf-dev libiio-dev libad9361-dev librtaudio-dev libhackrf-dev
sudo dpkg -i sdrpp_debian_amd64.deb

If libvolk2-dev is not available, use libvolk1-dev.

MacOS

TODO

BSD

TODO

Building on Windows

Install dependencies

  • cmake
  • vcpkg
  • PothosSDR (This will install libraires for most SDRs)
  • rtaudio

After this, install the following depencies using vcpkg:

  • fftw3
  • glfw
  • glew

Building

mkdir build
cd build
cmake .. "-DCMAKE_TOOLCHAIN_FILE=C:/Users/Alex/vcpkg/scripts/buildsystems/vcpkg.cmake" -G "Visual Studio 15 2017 Win64"
cmake --build . --config Release

Create a new root directory

./create_root.bat

Running for development

If you wish to install SDR++, skip to the next step

You will first need to edit the root_dev/config file to point to the modules that were built. Here us a sample if what it would look like:

...
"modules": [
    "./build/radio/Release/radio.dll",
    "./build/recorder/Release/recorder.dll",
    "./build/rtl_tcp_source/Release/rtl_tcp_source.dll",
    "./build/soapy_source/Release/soapy_source.dll",
    "./build/audio_sink/Release/audio_sink.dll"
]
...

You also need to change the location of the resource and module directories, for development, I recommend:

...
"modulesDirectory": "../root_dev/modules",
...
"resourcesDirectory": "../root_dev/res",
...

Remember that these paths will be relative to the run directory.

Off cours, remember to add entries for all modules that were built and that you wish to use.

Next, from the top directory, you can simply run:

./build/Release/sdrpp.exe -r root_dev

Or, if you wish to run from the build directory:

./Release/sdrpp.exe -r ../root_dev

Installing SDR++

If you chose to run SDR++ for development, you do not need this step. First, copy over the exe and DLLs from build/Release/ to root_dev.

Next you need to copy over all the modules that were compiled. To do so, copy the DLL file of the module (located in its build folder given below) to the root_dev/modules directory and other DLLs (that do not have the exact name of the modue) to the root_dev directory.

The modules built will be some of the following (Repeat the instructions above for all you wish to use):

  • build/radio/Release/
  • build/recorder/Release/
  • build/rtl_tcp_source/Release/
  • build/spyserver_source/Release/
  • build/soapy_source/Release/
  • build/airspyhf_source/Release/
  • build/plutosdr_source/Release/
  • build/audio_sink/Release/

Building on Linux / BSD

Install dependencies

  • cmake
  • fftw3
  • glfw
  • glew
  • libvolk

Next install dependencies based on the modules you wish to build:

  • soapy_source: SoapySDR + drivers for each SDRs (see SoapySDR docs)
  • airspyhf_source: libairspyhf
  • plutosdr_source: libiio, libad9361
  • audio_sink: librtaudio-dev

Note: make sure you're using GCC 8 or later as older versions do not have std::filesystem built-in.

Building

replace <N> with the number of threads you wish to use to build

mkdir build
cd build
cmake ..
make -j<N>

Create a new root directory

sh ./create_root.sh

Running for development

If you wish to install SDR++, skip to the next step

First run SDR++ from the build directory to generate a default config file

./sdrpp -r ../root_dev/

Then, you need to edit the root_dev/config file to point to the modules that were built. Here us a sample if what it would look like:

...
"modules": [
    "./build/radio/radio.so",
    "./build/recorder/recorder.so",
    "./build/rtl_tcp_source/rtl_tcp_source.so",
    "./build/soapy_source/soapy_source.so",
    "./build/audio_sink/audio_sink.so"
]
...

Note: You can generate this list automatically by running find . | grep '\.so' | sed 's/^/"/' | sed 's/$/",/' | sed '/sdrpp_core.so/d' in the build directory.

You also need to change the location of the resource and module directories, for development, I recommend:

...
"modulesDirectory": "./root_dev/modules",
...
"resourcesDirectory": "./root_dev/res",
...

Remember that these paths will be relative to the run directory.

Off cours, remember to add entries for all modules that were built and that you wish to use.

Next, from the top directory, you can simply run:

./build/sdrpp -r root_dev

Or, if you wish to run from the build directory, you need to correct directories in config.json, and:

./sdrpp -r ../root_dev

Installing SDR++

Coming soon!

Contributing

Feel free to issue pull request and report bugs via the github issues. I will soon publish a contributing.md listing the code style to use.

Credits

Patrons

Contributors

Libaries used

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].