All Projects → BatchDrake → Sigdigger

BatchDrake / Sigdigger

Qt-based digital signal analyzer, using Suscan core and Sigutils DSP library

Projects that are alternatives of or similar to Sigdigger

Gqrx
Software defined radio receiver powered by GNU Radio and Qt.
Stars: ✭ 1,934 (+472.19%)
Mutual labels:  sdr, qt
Qspectrumanalyzer
Spectrum analyzer for multiple SDR platforms (PyQtGraph based GUI for soapy_power, hackrf_sweep, rtl_power, rx_power and other backends)
Stars: ✭ 677 (+100.3%)
Mutual labels:  sdr, qt
Qcefview
A QWidget encapsulating the CEF named QCefView
Stars: ✭ 279 (-17.46%)
Mutual labels:  qt
Hplayer
A multi-screen player using Qt + FFmpeg.
Stars: ✭ 330 (-2.37%)
Mutual labels:  qt
Redhawk
A submodule repository for distributing REDHAWK artifacts and the latest REDHAWK source code. Use 'git clone --recurse-submodules [email protected]:RedhawkSDR/redhawk.git' to also clone all submodules.
Stars: ✭ 310 (-8.28%)
Mutual labels:  sdr
Qt Inspector
Utility to browse the Qt object tree of a running Qt application and edit object properties on the fly.
Stars: ✭ 288 (-14.79%)
Mutual labels:  qt
Symphytum
Symphytum Personal Database Software
Stars: ✭ 311 (-7.99%)
Mutual labels:  qt
Johnny
GUI frontend to John the Ripper password cracker
Stars: ✭ 277 (-18.05%)
Mutual labels:  qt
Powertabeditor
A cross-platform guitar tablature editor.
Stars: ✭ 334 (-1.18%)
Mutual labels:  qt
Qtnproperty
Extended properties for Qt5
Stars: ✭ 303 (-10.36%)
Mutual labels:  qt
Rdm Builder
Redis Desktop Manager Builder
Stars: ✭ 320 (-5.33%)
Mutual labels:  qt
Aqemu
Official AQEMU repository - a GUI for virtual machines using QEMU as the backend
Stars: ✭ 301 (-10.95%)
Mutual labels:  qt
Ttkwidgettools
QWidget 自定义控件集合 持续更新中......
Stars: ✭ 296 (-12.43%)
Mutual labels:  qt
Lan Share
Cross platform LAN File transfer application built with Qt C++ framework
Stars: ✭ 317 (-6.21%)
Mutual labels:  qt
Nbaseuikit
个人平时使用的一些Qt编写的组件(有部分是整合的开源作品,部分是自己原创);
Stars: ✭ 286 (-15.38%)
Mutual labels:  qt
Mbpmid2010 gpufix
MBPMid2010_GPUFix is an utility program that allows to fix MacBook Pro (15-inch, Mid 2010) intermittent black screen or loss of video. The algorithm is based on a solution provided by user fabioroberto on MacRumors forums.
Stars: ✭ 334 (-1.18%)
Mutual labels:  qt
Eiskaltdcpp
File sharing program using DC and ADC protocols
Stars: ✭ 277 (-18.05%)
Mutual labels:  qt
Qxmpp
Cross-platform C++ XMPP client and server library
Stars: ✭ 300 (-11.24%)
Mutual labels:  qt
Qt Python Binding Examples
Lots of simple and Pythonic PySide demos
Stars: ✭ 312 (-7.69%)
Mutual labels:  qt
Psi
XMPP client
Stars: ✭ 337 (-0.3%)
Mutual labels:  qt

SigDigger - The free digital signal analyzer

Now for Qt and C++14!

SigDigger is the continuation project for the already-deprecated Suscan. GTK+3.0 ended up falling short (especially in terms of performance) and exposing Suscan's API to C++ paid off.

The set of features is more or less the same, with few things missing (like estimators, the FAC analysis or the Berlekamp-Massey algorithm... working on it, still trying to figure out the UI) and a lot of additions, like a realtime audio inspector, sample recorder, realtime 6Msps channel inspection (AirSpy tested), LSE-based SNR calculator or gain presents. I tried to make it as customizable as Suscan, but I'm still a Qt newbie, so expect bugs!

Wait, why does it look like Gqrx?

Because I'm a terrible person. Also, because after dealing with a lot of software of the sort, I realized that Gqrx had the best UI of them all: minimalistic yet operative. Earlier versions of the UI were somewhat different, but after a lot of debugging I came to the conclusion that it would be better off if I just tried to mimic existing (and successful) software, reducing the learning curve to the new feature set.

You may notice that the spectrum widget looks a lot like Gqrx's. This is because the specturm widget is actually Gqrx's with minimal modifications (like support for configurable Waterfall palettes). I tried to code my own Waterfall widget in Suscan and Xorg ended up hogging the CPU, so I'm not reinventing the wheel anymore: I decided to extend the existing Gqrx's Plotter widget so it fits SigDigger's set of features.

Apart from the UI layout and the plotter widget, SigDigger bears little resemblance to Gqrx: Gqrx depends on GNU Radio, while SigDigger is a Qt5 frontend for Suscan. The DSP chains are totally different and Suscan's thread model is optimized for a very specific set of tasks.

How am I supposed to compile this?

SigDigger depends on three different projects: Sigutils, Suscan and SuWidgets. You need to build and install these projects in your computer prior to compile SigDigger.

  • Sigutils build instructions can be found here.
  • Suscan build instructions can be found here.

Before even attempting to run cmake, you may want to decide which branch you want to build. If you build from master (this is the default for SigDigger and all its dependencies), you will get a fresh executable of the latest stable release of SigDigger. If you build from develop (by running git fetch origin develop and git checkout develop in all four projects, right after git clone), you will get SigDigger with the latest experimental features. Plese note that the develop branch is still under validation, so if you want to build from it, expect bugs, inconsistent behaviors and crashes. Any feedback is welcome though.

After successfully building Sigutils and Suscan, you can now proceed to build SuWidgets. SuWidgets is Qt 5 graphical library containing all SigDigger's custom widgets. In order to build it, ensure you have the Qt 5 (>= 5.9) development framework installed in your system and then run:

% git clone https://github.com/BatchDrake/SuWidgets
% cd SuWidgets
% qmake SuWidgetsLib.pro
% make
% sudo make install

If you the above steps were successful, chances are that you will success on building SigDigger too. In order to build SigDigger, do:

% git clone https://github.com/BatchDrake/SigDigger
% cd SigDigger
% qmake SigDigger.pro
% make
% sudo make install

And, in order to run SigDigger, just type:

% SigDigger

If the command above fails, it is possible that you got SigDigger installed somewhere else, like /opt/SigDigger. In that case, you can try to run instead:

% /opt/SigDigger/bin/SigDigger

Precompiled releases

You can find precompiled releases under the "Releases" tab in this repository. For the time being, these releases are meant for x64 Linux only (preferably Debian-like distributions) and have been minimally tested. Although I have plans to port Sigutils, Suscan and SigDigger to other platforms, I'd like to have a stable codebase before going any further.

Obviously, your feedback will make my job easier. If you experience any issues building or using SigDigger, go ahead and use the fantastic GitHub's bug tracking system. It works pretty well and it is way easier for me to keep track of the existing issues.

Looking forward for your feedback! :)


73 de EA1IYR

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].