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

GQRX Won't open without my device connected #708

Closed
mewtek opened this issue Oct 24, 2019 · 9 comments
Closed

GQRX Won't open without my device connected #708

mewtek opened this issue Oct 24, 2019 · 9 comments

Comments

@mewtek
Copy link

mewtek commented Oct 24, 2019

Hello there!

I've spent my night trying to configure an rtl_tcp server on my Raspberry Pi 4, and I heard that GQRX could connect to an rtl_tcp server just fine and listen to it from there, but, unfortunately, whenever I attempt to start GQRX, it refuses unless I have my device connected to it, which ultimately defeats the purpose of the rtl_tcp server.

Here's the log whenever I try to start GQRX on my PC:
gr-osmosdr v0.1.4-134-gf3905d35 (0.1.5git) gnuradio 3.8.0.0 built-in source types: rtl uhd hackrf bladerf rfspace airspy soapy redpitaya [INFO] [UHD] linux; GNU C++ version 9.1.0; Boost_107100; UHD_3.14.1.0-0-unknown terminate called after throwing an instance of 'std::runtime_error' what(): No supported devices found (check the connection and/or udev rules). Aborted (core dumped)

@kerel-fs
Copy link

kerel-fs commented Oct 24, 2019

I can reproduce this bug using the exact same versions (archlinux x64 host system).

edit:
GQRX doesn't support gnuradio 3.8 yet, see #657 (comment) . Several patches are already available, but they are not merged to the master branch yet.

@alexf91
Copy link
Contributor

alexf91 commented Oct 24, 2019

Your version of gr-osmosdr is not built with RTL-TCP support and neither is the one in the Arch Linux community repository.
For some reason (I assume it has something to do with the 3.8 update) the variable GNURADIO_BLOCKS_FOUND is not set during the build, which disables the RTL-TCP and file sources.

@kerel-fs
Copy link

Indeed, our gr-osmosdr builds are missing the rtl_tcp support, but this is unrelated to gqrx crashing (which happens due to #657 (comment) as described earlier).

OT: The missing rtl-tcp support in gr-osmosdr can be fixed by this patch-00-gr38-compat.txt from the FreeBSD ports

@alexf91
Copy link
Contributor

alexf91 commented Oct 24, 2019

#657 (comment) causes a crash of Gqrx if no device has been configured before (e.g. on the first start). It then uses /dev/random as its source. I don't think this is the case here because the gr-osmosdr builds without the RTL-TCP source are also missing the file source.

Anyways, this is not an issue of Gqrx besides maybe the crash and the core dump, which is addressed in PR #686.

I have created a PR with the patch you linked. igorauad/gr-osmosdr#2

@205er
Copy link

205er commented Nov 13, 2019

Does that mean, that GQRX will only work again, as soon as the osmosdr packages has been updated?
Is there another way to get GQRX running again on my Manjaro installation?
Sorry if this is a dumb question, but I am not well versed in this subject. ;-)

@alexf91
Copy link
Contributor

alexf91 commented Nov 14, 2019

It does work, but only if a supported device is connected.
In the meantime you can build the package yourself with this PKGBUILD:

# Maintainer: Kyle Keen <keenerd@gmail.com?>
# Contributor: Dominik Heidler <dheidler@gmail.com>

pkgname=gnuradio-osmosdr
_pkgname=gr-osmosdr
_r=128
_commit=92106ff1275fa57507800811644e454f343c5f6c
pkgver=0.1.5.r$_r.${_commit:0:6}
pkgrel=3
pkgdesc='Source block for Funcube Dongle, RTL-SDR, USRP, OsmoSDR, BladeRF, HackRF and AirSpy devices'
url='https://sdr.osmocom.org/trac/'
arch=('x86_64')
license=('GPL')
depends=('gnuradio' 'gnuradio-iqbal' 'rtl-sdr' 'gnuradio-fcdproplus' 'hackrf' 'bladerf' 'airspy' 'soapysdr')
optdepends=('python-opengl: osmocom_fft')
makedepends=('git' 'cmake' 'boost' 'swig')
replaces=('gr-osmosdr')
#source=("git://git.osmocom.org/gr-osmosdr#commit=$_commit")
# use this random dude's repo, because where is osmocom?
source=("git://github.com/alexf91/gr-osmosdr/#commit=$_commit")
md5sums=('SKIP')

# add support for miri, osmo?

prepare() {
  cd $_pkgname

  #sed -i 's/python$/python2/' apps/osmocom_siggen_base.py
}

build() {
  cd $_pkgname

  mkdir -p build
  cd build

  cmake \
    -Wno-dev \
    -DCMAKE_BUILD_TYPE=Release \
    -DPYTHON_EXECUTABLE="$(which python3)" \
    -DPYTHON_INCLUDE_DIR="$(echo /usr/include/python3*)" \
    -DPYTHON_LIBRARY="$(echo /usr/lib/libpython3.*.so)" \
    -DBoost_NO_BOOST_CMAKE=ON \
    -DCMAKE_INSTALL_PREFIX=/usr ../

  make
}

package() {
  cd $_pkgname/build

  make DESTDIR="$pkgdir" install
}

Save it as PKGBUILD in an empty directory and run makepkg -si to install it.

Note that this only works with GNU Radio 3.8 and the gqrx package in the community repository. gqrx-git from the AUR won't work until #705 is merged.

@kolbma
Copy link
Contributor

kolbma commented Mar 4, 2020

Should work now, I think.
Also you'll need to restart to get newly attached devices in config dialog.

@alexf91
Copy link
Contributor

alexf91 commented Oct 10, 2020

This can be closed.
The problem has been fixed in the official gr-osmosdr repository and the Arch Linux package is built correctly now.

@csete
Copy link
Collaborator

csete commented Oct 11, 2020

Thanks for following up 👍

@csete csete closed this as completed Oct 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants