¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Re: PlutoSdr TX support via SoapySDR

 

¿ªÔÆÌåÓý

Hi Peter,

it seems the API has changed a bit. I get the same errors here after updating Soapy. Think it needs some update of soapy.c in order to fix this.

regards

Mario


Am 04.03.20 um 22:08 schrieb Peter Ide-Kostic:

!!!! Good News !!!!

The fix just applied by the developper of the SoapyPlutoSdr module in the master branch fixed the issue with sdrangel. In other words, the pluto can be used with soapysdr and sdrangel for both TX and RX


What about QUISK ?????

It should logically be working too since the bug was fixed in the soapyplutosdr module, except that I can't test with QUISK as I am encountering a compilation error with soapypkg module. Can somebody help me solve this issue ?
I am using compliled versions from GutHub of libbiio, lib-ad9631 and SoapySdr.? The compilation works of those librairies from the /usr/src directory works like breethe so I don't understant why the compilation of the soapypkg barks

root@on7yi-ubuntu:/usr/src/quisk-4.1.52# make soapy3
(cd soapypkg; make soapy3)
make[1]: Entering directory '/usr/src/quisk-4.1.52/soapypkg'
python3 setup.py build_ext --force --inplace
running build_ext
building 'soapy' extension
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I. -I.. -I/usr/include/python3.6m -c ../import_quisk_api.c -o build/temp.linux-x86_64-3.6/../import_quisk_api.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I. -I.. -I/usr/include/python3.6m -c soapy.c -o build/temp.linux-x86_64-3.6/soapy.o
soapy.c: In function ¡®quisk_start_samples¡¯:
soapy.c:39:54: warning: passing argument 2 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
????????????????????????????????????????????????????? ^
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®int¡¯ but argument is of type ¡®SoapySDRStream ** {aka struct SoapySDRStream **}¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:65: warning: passing argument 3 of ¡®SoapySDRDevice_setupStream¡¯ makes pointer from integer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
???????????????????????????????????????????????????????????????? ^~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const char *¡¯ but argument is of type ¡®int¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:79: warning: passing argument 4 of ¡®SoapySDRDevice_setupStream¡¯ from incompatible pointer type [-Wincompatible-pointer-types]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????????????????????????????? ^~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const size_t * {aka const long unsigned int *}¡¯ but argument is of type ¡®char *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:95: warning: passing argument 5 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????????????????????????????????????????????? ^~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®size_t {aka const long unsigned int}¡¯ but argument is of type ¡®void *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:6: error: too many arguments to function ¡®SoapySDRDevice_setupStream¡¯
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: declared here
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:55: warning: passing argument 2 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????? ^
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®int¡¯ but argument is of type ¡®SoapySDRStream ** {aka struct SoapySDRStream **}¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:80: warning: passing argument 4 of ¡®SoapySDRDevice_setupStream¡¯ from incompatible pointer type [-Wincompatible-pointer-types]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
??????????????????????????????????????????????????????????????????????????????? ^~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const size_t * {aka const long unsigned int *}¡¯ but argument is of type ¡®char *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:96: warning: passing argument 5 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
??????????????????????????????????????????????????????????????????????????????????????????????? ^~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®size_t {aka const long unsigned int}¡¯ but argument is of type ¡®void *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:7: error: too many arguments to function ¡®SoapySDRDevice_setupStream¡¯
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: declared here
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
makefile:6: recipe for target 'soapy3' failed
make[1]: *** [soapy3] Error 1
make[1]: Leaving directory '/usr/src/quisk-4.1.52/soapypkg'
makefile:20: recipe for target 'soapy3' failed
make: *** [soapy3] Error 2





Re: PlutoSdr TX support via SoapySDR

 

!!!! Good News !!!!

The fix just applied by the developper of the SoapyPlutoSdr module in the master branch fixed the issue with sdrangel. In other words, the pluto can be used with soapysdr and sdrangel for both TX and RX


What about QUISK ?????

It should logically be working too since the bug was fixed in the soapyplutosdr module, except that I can't test with QUISK as I am encountering a compilation error with soapypkg module. Can somebody help me solve this issue ?
I am using compliled versions from GutHub of libbiio, lib-ad9631 and SoapySdr.? The compilation works of those librairies from the /usr/src directory works like breethe so I don't understant why the compilation of the soapypkg barks

root@on7yi-ubuntu:/usr/src/quisk-4.1.52# make soapy3
(cd soapypkg; make soapy3)
make[1]: Entering directory '/usr/src/quisk-4.1.52/soapypkg'
python3 setup.py build_ext --force --inplace
running build_ext
building 'soapy' extension
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I. -I.. -I/usr/include/python3.6m -c ../import_quisk_api.c -o build/temp.linux-x86_64-3.6/../import_quisk_api.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I. -I.. -I/usr/include/python3.6m -c soapy.c -o build/temp.linux-x86_64-3.6/soapy.o
soapy.c: In function ¡®quisk_start_samples¡¯:
soapy.c:39:54: warning: passing argument 2 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
????????????????????????????????????????????????????? ^
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®int¡¯ but argument is of type ¡®SoapySDRStream ** {aka struct SoapySDRStream **}¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:65: warning: passing argument 3 of ¡®SoapySDRDevice_setupStream¡¯ makes pointer from integer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
???????????????????????????????????????????????????????????????? ^~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const char *¡¯ but argument is of type ¡®int¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:79: warning: passing argument 4 of ¡®SoapySDRDevice_setupStream¡¯ from incompatible pointer type [-Wincompatible-pointer-types]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????????????????????????????? ^~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const size_t * {aka const long unsigned int *}¡¯ but argument is of type ¡®char *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:95: warning: passing argument 5 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????????????????????????????????????????????? ^~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®size_t {aka const long unsigned int}¡¯ but argument is of type ¡®void *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:39:6: error: too many arguments to function ¡®SoapySDRDevice_setupStream¡¯
? if (SoapySDRDevice_setupStream(soapy_sample_device, &rxStream, SOAPY_SDR_RX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: declared here
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:55: warning: passing argument 2 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????????????????????????????????????????????????????? ^
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®int¡¯ but argument is of type ¡®SoapySDRStream ** {aka struct SoapySDRStream **}¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:80: warning: passing argument 4 of ¡®SoapySDRDevice_setupStream¡¯ from incompatible pointer type [-Wincompatible-pointer-types]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
??????????????????????????????????????????????????????????????????????????????? ^~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®const size_t * {aka const long unsigned int *}¡¯ but argument is of type ¡®char *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:96: warning: passing argument 5 of ¡®SoapySDRDevice_setupStream¡¯ makes integer from pointer without a cast [-Wint-conversion]
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
??????????????????????????????????????????????????????????????????????????????????????????????? ^~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: expected ¡®size_t {aka const long unsigned int}¡¯ but argument is of type ¡®void *¡¯
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:44:7: error: too many arguments to function ¡®SoapySDRDevice_setupStream¡¯
?? if (SoapySDRDevice_setupStream(soapy_sample_device, &txStream, SOAPY_SDR_TX, SOAPY_SDR_CF32, NULL, 0, NULL) != 0) {
?????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:3:0:
/usr/local/include/SoapySDR/Device.h:295:31: note: declared here
?SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device,
?????????????????????????????? ^~~~~~~~~~~~~~~~~~~~~~~~~~
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
makefile:6: recipe for target 'soapy3' failed
make[1]: *** [soapy3] Error 1
make[1]: Leaving directory '/usr/src/quisk-4.1.52/soapypkg'
makefile:20: recipe for target 'soapy3' failed
make: *** [soapy3] Error 2





Keyboard shortcuts for Quisk?

 

OK, I've looked a bit, but I've not seen keyboard shortcuts for Quisk.? Do they exist?
Thanks,
Jim W0CHL


Re: PlutoSdr TX support via SoapySDR

 

Ok, it seems the developer found a bug in the TX code of the soapy plutosdr module that prevented to TX with the pluto using soapysdr

https://github.com/pothosware/SoapyPlutoSDR/issues/32

I will test the fixed module and will let you know if for QUISK it makes any differences


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

Glad to know the documentation still works.
I always used that setup with Softrock,SR63ng and UHFSDR.
73 ... Sid.

On 01/03/2020 14:41, Jim Reagan wrote:
It is now working! I just went into pavucontrol a played around with the settings on my input USB device and? suddenly it now defaults to the correct input.
THANKS!
Jim W0CHL
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

It is now working! I just went into pavucontrol a played around with the settings on my input USB device and? suddenly it now defaults to the correct input.
THANKS!
Jim W0CHL


Re: PlutoSdr TX support via SoapySDR

 

That is the point. I already did! As I wrote it earlier, the story is the same with sdrangel than with QUISK when it comes to supporting the pluto via SoapySDR! . My Pluto only works in RX mode with Soapy (both QUISK and Sdrangel) NOT in TX mode.

Of course in direct IIO mode, my pluto works well in both TX and RX mode with Sdrangel. I just would like QUISK to support direct IIO with the pluto just like sdrangel does it (as this soapyplutosdr module is useless in TX mode). I really like sdrangel but I find QUISK much more convenient for every day use.?



On Sat, 29 Feb 2020, 19:58 Michael Durkin, <Kc7noa@...> wrote:
Try it with SdrAngle ...it also supports Soapy

On Sat, Feb 29, 2020 at 4:03 PM Peter Ide-Kostic <on7yi.pik973@...> wrote:
Well, I really don't know what?to do. This is a bit ridiculous, there is soapyplutosdr module out there that has been proven to work correctly wih several applications in RX mode but that does seems it works with any applications in TX mode! I can't really open a ticket on the github site of the soapysdr module because I can't proove to the developper that his module software does not work in TX mode, only in RX. There is just no test I can do to prove something is wrong with the module.?

Jim, if you could support IIO it?would be greatly appreciated so owners of Pluto don't have to mess anylonger with soapysdr and the plutosoapysdr module. What?do you think?

On Sat, 29 Feb 2020, 09:54 Mario Roessler, <Mario.dh5ym@...> wrote:

Hi Peter,

in FM it did transmit but the audio was broken. It sounded interrupted. That was probably an issue with the sample rate. I did not investigate further.

Mario



Am 29.02.20 um 10:53 schrieb Peter Ide-Kostic:
Hi Mario,

So you managed to output an FM modulated signal with QUISK and the Pluto? Please clarify

I only tested in SSB using the spot button

Regards
Peter

On Thu, 20 Feb 2020, 02:51 Mario Roessler, <Mario.dh5ym@...> wrote:
Hi,

i recently looked in the source files of the Pluto-SDR soapy implementation. I am not a software engineer but as far as i can judge the TX implementation is a bit limited in functionality and maybe even incomplete. That would be the point to start from when searching for the reasons of the TX problems. However when i tried with Quisk i found that in SSB i get no output at all and in FM it sounded interrupted. My guess was that this is not only related to gain control.
Switching the TX on/off worked but also not reliable. I think also the TX sample rates where not reported correctly by Soapy. With SDRangel it was also working fine for me using the IIO interface.

regards
Mario

Am Do., 20. Feb. 2020 um 06:39?Uhr schrieb Peter Ide-Kostic <on7yi.pik973@...>:
In case it helps, the setting? "-g PGA=89"? gives the best results with tx_sdr, better than "-g 89"

On Wed, Feb 19, 2020 at 7:47 PM Peter Ide-Kostic via Groups.Io <on7yi.pik973=[email protected]> wrote:
The other thing I discovered is that sdrangel only supports in TX mode the plutosdr via the? iio interfaces. Trying to TX via SoapySDR does not work either only RX does! Tx works with sdrangel only in direct iio mode... The symptoms are the same than QUISK, tx gain looks broken when using SoapySDR with the Pluto.

Obviously the reference is the way tx_sdr does it...?

On Wed, 19 Feb 2020, 18:57 Peter Ide-Kostic via Groups.Io, <on7yi.pik973=[email protected]> wrote:
Hi Jim,

I come back on this (frustrating) issue.

It seems some users are able to use their limesdr in TX mode with QUISK via soapysdr, so at least there is a positive news

As you know, TX does not work with the plutosdr, only RX? works.

The other good news is that with v 52 my plutosdr does not crash anylonger when I TX/

I have been doing some tests with tx_tool

The tx_sdr tools? allows to? play a .cu8 IQ file via SoapySDR in order to easily verify that the soapy hardware module for a specific hardware works. There is another codegen command tool that allows to easily generate IQ File to be played with tx_sdr

And yes,? soapyplutosdr works in TX mode with Tx_sdr in ly environment; I was able to generate a nice CW signal.

After comparing the behavior of TX_SDR with the one of QUISK, everything happens as if the TX GAIN in QUISK was broken? for the plutosdr. In other words,? it looks like it is always set to 0dB even if the user choses the max value of 89 in the QUISK menu.? If I can control the gain with tx_sdr quite accurately, it should also be possible with QUISK .....Maybe (?) you could have another look at the way the gain settings are implemented for the plutosdr in TX mode?

Many thanks? ?


Re: PlutoSdr TX support via SoapySDR

 

Try it with SdrAngle ...it also supports Soapy


On Sat, Feb 29, 2020 at 4:03 PM Peter Ide-Kostic <on7yi.pik973@...> wrote:
Well, I really don't know what?to do. This is a bit ridiculous, there is soapyplutosdr module out there that has been proven to work correctly wih several applications in RX mode but that does seems it works with any applications in TX mode! I can't really open a ticket on the github site of the soapysdr module because I can't proove to the developper that his module software does not work in TX mode, only in RX. There is just no test I can do to prove something is wrong with the module.?

Jim, if you could support IIO it?would be greatly appreciated so owners of Pluto don't have to mess anylonger with soapysdr and the plutosoapysdr module. What?do you think?

On Sat, 29 Feb 2020, 09:54 Mario Roessler, <Mario.dh5ym@...> wrote:

Hi Peter,

in FM it did transmit but the audio was broken. It sounded interrupted. That was probably an issue with the sample rate. I did not investigate further.

Mario



Am 29.02.20 um 10:53 schrieb Peter Ide-Kostic:
Hi Mario,

So you managed to output an FM modulated signal with QUISK and the Pluto? Please clarify

I only tested in SSB using the spot button

Regards
Peter

On Thu, 20 Feb 2020, 02:51 Mario Roessler, <Mario.dh5ym@...> wrote:
Hi,

i recently looked in the source files of the Pluto-SDR soapy implementation. I am not a software engineer but as far as i can judge the TX implementation is a bit limited in functionality and maybe even incomplete. That would be the point to start from when searching for the reasons of the TX problems. However when i tried with Quisk i found that in SSB i get no output at all and in FM it sounded interrupted. My guess was that this is not only related to gain control.
Switching the TX on/off worked but also not reliable. I think also the TX sample rates where not reported correctly by Soapy. With SDRangel it was also working fine for me using the IIO interface.

regards
Mario

Am Do., 20. Feb. 2020 um 06:39?Uhr schrieb Peter Ide-Kostic <on7yi.pik973@...>:
In case it helps, the setting? "-g PGA=89"? gives the best results with tx_sdr, better than "-g 89"

On Wed, Feb 19, 2020 at 7:47 PM Peter Ide-Kostic via Groups.Io <on7yi.pik973=[email protected]> wrote:
The other thing I discovered is that sdrangel only supports in TX mode the plutosdr via the? iio interfaces. Trying to TX via SoapySDR does not work either only RX does! Tx works with sdrangel only in direct iio mode... The symptoms are the same than QUISK, tx gain looks broken when using SoapySDR with the Pluto.

Obviously the reference is the way tx_sdr does it...?

On Wed, 19 Feb 2020, 18:57 Peter Ide-Kostic via Groups.Io, <on7yi.pik973=[email protected]> wrote:
Hi Jim,

I come back on this (frustrating) issue.

It seems some users are able to use their limesdr in TX mode with QUISK via soapysdr, so at least there is a positive news

As you know, TX does not work with the plutosdr, only RX? works.

The other good news is that with v 52 my plutosdr does not crash anylonger when I TX/

I have been doing some tests with tx_tool

The tx_sdr tools? allows to? play a .cu8 IQ file via SoapySDR in order to easily verify that the soapy hardware module for a specific hardware works. There is another codegen command tool that allows to easily generate IQ File to be played with tx_sdr

And yes,? soapyplutosdr works in TX mode with Tx_sdr in ly environment; I was able to generate a nice CW signal.

After comparing the behavior of TX_SDR with the one of QUISK, everything happens as if the TX GAIN in QUISK was broken? for the plutosdr. In other words,? it looks like it is always set to 0dB even if the user choses the max value of 89 in the QUISK menu.? If I can control the gain with tx_sdr quite accurately, it should also be possible with QUISK .....Maybe (?) you could have another look at the way the gain settings are implemented for the plutosdr in TX mode?

Many thanks? ?


Re: PlutoSdr TX support via SoapySDR

 

Well, I really don't know what?to do. This is a bit ridiculous, there is soapyplutosdr module out there that has been proven to work correctly wih several applications in RX mode but that does seems it works with any applications in TX mode! I can't really open a ticket on the github site of the soapysdr module because I can't proove to the developper that his module software does not work in TX mode, only in RX. There is just no test I can do to prove something is wrong with the module.?

Jim, if you could support IIO it?would be greatly appreciated so owners of Pluto don't have to mess anylonger with soapysdr and the plutosoapysdr module. What?do you think?

On Sat, 29 Feb 2020, 09:54 Mario Roessler, <Mario.dh5ym@...> wrote:

Hi Peter,

in FM it did transmit but the audio was broken. It sounded interrupted. That was probably an issue with the sample rate. I did not investigate further.

Mario



Am 29.02.20 um 10:53 schrieb Peter Ide-Kostic:
Hi Mario,

So you managed to output an FM modulated signal with QUISK and the Pluto? Please clarify

I only tested in SSB using the spot button

Regards
Peter

On Thu, 20 Feb 2020, 02:51 Mario Roessler, <Mario.dh5ym@...> wrote:
Hi,

i recently looked in the source files of the Pluto-SDR soapy implementation. I am not a software engineer but as far as i can judge the TX implementation is a bit limited in functionality and maybe even incomplete. That would be the point to start from when searching for the reasons of the TX problems. However when i tried with Quisk i found that in SSB i get no output at all and in FM it sounded interrupted. My guess was that this is not only related to gain control.
Switching the TX on/off worked but also not reliable. I think also the TX sample rates where not reported correctly by Soapy. With SDRangel it was also working fine for me using the IIO interface.

regards
Mario

Am Do., 20. Feb. 2020 um 06:39?Uhr schrieb Peter Ide-Kostic <on7yi.pik973@...>:
In case it helps, the setting? "-g PGA=89"? gives the best results with tx_sdr, better than "-g 89"

On Wed, Feb 19, 2020 at 7:47 PM Peter Ide-Kostic via Groups.Io <on7yi.pik973=[email protected]> wrote:
The other thing I discovered is that sdrangel only supports in TX mode the plutosdr via the? iio interfaces. Trying to TX via SoapySDR does not work either only RX does! Tx works with sdrangel only in direct iio mode... The symptoms are the same than QUISK, tx gain looks broken when using SoapySDR with the Pluto.

Obviously the reference is the way tx_sdr does it...?

On Wed, 19 Feb 2020, 18:57 Peter Ide-Kostic via Groups.Io, <on7yi.pik973=[email protected]> wrote:
Hi Jim,

I come back on this (frustrating) issue.

It seems some users are able to use their limesdr in TX mode with QUISK via soapysdr, so at least there is a positive news

As you know, TX does not work with the plutosdr, only RX? works.

The other good news is that with v 52 my plutosdr does not crash anylonger when I TX/

I have been doing some tests with tx_tool

The tx_sdr tools? allows to? play a .cu8 IQ file via SoapySDR in order to easily verify that the soapy hardware module for a specific hardware works. There is another codegen command tool that allows to easily generate IQ File to be played with tx_sdr

And yes,? soapyplutosdr works in TX mode with Tx_sdr in ly environment; I was able to generate a nice CW signal.

After comparing the behavior of TX_SDR with the one of QUISK, everything happens as if the TX GAIN in QUISK was broken? for the plutosdr. In other words,? it looks like it is always set to 0dB even if the user choses the max value of 89 in the QUISK menu.? If I can control the gain with tx_sdr quite accurately, it should also be possible with QUISK .....Maybe (?) you could have another look at the way the gain settings are implemented for the plutosdr in TX mode?

Many thanks? ?


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

Many an age since I last used Softrock/UHFSDR?SR63ng ---
worked without any issues.

Initially checked and adjusted with alsamixer if required. Once set no problem.
root@odroidC2:~# systemctl -a|grep alsa
alsa-restore.service loaded??? active?? exited??? Save/Restore Sound Card State
alsa-state.service loaded??? inactive dead????? Manage Sound Card State (restore and store)
----------------------------------------------------------------------------------------------------
root@odroidC2:~# systemctl status alsa-restore.service
¡ñ alsa-restore.service - Save/Restore Sound Card State
?? Loaded: loaded (/lib/systemd/system/alsa-restore.service; static; vendor preset: enabled)
?? Active: active (exited) since Sun 2018-01-28 15:58:23 GMT; 2 years 1 months ago
???? Docs: man:alsactl(1)
? Process: 620 ExecStart=/usr/sbin/alsactl -E HOME=/run/alsa restore (code=exited, status=0/SUCCESS)
? Process: 545 ExecStartPre=/bin/mkdir -p /run/alsa (code=exited, status=0/SUCCESS)
?Main PID: 620 (code=exited, status=0/SUCCESS)

Jan 28 15:58:22 odroidC2 systemd[1]: Starting Save/Restore Sound Card State...
Jan 28 15:58:23 odroidC2 systemd[1]: Started Save/Restore Sound Card State.


root@odroidC2:~# systemctl status alsa-state.service
¡ñ alsa-state.service - Manage Sound Card State (restore and store)
?? Loaded: loaded (/lib/systemd/system/alsa-state.service; static; vendor preset: enabled)
?? Active: inactive (dead)
Condition: start condition failed at Sun 2018-01-28 15:58:22 GMT; 2 years 1 months ago
?????????? ©¸©¤ ConditionPathExists=/etc/alsa/state-daemon.conf was not met
???? Docs: man:alsactl(1)

On an openSUSE x86_64 box never had to deal with a problem, despite the failed status.
# systemctl status alsa-state
¡ñ alsa-state.service - Manage Sound Card State (restore and store)
???? Loaded: loaded (/usr/lib/systemd/system/alsa-state.service; static; vendor preset: disabled)
# systemctl status alsa-state
¡ñ alsa-state.service - Manage Sound Card State (restore and store)
???? Loaded: loaded (/usr/lib/systemd/system/alsa-state.service; static; vendor preset: disabled)
???? Active: inactive (dead)
? Condition: start condition failed at Thu 2020-02-27 12:50:57 GMT; 2 days ago

Feb 27 12:50:57 slipstream systemd[1]: Condition check resulted in Manage Sound Card State (restore and store) being skipped. Active: inactive (dead)
? Condition: start condition failed at Thu 2020-02-27 12:50:57 GMT; 2 days ago

Feb 27 12:50:57 slipstream systemd[1]: Condition check resulted in Manage Sound Card State (restore and store) being skipped.
73 ... Sid.

On 29/02/2020 19:55, Jim Reagan wrote:
OK, the "store function does save the levels, which is part of the way there.
It doesn't save the function I need.? I always have to (on alsamixer)
go to my "USB Sound Device"( select that), then use the arrow keys to
"PCM Capt" and change it from "mic" to "mixer", and the exit.
My mixer option is not saved,,, Using the store option.
Any other ideas to try?
Thanks,
Jim
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

OK, the "store function does save the levels, which is part of the way there.
It doesn't save the function I need.? I always have to (on alsamixer)
go to my "USB Sound Device"( select that), then use the arrow keys to
"PCM Capt" and change it from "mic" to "mixer", and the exit.
My mixer option is not saved,,, Using the store option.
Any other ideas to try?
Thanks,
Jim


Re: PlutoSdr TX support via SoapySDR

 

¿ªÔÆÌåÓý

Hi Peter,

in FM it did transmit but the audio was broken. It sounded interrupted. That was probably an issue with the sample rate. I did not investigate further.

Mario



Am 29.02.20 um 10:53 schrieb Peter Ide-Kostic:

Hi Mario,

So you managed to output an FM modulated signal with QUISK and the Pluto? Please clarify

I only tested in SSB using the spot button

Regards
Peter

On Thu, 20 Feb 2020, 02:51 Mario Roessler, <Mario.dh5ym@...> wrote:
Hi,

i recently looked in the source files of the Pluto-SDR soapy implementation. I am not a software engineer but as far as i can judge the TX implementation is a bit limited in functionality and maybe even incomplete. That would be the point to start from when searching for the reasons of the TX problems. However when i tried with Quisk i found that in SSB i get no output at all and in FM it sounded interrupted. My guess was that this is not only related to gain control.
Switching the TX on/off worked but also not reliable. I think also the TX sample rates where not reported correctly by Soapy. With SDRangel it was also working fine for me using the IIO interface.

regards
Mario

Am Do., 20. Feb. 2020 um 06:39?Uhr schrieb Peter Ide-Kostic <on7yi.pik973@...>:
In case it helps, the setting? "-g PGA=89"? gives the best results with tx_sdr, better than "-g 89"

On Wed, Feb 19, 2020 at 7:47 PM Peter Ide-Kostic via Groups.Io <on7yi.pik973=[email protected]> wrote:
The other thing I discovered is that sdrangel only supports in TX mode the plutosdr via the? iio interfaces. Trying to TX via SoapySDR does not work either only RX does! Tx works with sdrangel only in direct iio mode... The symptoms are the same than QUISK, tx gain looks broken when using SoapySDR with the Pluto.

Obviously the reference is the way tx_sdr does it...?

On Wed, 19 Feb 2020, 18:57 Peter Ide-Kostic via Groups.Io, <on7yi.pik973=[email protected]> wrote:
Hi Jim,

I come back on this (frustrating) issue.

It seems some users are able to use their limesdr in TX mode with QUISK via soapysdr, so at least there is a positive news

As you know, TX does not work with the plutosdr, only RX? works.

The other good news is that with v 52 my plutosdr does not crash anylonger when I TX/

I have been doing some tests with tx_tool

The tx_sdr tools? allows to? play a .cu8 IQ file via SoapySDR in order to easily verify that the soapy hardware module for a specific hardware works. There is another codegen command tool that allows to easily generate IQ File to be played with tx_sdr

And yes,? soapyplutosdr works in TX mode with Tx_sdr in ly environment; I was able to generate a nice CW signal.

After comparing the behavior of TX_SDR with the one of QUISK, everything happens as if the TX GAIN in QUISK was broken? for the plutosdr. In other words,? it looks like it is always set to 0dB even if the user choses the max value of 89 in the QUISK menu.? If I can control the gain with tx_sdr quite accurately, it should also be possible with QUISK .....Maybe (?) you could have another look at the way the gain settings are implemented for the plutosdr in TX mode?

Many thanks? ?


Re: PlutoSdr TX support via SoapySDR

 

Hi Mario,

So you managed to output an FM modulated signal with QUISK and the Pluto? Please clarify

I only tested in SSB using the spot button

Regards
Peter

On Thu, 20 Feb 2020, 02:51 Mario Roessler, <Mario.dh5ym@...> wrote:
Hi,

i recently looked in the source files of the Pluto-SDR soapy implementation. I am not a software engineer but as far as i can judge the TX implementation is a bit limited in functionality and maybe even incomplete. That would be the point to start from when searching for the reasons of the TX problems. However when i tried with Quisk i found that in SSB i get no output at all and in FM it sounded interrupted. My guess was that this is not only related to gain control.
Switching the TX on/off worked but also not reliable. I think also the TX sample rates where not reported correctly by Soapy. With SDRangel it was also working fine for me using the IIO interface.

regards
Mario

Am Do., 20. Feb. 2020 um 06:39?Uhr schrieb Peter Ide-Kostic <on7yi.pik973@...>:
In case it helps, the setting? "-g PGA=89"? gives the best results with tx_sdr, better than "-g 89"

On Wed, Feb 19, 2020 at 7:47 PM Peter Ide-Kostic via Groups.Io <on7yi.pik973=[email protected]> wrote:
The other thing I discovered is that sdrangel only supports in TX mode the plutosdr via the? iio interfaces. Trying to TX via SoapySDR does not work either only RX does! Tx works with sdrangel only in direct iio mode... The symptoms are the same than QUISK, tx gain looks broken when using SoapySDR with the Pluto.

Obviously the reference is the way tx_sdr does it...?

On Wed, 19 Feb 2020, 18:57 Peter Ide-Kostic via Groups.Io, <on7yi.pik973=[email protected]> wrote:
Hi Jim,

I come back on this (frustrating) issue.

It seems some users are able to use their limesdr in TX mode with QUISK via soapysdr, so at least there is a positive news

As you know, TX does not work with the plutosdr, only RX? works.

The other good news is that with v 52 my plutosdr does not crash anylonger when I TX/

I have been doing some tests with tx_tool

The tx_sdr tools? allows to? play a .cu8 IQ file via SoapySDR in order to easily verify that the soapy hardware module for a specific hardware works. There is another codegen command tool that allows to easily generate IQ File to be played with tx_sdr

And yes,? soapyplutosdr works in TX mode with Tx_sdr in ly environment; I was able to generate a nice CW signal.

After comparing the behavior of TX_SDR with the one of QUISK, everything happens as if the TX GAIN in QUISK was broken? for the plutosdr. In other words,? it looks like it is always set to 0dB even if the user choses the max value of 89 in the QUISK menu.? If I can control the gain with tx_sdr quite accurately, it should also be possible with QUISK .....Maybe (?) you could have another look at the way the gain settings are implemented for the plutosdr in TX mode?

Many thanks? ?


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

The store option will create that file and it should be used to set mixer settings when the system is booted.
73 ... Sid.

On 27/02/2020 14:08, Jim Reagan wrote:
Typing in alsactl restore results in this msg:
alsactl: state_lock:125 file/var/lib/alsa/asound.state lock error: File exists
alsactl: load_state:1683: Cannot open /var/lib/alsa/sound.state for reading: file exists

(then goes on to list devices available)

StartTech 7. 1 is hw:1,0

USB PnP USB audio is hw:2,0

Thanks for looking into this..
Jim
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

Typing in alsactl restore results in this msg:
alsactl: state_lock:125 file/var/lib/alsa/asound.state lock error: File exists
alsactl: load_state:1683: Cannot open /var/lib/alsa/sound.state for reading: file exists

(then goes on to list devices available)

StartTech 7. 1 is hw:1,0

USB PnP USB audio is hw:2,0

Thanks for looking into this..
Jim


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

Hi Jim,
See if "alsactl restore <card>" will fix the problem.

Something odd is happening ... What card configuration is set in quisk --- hw:0 hw:1 or using pulseaudio default?
"fuser -v /dev/snd/*" results when it fails and when it works.
73 ... Sid.

On 26/02/2020 00:54, Jim Reagan wrote:
Great, but can I get a little more information?? I found the file and just added "alsactl store" to the bottom of it, but no change.
Enlighten me?
Thanks,
Jim
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

Great, but can I get a little more information?? I found the file and just added "alsactl store" to the bottom of it, but no change.?
Enlighten me?
Thanks,
Jim


Re: Quisk/SoftRock: how to save an alsamixer setting?

 

"alsactl store" save it in /var/lib/alsa/asound.state
73 ... Sid.

On 25/02/2020 21:44, Jim Reagan wrote:
I'm using Quisk and a SoftRock Ensemble radio, It works fine except for one thing.? To get the radio working every time I start the system up I have to reset an alsamixer settting. How do I save it?

alsamixer, then f6 to select my USB sound card (StarTech), I have to select "pcm capt" and change from "mic" to "mixer".? That setting works until I turn off the system, then I have to change it again to "mixer".

I've tried several methods online but nothing seems to save that parameter.? Does anyone have the correct fix?
Thanks,
Jim
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks


Quisk/SoftRock: how to save an alsamixer setting?

 

I'm using Quisk and a SoftRock Ensemble radio, It works fine except for one thing.? To get the radio working every time I start the system up I have to reset an alsamixer settting. How do I save it?

alsamixer, then f6 to select my USB sound card (StarTech), I have to select "pcm capt" and change from "mic" to "mixer".? That setting works until I turn off the system, then I have to change it again to "mixer".

I've tried several methods online but nothing seems to save that parameter.? Does anyone have the correct fix?
Thanks,
Jim


Re: Using a CW key/paddles with Quisk and RS-HFIQ

 

I've written a Raspberry Pi-based GPIO keyer for Quisk.? It's actually the N1GP Raspberry Pi keyer code, modified and incorporated into the Quisk source code.? Once I do some more testing and work out some kinks, I'll post it as a diff/patch to this group, along with a Quisk hardware and widgets file that incorporate it.