
Qt-basierter digitaler Signalanalysator, basierend auf dem Suscan-Kern und der Sigutils-DSP-Bibliothek
SigDigger ist ein kostenloser digitaler Signalanalysator für GNU/Linux und macOS, der dazu entwickelt wurde, Informationen aus unbekannten Funksignalen zu extrahieren. Es unterstützt eine Vielzahl von SDR-Geräten über SoapySDR und ermöglicht die einstellbare Demodulation von FSK-, PSK- und ASK-Signalen, das Dekodieren von analogem Video, die Analyse von Burst-Signalen und das Abhören analoger Sprachkanäle (alles in Echtzeit).

Wir klonen develop nicht mehr. Alle vier Projekte (SigDigger, SuWidgets, Suscan und Sigutils) halten die neuesten funktionierenden Änderungen im master-Zweig.
Möglicherweise möchten Sie zunächst einen Blick in das Benutzerhandbuch werfen.
SigDigger ist ein GUI-Werkzeug, das als Wrapper für niedrigere Bibliotheken wie Suscan und Sigutils dient, und daher müssen Sie diese Abhängigkeiten zuerst erstellen. Wenn Sie Kopfschmerzen vermeiden und sofort mit SigDigger arbeiten möchten, probieren Sie eine der folgenden Möglichkeiten:
Laden Sie den neuesten Entwicklungs-Build als eigenständige AppImage-Datei herunter (nur GNU/Linux)
Fordern Sie ein individuelles .dmg an (nur macOS-Benutzer, ich muss diese auf Anfrage erstellen, da ich derzeit keine Apple-Maschine besitze und von Version zu Version kleine Anpassungen vorgenommen werden müssen)
Bauen Sie aus den Quellen und installieren Sie systemweit (allgemein Unix):
% git clone --recursive https://github.com/BatchDrake/sigutils
% cd sigutils && mkdir -p build && cd build && cmake .. && make && sudo make install && cd ../..
% git clone --recursive https://github.com/BatchDrake/suscan
% cd suscan && mkdir -p build && cd build && cmake .. && make && sudo make install && cd ../..
% git clone https://github.com/BatchDrake/SuWidgets
% cd SuWidgets && qmake6 SuWidgetsLib.pro && make && sudo make install && cd ..
% git clone https://github.com/BatchDrake/SigDigger
% cd SigDigger && qmake6 SigDigger.pro && make && sudo make install && cd ..
Lassen Sie das blsd-Skript alle diese Details für Sie erledigen (GNU/Linux). Dieses Skript baut SigDigger in einem Verzeichnis unterhalb des aktuellen Arbeitsverzeichnisses (es wird nichts systemweit installiert). Dieses Verzeichnis kann überall dort platziert werden, wo Sie möchten, und enthält ein Skript, das SigDigger startet.
% wget https://actinid.org/blsd
% chmod a+x blsd
% ./blsd
blsd übergeben, um festzulegen, welche Plugins heruntergeladen und mit SigDigger gebündelt werden sollen. Die Namen der Plugins sind einfach die Namen der Repositories in meinem GitHub-Konto, aus denen der Code geholt wird. Ich empfehle das wegen seiner Vielseitigkeit, aber Sie sollten sich vielleicht auch , und ansehen.Nach Jahren der Arbeit mit SDR-Software wurde mir klar, dass Gqrx die beste Benutzeroberfläche von allen hatte: minimalistisch und dennoch funktional. Frühere Versionen der Benutzeroberfläche waren etwas anders, aber nach vielem Debuggen kam ich zu dem Schluss, dass es besser wäre, einfach zu versuchen, vorhandene (und erfolgreiche) Software nachzuahmen, um die Lernkurve auf den neuen Funktionsumfang zu reduzieren.
Ihnen wird auffallen, dass das Spektrum-Widget Gqrx sehr ähnlich sieht. Das liegt daran, dass das Spektrum-Widget tatsächlich das von Gqrx mit einigen minimalen Änderungen ist (wie Unterstützung für konfigurierbare Waterfall-Paletten oder ein OpenGL-Backend). Ich habe versucht, mein eigenes Waterfall-Widget in Suscan zu programmieren, und Xorg verbrauchte dabei die CPU, also erfinde ich das Rad nicht mehr neu: Ich habe beschlossen, das vorhandene Gqrx-Plotter-Widget zu erweitern, damit es zu SigDiggers Funktionsumfang passt.
Abgesehen vom UI-Layout und dem Plotter-Widget ähnelt SigDigger Gqrx nur wenig: Gqrx hängt von GNU Radio ab, während SigDigger ein Qt5-Frontend für Suscan ist. Die DSP-Ketten sind völlig unterschiedlich und das Thread-Modell von Suscan ist auf eine ganz bestimmte Reihe von Aufgaben optimiert.
SigDigger hängt von drei verschiedenen Projekten ab: Sigutils, Suscan und SuWidgets. Sie müssen diese Projekte auf Ihrem Computer bauen und installieren, bevor Sie SigDigger kompilieren.
Nachdem Sie Sigutils und Suscan erfolgreich gebaut haben, können Sie nun mit dem Bau von SuWidgets fortfahren. SuWidgets ist eine Qt5/Qt6-Grafikbibliothek, die alle benutzerdefinierten Widgets von SigDigger enthält. Um es zu bauen, stellen Sie sicher, dass mindestens das Qt5-Entwicklungsframework (>= 5.9) auf Ihrem System installiert ist, und führen Sie dann Folgendes aus:
% git clone https://github.com/BatchDrake/SuWidgets
% cd SuWidgets
% qmake SuWidgetsLib.pro
% make
% sudo make install
Wenn die obigen Schritte erfolgreich waren, stehen die Chancen gut, dass Sie auch SigDigger erfolgreich bauen können. Um SigDigger zu bauen, führen Sie Folgendes aus:
% git clone https://github.com/BatchDrake/SigDigger
% cd SigDigger
% qmake SigDigger.pro
% make
% sudo make install
Und um SigDigger auszuführen, geben Sie einfach Folgendes ein:
% SigDigger
Wenn der obige Befehl fehlschlägt, ist es möglich, dass SigDigger woanders installiert wurde, z. B. in /opt/SigDigger. In diesem Fall können Sie stattdessen versuchen, Folgendes auszuführen:
% /opt/SigDigger/bin/SigDigger
Vorkompilierte Releases finden Sie unter der Registerkarte „Releases" in diesem Repository. Derzeit sind diese Releases nur für x64-Linux gedacht (vorzugsweise Debian-ähnliche Distributionen) und wurden nur minimal getestet. Obwohl ich Pläne habe, Sigutils, Suscan und SigDigger auf andere Plattformen zu portieren, möchte ich zuerst eine stabile Codebasis haben, bevor ich weitergehe.
Selbstverständlich macht Ihr Feedback meine Arbeit leichter. Wenn Sie Probleme beim Bauen oder Verwenden von SigDigger haben, nutzen Sie einfach das fantastische Bug-Tracking-System von GitHub. Es funktioniert ziemlich gut und es ist für mich viel einfacher, den Überblick über die bestehenden Probleme zu behalten.
Ich freue mich auf Ihr Feedback! :)
73 de EA1IYR
Windows-Benutzer: Tut mir leid, Windows ist ein Chaos, ich besitze auch keine Windows-Maschinen, und es ist derzeit unmöglich, Windows-Builds zu gewährleisten, die alle DLL-Abhängigkeiten auf reproduzierbare Weise enthalten. Sie können versuchen, es selbst aus den Quellen zu bauen, obwohl ich in diesem Fall empfehle, den Schritten im Benutzerhandbuch zu folgen.