elad-gqrx wrapper for gqrx


Giovanni Franza
 

Hi all,
to simplify the usage of gqrx with S1/S2, I've wrote a wrapper that:
* loads S1/S2 firmware
* writes gqrx configuration file
* launches gqrx
* talks with gqrx (using tcp remote control) to read gqrx hardware frequency and set S1/S2
For now it is available (compiled, but with sourcecode) for Ubuntu and MAC
on the following links:
www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-ubuntu-x86.tgz
www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-mac.tgz
in the package it is also a README with useful informations (that I kindly suggest to read) and a compiled version of elad-fiermware.

Enjoy!

Giovanni - HB9EIK


Giovanni Franza
 

Now it is also available for raspberry pi, here:
www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-raspberry.tgz

Enjoy!

Giovanni - HB9EIK


Udo Isaenko
 

Very interesting.

Would such a nice thing also be possible for the FDM-DUO? Just to see the spectrum under Linux (x64 or the Raspi) would already be fine.

73
Udo, HB9ERD/DL3GN

Am 04.11.19 um 18:21 schrieb Giovanni Franza:

Hi all,
to simplify the usage of gqrx with S1/S2, I've wrote a wrapper that:
* loads S1/S2 firmware
* writes gqrx configuration file
* launches gqrx
* talks with gqrx (using tcp remote control) to read gqrx hardware frequency and set S1/S2
For now it is available (compiled, but with sourcecode) for Ubuntu and MAC
on the following links:
www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-ubuntu-x86.tgz <http://www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-ubuntu-x86.tgz>
www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-mac.tgz <http://www.eladit.com/download/sdr/Linux/elad-gqrx-1.2-mac.tgz>
in the package it is also a README with useful informations (that I kindly suggest to read) and a compiled version of elad-fiermware.
Enjoy!


Giovanni Franza
 

Hi Udo,
It is possible to use elad-gqrx with FDM DUO, with the limit that the samplerate is not programmable, and that the
command of frequency is one-way from gqrx (the tune settings in FDM DUO do not reflects to gqrx).
Simply connect your duo, go to the elad-gqrx folder and type ./elad-gqrx
Feel free to try and share your thoughts.

Regards,

Giovanni HB9EIK


Heinz-Juergen Kronemeyer
 

Hi Giovanni,

I played a little bit with elad-gqrx and my FDM DUO. It starts and set the Frequency to 14.200. Communication seams to work at that point. Waterfall and Audio is working but trying to set the Frequency from gqrx to the DUO, it did not change the Frequency at the DUO. Baud Rate at the DUO is set to 57600. Starting gqrx with ./elad-gqrx export GQRX_DEBUG=1 crashed gqrx. It shows a wide out of Range Frequency (above 4 GHz) and then gqrx freeze.

Regards,
Heinz-Juergen  DO1YHJ


Giovanni Franza
 

Hi Heinz-Juergen,
baud rate on the DUO is not important, since the frequency is set through the I/Q port and not CAT.

It seems that the problem could be remote control, but if elad-gqrx is not able to talk with gqrx it stops and exits.
Is it possible that the remote port is not 7356 ?
Or that some system settings disable connections ( Mac system asks to enable it in firewall settings ) ?
Which kind of system are you using ?

To recover configuration; start gqrx itself and save configuration (not important which one) or cancel
the file .config/gqrx/default.conf in the home folder of the user that launches elad-gqrx
than relaunch elad-gqrx

If you are unsucessful to keep frequency working try to launch elad-gqrx using GQRX_DEBUG and send me in
private mail what appears on the screen.

Hope this helps,

Giovanni - HB9EIK
Regards,

Giovanni - HB9EIK


Heinz-Juergen Kronemeyer
 

Hi,


Which kind of system are you using ?

Linux Mint 19.2

But it's working now. I deleted the gqrx config and after that, it starts without errors and Frequency Changing from gqrx to Duo is working now.

Regards

Heinz-Juergen  DO1YHJ


Ken B
 

Giovanni, thanks much for taking the time and effort to design this linux wrapper for the S1/S2.  I am now able to use my S2 with Kubuntu 18.04 and enjoying operating it in the linux os environment.
73


Giovanni Franza
 

Hi Ken,
happy to know this :-)
Regards,

Giovanni - HB9EIK


Ken
 

Hello,

I am using the wrapper and it works well in Ubuntu 18.04. I have a fresh install of Kubuntu 19.10 on another partition and when I attempted to run the wrapper on that newer update, I received an error message:

pulseaudio error: connection refused

GQRX is not brought up and the operation simply halts. I am mentioning this hoping someone else will confirm/examine this problem. I am not a linux expert, so I will let others decide if the wrapper needs to be modified for the newer linux or if the situation is something I must take care of with my Kubuntu install.


Giovanni Franza
 

Hi Ken,
I fear that this issue is not related to wrapper. but it should be realated to the user.
In my experience some times pulseaudio has troble if used by root.
Do you obtain the same error message if you start gqrx (no wrapper) as root or as your normal user ?
Regards,

Giovanni - HB9EIK


Alberto I2PHD
 

On 2020-02-25 10:06, Giovanni Franza wrote:
I fear that this issue is not related to wrapper. but it should be realated to the user.
In my experience some times pulseaudio has troble if used by root.

The first command I issue both when starting Debian Buster on the PC or Raspbian on the Raspberry Pi3 B is :

 pulseaudio --kill

from then on the audio behaves as it should....

--
73 Alberto I2PHD
<<< http://www.weaksignals.com >>>



Ken
 

Giovanni, I can start gqrx without the wrapper and it gives no error message about pulseaudio. If pulseaudio is running as root, I don't know how to change that so it doesn't.

Alberto, I tried to use your method but got this error message:

E: [pulseaudio] main.c: Failed to kill daemon: No such process


Giovanni Franza
 

Ken,
thanks for the follow-up.
Do you launch gqrx and/or wrapper as root or as your user ?
Try to launch gqrx as root: the problem exists?
Try to launch wrapper as non root, and see if the problem is solved.
Launching the wrapper as non root can have problem with device permissions.
If this is the case you have to add some rules to your system udev:
it could be necessary to add in  /etc/udev/rules.d/elad.rules
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1721", ATTRS{idProduct}=="0610", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1721", ATTRS{idProduct}=="061a", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1721", ATTRS{idProduct}=="061c", MODE:="0666"
Hope this helps,

Giovanni - HB9EIK


Ken
 

Giovanni,

I created a folder called elad.rules within the folder rules.d
In the elad.rules folder, I added the three lines of text.
I always ran the wrapper with sudo and got the pulseaudio error.
With the added lines, I still get the pulseaudio error if trying to run as root.
I don't get the pulseaudio error when running the wrapper not as root.
However, I now get this error:

libusb: error [_get_usbfs_fd] libusb couldn't open USB device /dev/bus/usb/001/004: Permission denied
libusb: error [_get_usbfs_fd] libusb requires write access to USB device nodes.
libusb: error [_get_usbfs_fd] libusb couldn't open USB device /dev/bus/usb/001/004: Permission denied
libusb: error [_get_usbfs_fd] libusb requires write access to USB device nodes.

Sometimes gqrx will start up, sometimes not. If it comes up, it crashes as soon as I click to start the dsp.


Ken
 

Update...
I have deleted the created elad.rules folder and simply added the text lines into the rules.d folder, which was (probably?) your intended advice. I now can run gqrx but still have the libusb errors showing in terminal.


Ken
 

Giovanni,

Last update.. You were correct, the problem wasn't with the wrapper. Part of the reason for the problem was my limited linux abilities, the other was that the wrapper called up error when run as root. Another was that the system took a couple re-boots for the added text lines to be recognized. All is well now, thank you for your help to resolve this issue.


Steve Knell
 

Hi Giovanni,

I would like to use this wrapper also, on my Linux Mint 18.3 host.  I have followed the installation instructions, but 'sudo ./elad_gqrx' just hangs and setting GQRX_DEBUG and ELAD_DEBUG don't produce any output either.

Is this because my machine has an amd64 chip set?

Thanks,
Steve


Giovanni Franza
 

Hi steve,
what is the output of ldd ./elad_gqrx ?

what is the output of ldd ./elad_firmware ?

to set GQRX_DEBUG and ELAD_DEBUG, have you used
export GQRX_DEBUG=1
export ELAD_DEBUG=1
or something different ?

before launching sudo ./elad_gqrx what is the result of
echo GQRX_DEBUG
and
echo ELAD_DEBUG
?

Sorry to have only questions, but hope the answers can help to trace the problem.

Regards,

Giovanni - HB9EIK


Steve Knell
 

Hi Giovanni,

% ldd ./elad-gqrx
    linux-vdso.so.1 =>  (0x00007fff455df000)
    libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f62fe1ba000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f62fdeb1000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f62fdc94000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f62fd8ca000)
    libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f62fe7bd000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f62fe5e1000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f62fd6c2000)

% ldd ./elad-firmware
    linux-vdso.so.1 =>  (0x00007fffcedd0000)
    libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007f48f09f2000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f48f0628000)
    libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f48f191a000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f48f040b000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f48f173d000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f48f0203000)

% echo $ELAD_DEBUG
1

% echo $GQRX_DEBUG
1

% sudo ./elad-gqrx

[no output]
When I do a strace on the PID, I see this: 

strace: Process 5226 attached
open("/tmp/elad", O_WRONLY

Any ideas, please?

Thanks,
Steve