-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for SDRplay RSP receivers #84
Conversation
I'm trying to use this patch, but (with or without this patch) I'm getting a segfault:
I've tried using both the latest release and git versions of both soapysdr and soapysdrplay and can't get around this issue. Which versions of soapysdr and soapysdrplay are you using? Edit, also getting lots of these errors before it segfaults:
|
Joshua, For SoapySDR I am using version 0.8.0 - I built it directly from the github repo back in December, and these are the last two commits I see:
For SoapySDRPlay I am using the version from here: https://github.com/SDRplay/SoapySDRPlay/tree/dual-tuner-submodes (please note that this is not the master branch, but the 'dual-tuner-submodes' branch, in order to be able to run the RSPduo as two independent receivers, as opposed to diversity reception) - I wrote that code too, so if there's a bug there, I can definitely help you with that. I also saw crashes similar to the one you are reporting when the SDRplay API function 'sdrplay_api_Init()' fails for some reason. In that case the SoapySDRPlay driver should write out an error message like this:
Another place to look at is your '/var/log/messages' file, because the SDRplay API writes messages there (especially if debug mode is turned on). These messages contain the string 'sdrplay', so you should be able to see them with Let me know what you find out, and we can go from there. Franco |
Thanks for the help. I see this in the log before it segfaults:
I tried switching to https://github.com/SDRplay/SoapySDRPlay/#branch=dual-tuner-submodes (as well as just plain https://github.com/SDRplay/SoapySDRPlay/) and had the same result. The main branch I've been using, though, is https://github.com/pothosware/SoapySDRPlay. |
I've found that by forcibly setting the sample rate to 10,000,000 things start to work. I'm running an RSP1A.
Previously it was selecting 6,000,000 |
Joshua, Last night before going to bed (I live in Florida), I updated SoapySDR to the latest code from git, and it worked for me, so it's probably not SoapySDR itself. I ran all my tests using an RSPduo (unfortunately I don't have the RSP1A), and I was able to stream in 'linhpsdr' using any of the modes that RSPduo has. I just took a quick look at the README for the repository you are using (https://github.com/pothosware/SoapySDRPlay), and, if I understand correctly, that SoapySDRPlay driver still uses the old version 2.X of the SDRplay API - all the work I've done is based on the newer version 3.X (I think the current version is 3.07) of the SDRplay API. Also judging from the few 'sdrplay_api' messages from '/var/log/messages', I think you are running with the sdrplay_api debug mode turned off. Franco |
Same segmentation problem here with SDRPlay RSP1 with Ubuntu 18.04 and new Ubuntu 20.04. full_rx_buffer: channel=0 fexchange0: error=-2 And sometime, after this errors, segmentation error. I have removed my sdrPlay.props file without any change in program behavior On console, before full_rx_buffer messages, there is: ` (linhpsdr:174886): Pango-WARNING **: 11:09:04.529: Invalid UTF-8 string passed to pango_layout_set_text() (linhpsdr:174886): Pango-WARNING **: 11:09:04.538: Invalid UTF-8 string passed to pango_layout_set_text() (linhpsdr:174886): Pango-WARNING **: 11:09:04.581: Invalid UTF-8 string passed to pango_layout_set_text() (linhpsdr:174886): Pango-WARNING **: 11:09:04.605: Invalid UTF-8 string passed to pango_layout_set_text() (linhpsdr:174886): Pango-WARNING **: 11:09:26.859: Invalid UTF-8 string passed to pango_layout_set_text() (linhpsdr:174886): Pango-WARNING **: 11:09:26.885: Invalid UTF-8 string passed to pango_layout_set_text() And, after starting discovered device: ` (linhpsdr:174886): Pango-WARNING **: 11:10:36.915: Invalid UTF-8 string passed to pango_layout_set_text() Any tip? Regards Franco Spinelli |
Franco, The best and easiest way to figure out where they happen and why is to compile 'linhpsdr' with all the debug symbols (just add the '-g' flag), run it, make sure it creates a core dump when it has a segmentation fault, and then use 'gdb' on the core dump to see where it crashed (I use the 'gdb' command 'where' to print that out; also 'gdb' is very useful to inspect the variable values that might have lead to the crash). If you need help with these steps, please let me know, and I'll be happy to answer your questions. Ciao, |
I have done ulimit -c as suggested by John and this command give me 0 as answer After this I recompile with -g flag. Regards |
"ulimit -c unlimited" will let you get a core dump.
…-- John
On Wed, 4 Nov 2020, 13:27 frspin, ***@***.***> wrote:
I have done ulimit -c as suggested by John and this command give me 0 as
answer
So I need to change it to "unlimited" for getting a core file
After this I recompile with -g flag.
Please show a detailed list of gdb command for finding useful information
from gdb. I am completely new to gdb use!
Regards
Franco Spinelli
IW2DHW
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#84 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJEH5PJUR6ENND5S2QZEJ3SOFJFVANCNFSM4PYBFL4A>
.
|
OK [Thread debugging using libthread_db enabled] I am very new to gdb command Can I do other debug? Regards Franco Spinelli |
Franco, If you are very new to gdb, and have time this weekend (after 4pm your time), send me an email at <my github username>@comcast.net, and we can arrange to look into this issue together. Franco |
In Italy we are locked starting from tomorrow so I am at home! Franco Spinelli |
John,
I added support to linhpsdr for the SDRplay RSP receivers using the SoapySDR driver, since I saw you already have the RTL-SDR (and Lime Suite, I think) using SoapySDR.
A couple of comments:
I am not sure why the second ADC is set to 2 (rx->adc=2) instead of 1 (since the first ADC has index 0) for the case of SoapySDR radios, when they support multiple receivers. I suspect that might be because of the way the Lime Suite enumerates its ADCs (but I am not sure because I don't have one), so I added the extra condition 'strcmp(radio->discovered->name,"lms7")==0':
Since I am not 100% (or even 50%) sure this is the right way to fix it, I put a comment there (line 1539), so you can review it, and decide how it should best handled.
Thanks,
Franco Venturi - K4VZ