Skip to content
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

Soapy_source: more settings #11

Open
nmaster2042 opened this issue Oct 20, 2022 · 20 comments
Open

Soapy_source: more settings #11

nmaster2042 opened this issue Oct 20, 2022 · 20 comments
Assignees
Labels

Comments

@nmaster2042
Copy link

nmaster2042 commented Oct 20, 2022

On soapy_source we can change gain, sample rate, bandwidth and antenna.

A lot of devices has more settings options not shown on GUI that would provide better controls on devices (ex: bias tee, filters, etc).

This depend of the device and soapy driver but it would be great add.

@nmaster2042 nmaster2042 added the enhancement New feature or request label Oct 20, 2022
@sannysanoff
Copy link
Owner

i wish I had those devices to test..

@ericek111
Copy link

All of that is available in this branch: https://github.com/ericek111/SDRPlusPlus/tree/soapysettings

One last thing missing -- custom device strings.

@nmaster2042
Copy link
Author

nmaster2042 commented Mar 20, 2023 via email

@angrysmiley
Copy link

Albeit incomplete as of yet, someone started on a module/plugin:

https://github.com/cropinghigh/sdrpp-mirisdr-source

@gvanem
Copy link

gvanem commented Mar 8, 2024

I'll comment here (instead of opening a new issue that will get ignored). There's a bug WRT. to LoadLibraryExW() and the
LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR flag. No .DLLs in %SOAPY_SDR_PLUGIN_PATH% will thus get loaded.
Or it the intention to have all those .DLLs in the ./modules directory? Madness if so.

I patched core/src/modules.cpp and now SDR++ works fine with SoapySDR and %SOAPY_SDR_PLUGIN_PATH%/AfedriSupport.dll. From: https://github.com/alexander-sholohov/SoapyAfedri

@sannysanoff
Copy link
Owner

All of that is available in this branch: https://github.com/ericek111/SDRPlusPlus/tree/soapysettings

One last thing missing -- custom device strings.

Dear colleague, if you would create pull request, I would merge it. If it is related to soapy_source. Also, please bear in mind issues related to server-side mode ui. If you're not using SmGui, there will be issues in server mode. You must add a condition on server-side, if you have some code that works only in client mode.

@alexander-sholohov
Copy link

I've implemented initial soapy device settings. It's available in the branch: https://github.com/alexander-sholohov/SDRPlusPlus/tree/feature/soapy-driver-start-settings

@nmaster2042
Copy link
Author

Nice add the hability to enter args manually.

Do you think it can be accumulated with the work of ericek111s' improved soapy args management he proposed ?

Because it adds all string args avaliable for the soapy device directly on the UI.

I actually tried it with success.

It would be the perfect combo to manage well soapy devices.

@alexander-sholohov
Copy link

This is the branch with ericek111's "runtime" settings + my device initial setting + try-catch around SoapySDR::Device::make()
Please try.
https://github.com/alexander-sholohov/SDRPlusPlus/tree/feature/soapysdr-settings

@alexander-sholohov
Copy link

I'll comment here (instead of opening a new issue that will get ignored). There's a bug WRT. to LoadLibraryExW() and the LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR flag. No .DLLs in %SOAPY_SDR_PLUGIN_PATH% will thus get loaded. Or it the intention to have all those .DLLs in the ./modules directory? Madness if so.

That’s actually fine for self contained distros. In this case soapy_source.dll will use SoapySDR.dll coming with sdrpp.exe and won’t fall back to random SoapySDR found in the paths. To organize folder with soapy modules we can set environment variable SOAPY_SDR_PLUGIN_PATH like here

@nmaster2042
Copy link
Author

@alexander-sholohov : I built your soapy_source, and I'm actually using it successfully.
It's a very good progress over original soapy_source.

I own SDRs that don't have native SDR++ support such as the funcube dongle pro+ and now I have a good control of the settings.

I made my test on desktop (with UI), I'll make some more with server mode.
SDR++ server is very flexible do put SDR and antenna far from my computer, it it's the main mode I'm using here.

I'll let you know results.

Thank you for the nice work

@nmaster2042
Copy link
Author

nmaster2042 commented Mar 30, 2024

Hi @alexander-sholohov

I just wanted to let you know I was able to use your soapy_source in server mode exactly the same way as in GUI mode.

It's a great add for my usage of remote SDR++ server.

@sannysanoff
Copy link
Owner

I merged (not merged, actually, but took the code from, because it was not rebased) into the 01c250a. Only main.cpp file related to soapy_sdr.

Please check if all is ok.

@alexander-sholohov
Copy link

I merged (not merged, actually, but took the code from, because it was not rebased) into the 01c250a. Only main.cpp file related to soapy_sdr.

Please check if all is ok.

It compiles and works ok. Looks good.

@sannysanoff
Copy link
Owner

thanks for your contribution!

@sannysanoff
Copy link
Owner

@sannysanoff
Copy link
Owner

@alexander-sholohov ^^ plz see if you can do something.

Я пока что задизаблил билд этого модуля на старых платформах, где не предоставляется этот плюсовый API, который ты используешь.

@alexander-sholohov
Copy link

This is because Debian11 comes with old SoapySDR version 0.7 which doesn't have templated settings. I've disabled runtime setting when soapy_source compiles with old SoapySDR API.

@sannysanoff
Copy link
Owner

If possible, plz provide pull request.

@sannysanoff
Copy link
Owner

taking my words back, I see it's there already. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants