1
$\begingroup$

On a Raspberry Pi 3 B+ running Raspbian Stretch, when I run this command,

timeout 115 rtl_fm -d 0 -g 49 -M usb -s 32000  -r 32000 -F 1 -f 50.293M outfile.raw

I get the following messages, the last line of which is an error:

Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Tuner gain set to 49.60 dB.
rtl_fm: symbol lookup error: rtl_fm: undefined symbol: rtlsdr_set_bias_tee

Does anyone know how to fix this?

The Internet says it is just a library issue and the following commands should fix it:

LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH
sudo ldconfig

I did this and rebooted... same problem

Hardware:

Computer is a Raspberry Pi 3 B+ running the latest Raspbian Stretch.

RTL-SDR dongle is V3 with the following printed on it: RTL 2832U R820T2 TCX0 + Bias T + HF

A note about the Bias T: I am not using that function. Not on purpose, anyway. The antenna is a simple dipole and I have no need to feed power into the antenna line.

Background:

I am using the RTL-SDR as part of a WSPR listening station. A Kiwi-SDR is monitoring 7 other bands while the RTL-SDR is monitoring 6m. The output from the RTL-SDR is sent into sox for processing and then over to wsprd for analysis. The Pi seems to be able to handle quite a few channels like this; I am monitoring 7 total and the Pi handles it easily. More channels will be added as time goes on; still tweaking the software and the signal processing. This system has worked well for some months, however I thought it could be useful to change the command from

timeout 115 rtl_fm -d 0 -g 49 -M usb -s 32000  -r 32000 -F 1 -f 50.293M outfile.raw

to

timeout 115 rx_fm -d 0 -g 49 -M usb -s 32000  -r 32000 -F 1 -f 50.293M outfile.raw

At this point I have given up on that; rx_fm is a clone of rtl_fm with some improvements but I was never able to get it to work. Along the way --adding software to try to get rx_fm to work-- I broke something. For a week or so, I was getting the above error message when running rtl_fm as root (sudo) however not as a user (pi). Today, it is now affecting the user and so the 6m listening segment is now off line.

The thing that changed today --strange as it seems-- was some of the flags as shown below. With the new flags, the error message started. Restoring the original flags, the error message remains. The command with the new flags was

timeout 115 rtl_fm -d 0 -g 49 -M usb -s 96000  -r 96000 -F 1 -f 50.293M outfile.raw

(changed 32k to 96k, expecting some SNR benefits) Once I saw the above-referenced error, I changed it back to 32k.

This seems like it should be fairly straightforward, but it has me confused.

How do I address the "symbol lookup error" so the RTL-SDR can start working again?

$\endgroup$
  • $\begingroup$ the "internet" is wrong here. $\endgroup$ – Marcus Müller Mar 23 at 8:59
  • 1
    $\begingroup$ that is plain an installation issue, and you should fix the installation. Chances are you've tried installing multiple competing versions of librtlsdr and/or the binary tools that come with it (e.g. rtl_fm) $\endgroup$ – Marcus Müller Mar 23 at 9:00
  • $\begingroup$ This makes sense. I made a lot of changes without taking good notes. Thanks! $\endgroup$ – Chris K8NVH Mar 23 at 13:38
  • $\begingroup$ @MarcusMüller please write this as an answer when you get a chance so I can accept it. $\endgroup$ – Chris K8NVH Mar 23 at 15:41
  • $\begingroup$ I think your answer is pretty good – accept yourself (you might need to wait a day or so to be able to do that!) $\endgroup$ – Marcus Müller Mar 23 at 15:50
3
$\begingroup$

Based on the observations by @MarcusMüller I looked more closely at the installation. I had, indeed, installed multiple versions.

$ which -a rtl_fm
/usr/local/bin/rtl_fm
/usr/bin/rtl_fm

$ ls -la /usr/local/bin/rtl_fm /usr/bin/rtl_fm 
-rwxr-xr-x 1 root root 26836 Oct 11  2017 /usr/bin/rtl_fm
-rwxr-xr-x 1 root staff 39772 Mar 16 20:35 /usr/local/bin/rtl_fm

$ sudo rm /usr/local/bin/rtl_fm

In other words, I found multiple instances of the executable rtl_fm and simply removed the newest one.

Problem went away.

However, this only makes the immediate problem go away. There are other redundant executable files to be removed in that same directory and, likely, libraries as well.

My immediate issue is resolved.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.