jvankatwijk / swradio-8 Goto Github PK
View Code? Open in Web Editor NEWshortwave receiver for use with sdrplay, hackrf, dabsticks and pmsdr
License: GNU General Public License v2.0
shortwave receiver for use with sdrplay, hackrf, dabsticks and pmsdr
License: GNU General Public License v2.0
Close bracket function and change colon to semicolon.
I have started the swradio-9-x86_64.AppImage on Ubuntu 22.04. Unfortunately the audio output is muted ( setting "default" ). What could be the reason for this ?
I just installed the latest release (setup-swradio.exe
) on Windows-10. But it crashed at exit:
swradio_8_0+0x1cb9
swradio_8_0+0x51512
swradio_8_0+0x115a
swradio_8_0+0x13d6
ntdll!RtlQueryPerformanceCounter+0x12b
KERNEL32!BaseThreadInitThunk+0x19
ntdll!__RtlUserThreadStart+0x2f
ntdll!_RtlUserThreadStart+0x1b
The offending instruction:
eax=00000000 ebx=00000001 ecx=9b467140 edx=00000000 esi=04086c70 edi=04085980
eip=00401cb9 esp=025efd60 ebp=025efe18 iopl=0 nv up ei pl nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00210202
swradio_8_0+0x1cb9:
00401cb9 f0830201 lock add dword ptr [edx],1 ds:002b:00000000=????????
Locking something at [0]
?!
Was able to build this in Qt Creator on a Mac in Catalina and the required packages from Homebrew.
Modify swradio-8.pro's unix section (at the bottom) as follows:
# LIBS += -L/usr/lib64
# LIBS += -L/lib64
INCLUDEPATH += /usr/local/include /usr/local/lib/qwt.framework/Headers
QMAKE_LFLAGS += -F/usr/local/opt/qwt/lib -L/usr/local/lib
LIBS += -framework qwt -lsndfile -lsamplerate -lportaudio -lusb-1.0 -lfftw3f -ldl
Modify the radio handler to use 'dylib' instead of 'so', otherwise it won't recognise the radio, e.g. in rtlsdr-handler.cpp
// Handle = dlopen ("librtlsdr.so", RTLD_NOW);
Handle = dlopen ("librtlsdr.dylib", RTLD_NOW);
Should be a more elegant way of doing this using defines, but this works for now.
That said, am using an RTL-SDR v3 and it seems like it's not going into direct sampling for HF. Works in VHF, even though there's no WFM demodulator. I will look at setting direct sampling next.
I already had built fftw, and had it installed in /usr/local
Prior to trying to build this on a Mac M1 Silicon, using QT 6.3.1 I did the following
Build fails due to <SampleRate.h> not found.
Unsure which project supplies this.... can anyone suggest which project
When running the AppImage I get the following error message
error report libmir_sdr.so: cannot open shared object file: No such file or directory
I have installed libmirisdr0 on my Ubuntu 18.04 machine but to no effect.
Building for PMSDR (yes, I have one of these) break the build big-time since radio.cpp
has this:
#ifdef HAVE_EXTIO
#include "extio-handler.h"
#elif HAVE_PMSDR
#include "pmsdr-handler.h"
#else
#ifdef HAVE_SDRPLAY
#include "sdrplay-handler.h"
#endif
...
Note the #else
part. No header past that point gets included. So is PMSDR support supposed to be built with no other devices?
AFAICS it should be:
--- a/radio.cpp 2022-08-26 11:58:26
+++ b/radio.cpp 2022-08-26 17:56:02
@@ -46,9 +46,10 @@
#include "filereader.h"
#ifdef HAVE_EXTIO
#include "extio-handler.h"
-#elif HAVE_PMSDR
+#endif
+#ifdef HAVE_PMSDR
#include "pmsdr-handler.h"
-#else
+#endif
#ifdef HAVE_SDRPLAY
#include "sdrplay-handler.h"
#endif
What a joke.
I really want to try this out, but when i start the program (windows 11) it opens and shows me the selection of sdr-devices.. if i choose rtlsdr the following error message will be shown in the command line window:
"Failed to open rtlsdr"
No further details.
I just installed it with the setup which is in the release.
In SDR-Console and sdr++ my sdr sticks are both working fine.
Any idea? :(
I am having some problems with compiling, just like I mentioned on SDR-J-FM, this is hell to compile. It would be great if you can put out an appimage to ensure that there won't be problems on the many Linux distributions that are out there. In any case here is my error. (Ubuntu 20.04)
In file included from main.cpp:29:
radio.h:31:10: fatal error: fm-constants.h: No such file or directory
31 | #include "fm-constants.h"
| ^~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:2251: main.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from various/popup-keypad.cpp:26:
./radio.h:31:10: fatal error: fm-constants.h: No such file or directory
31 | #include "fm-constants.h"
| ^~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:2430: popup-keypad.o] Error 1
output/upconverter.cpp: In member function ‘void upConverter::handle(DSPCOMPLEX*, int32_t)’:
output/upconverter.cpp:65:12: warning: unused variable ‘res’ [-Wunused-variable]
65 | int res = src_process (src_converter, src_data);
| ^~~
bandplan.cpp: In member function ‘const QString bandPlan::getFrequencyLabel(uint32_t)’:
bandplan.cpp:17:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<bandElement>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
17 | for (int i = 0; i < labelTable. size (); i ++) {
This looks like a super interesting program and I’d love to use it with sdrplay equipment. At a quick glance it appears maybe this is written for the older sdrplay api available a few years ago and not the more recent 3.X series API? Any chance that if this is the case you’d have time to update to use it?
Getting source from GIT repo swradio don't compile on Ubuntu 20.04 - 64 bit with this error:
/usr/lib/qt5/bin/moc -DGITHASH="9b775f9" -DHAVE_SDRPLAY -DHAVE_RTLSDR -DHAVE_AM_DECODER -DHAVE_SSB_DECODER -DHAVE_CW_DECODER -DHAVE_AMTOR_DECODER -DHAVE_PSK_DECODER -DHAVE_RTTY_DECODER -DHAVE_MFSK_DECODER -DHAVE_FAX_DECODER -DHAVE_DRM_DECODER -DESTIMATOR_1 -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_CORE_LIB --include /mnt/Prog/ham/sdr-j/swradio-8/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/mnt/Prog/ham/sdr-j/swradio-8 -I/mnt/Prog/ham/sdr-j/swradio-8 -I/mnt/Prog/ham/sdr-j/swradio-8/decimators -I/mnt/Prog/ham/sdr-j/swradio-8/filters -I/mnt/Prog/ham/sdr-j/swradio-8/various -I/mnt/Prog/ham/sdr-j/swradio-8/output -I/mnt/Prog/ham/sdr-j/swradio-8/scopes-qwt6 -I/mnt/Prog/ham/sdr-j/swradio-8/devices -I/mnt/Prog/ham/sdr-j/swradio-8/devices/filereader -I/mnt/Prog/ham/sdr-j/swradio-8/decoders -I/usr/include/qwt -I/mnt/Prog/ham/sdr-j/swradio-8/devices/sdrplay-handler -I/mnt/Prog/ham/sdr-j/swradio-8/devices/rtlsdr-handler -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/am-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/ssb-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/cw-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/amtor-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/psk-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/rtty-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/mfsk-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/fax-decoder -I/usr/include/fdk-aac -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/ofdm -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/signal-handling -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/signal-handling/eq-1 -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/support -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/parameters -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/msc -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/sdc -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/fac -I/mnt/Prog/ham/sdr-j/swradio-8/decoders/drm-decoder/data -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/9 -I/usr/include/c++/9/x86_64-redhat-linux -I/usr/include/c++/9/backward -I/usr/lib/gcc/x86_64-redhat-linux/9/include -I/usr/local/include -I/usr/include radio.h -o moc_radio.cpp
usr/include/c++/9/bits/stl_relops.:67: Parse error at "std"
make: *** [Makefile:866: moc_radio.cpp] Errore 1
As you can see g++ is version is
g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
and moc is
moc 5.12.8
Compiling source from swradio-8-8.1.tar.gz (without errors) or using latest Appimage libmir_sdr.so is required:
error report libmir_sdr.so: impossibile aprire il file oggetto condiviso: File o directory non esistente
and there is no such library with API version 3.0.7
So 2 different problems:
Regards
Franco Spinelli
IW2DHW
building via cmake
ft8-decoder.cpp:461: undefined reference to `reporterWriter::addMessage(std::__cxx11::basic_string<char, std::char_traits, std::allocator >
ft8-decoder.cpp:468: undefined reference to `identityDialog::identityDialog(QSettings*, QWidget*)'
pack-handler.cpp:137: undefined reference to `vtable for packHandler'
Due to the file https://github.com/JvanKatwijk/swradio-8/blob/master/decoders/fax-decoder/:1
,
a git clone https://github.com/JvanKatwijk/swradio-8.git .
fails on Windows. It's illegal to have a :
in a filename.
And I see this is really a .cpp source file which does not seems to be part of this project. Please delete it.
Or do you recommend all Windows users to switch to Linux?
Is there a way to configure direct sampling for devices such as the RTL_SDR Blog v3?
#LIBS += -L/usr/lib64
#LIBS += -L/lib64
#INCLUDEPATH += /usr/include/qt5/qwt
INCLUDEPATH += /usr/local/include /usr/local/lib/qwt.framework/Headers
QMAKE_LFLAGS += -F/usr/local/opt/qwt-qt5/lib -L/usr/local/lib
#LIBS += -lqwt -lrt -lsndfile -lsamplerate -lportaudio -lusb-1.0 -lfftw3f -ldl
LIBS += -framework qwt -lsndfile -lsamplerate -lportaudio -lusb-1.0 -lfftw3f -ldl
Wondering if it just makes sense to add a macx{} and linux-*{} section with the Mac- and Linux-specific lines, keeping the common parts to both in the unix{} section as follows:
unix {
exists ("./.git") {
GITHASHSTRING = $$system(git rev-parse --short HEAD)
!isEmpty(GITHASHSTRING) {
message("Current git hash = $$GITHASHSTRING")
DEFINES += GITHASH=\\\"$$GITHASHSTRING\\\"
}
}
isEmpty(GITHASHSTRING) {
DEFINES += GITHASH=\\\"------\\\"
}
DESTDIR = ./linux-bin
#CONFIG += sdrplay-v3
#CONFIG += sdrplay
#CONFIG += hackrf
CONFIG += rtlsdr
#CONFIG += pmsdr
#CONFIG += cardReader
CONFIG += am-decoder
CONFIG += ssb-decoder
CONFIG += cw-decoder
CONFIG += amtor-decoder
CONFIG += psk-decoder
CONFIG += ft8-decoder
CONFIG += rtty-decoder
CONFIG += fax-decoder
CONFIG += drm-decoder-fdk
#CONFIG += test-decoder
CONFIG += sdk_no_version_check
}
macx {
INCLUDEPATH += /usr/local/include /usr/local/lib/qwt.framework/Headers
QMAKE_LFLAGS += -F/usr/local/opt/qwt-qt5/lib -L/usr/local/lib
LIBS += -framework qwt -lsndfile -lsamplerate -lportaudio -lusb-1.0 -lfftw3f -ldl
}
linux-* {
LIBS += -L/usr/lib64
LIBS += -L/lib64
INCLUDEPATH += /usr/include/qt5/qwt
LIBS += -lqwt -lrt -lsndfile -lsamplerate -lportaudio -lusb-1.0 -lfftw3f -ldl
}
Also had to add an include reference for QPen in the following sources in scopes-qwt6: audio-scope.cpp, scope.cpp, and spectrum-scope.cpp:
#include <qpen.h>
For reference, using qt@5 (v5.15.5) and qwt-qt5 (v6.2.0) from Homebrew.
Hi,
I tried to compile swradio-8, but got this error:
In file included from radio.h:37,
from main.cpp:29:
ui_newradio.h:23:10: fatal error: qwt_plot.h: Datei oder Verzeichnis nicht gefunden
23 | #include "qwt_plot.h"
| ^~~~~~~~~~~~
compilation terminated.
What to do?
Best greetings
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.