Hacking, HAM Radio (EA1IYR), DSP, physics and more
SigDigger is a graphical, digital signal analyzer I wrote for GNU/Linux and Qt 5.11.2. Unlike existing alternatives, SigDigger is not based on GNU Radio. Instead, it uses its own DSP library (namely Sigutils) and a realtime DSP library (Suscan) that exploits multicore CPUs to distribute load. Also, SigDigger supports most SDR devices in the market thanks to SoapySDR. Sigutils, Suscan and SigDigger are software libre, licensed under the terms of the General Public License version 3.
SigDigger works in x86-64 CPUs running GNU/Linux. I don’t have specific performance figures yet, but I am able to demodulate GSM signals with AirSpy Mini at 6 Ms/s (48 Mbit/s) and realtime, in a small Core i5 laptop at 2.7 GHz.
There are plans to port SigDigger to other operating systems and architectures. Both Suscan and Sigutils have been successfully built and run in armhf Linuxes (i.e. Raspberry Pi) in the past, but official support is on its way.
There are no plans to support Windows in the near future. There are some reasons for this: a) I don’t have any version of WIndows installed in any of my computers at home b) Both sigutils and suscan depend on libraries that are tied to unix systems c) Apart from SigDigger, both Sigutils and Suscan depend a lot on Autotools, which are also tied to Unix systems.
This is a whole new problem and requires careful addressing. This does not mean that I will not accept a port: if you are an experience Windows developer and loves porting software, your help will be greately appreciated :)
The following features are present in the Suscan core, but their exposition to the UI is in progress:
The following features have been presented in one of my talks, but they are not implemented neither in Suscan nor in SigDigger (yet):
The following features are in an optimistic TODO, but they wil hopefully be part of SigDigger some day in the future:
This is work in progress, and some help will also be appreciated (see below).
The easiest and most useful thing you can do is to use it, distribute it, talk about it! Try it with different devices and configurations, force its limits, break it. All feedback will guide my effort into something that is useful for everyone.
If you found SigDigger useful and miss some documentation on the software, that’s another way you can help. I’ll make it available in this website.
If you are a programmer and you want to help, I would be happy to explain the internals to you and guide you along the process. You can also provide patches, improvements and bugfixes as pull requests in GitHub.
If you are good with languages and would like to do some translation work on SigDigger, you are welcome as well! As none of SigDigger components are internationalized yet, it will take me some to give you a list of strings you can translate. But if you are truly willing to do this, I will not mind prioritizing this before other tasks.
All help, of any kind, will be dully noted in the credits window.