RTL-SDR Blog V4L (Lite) Users Guide

This page serves to inform users about information relevant specifically to the RTL-SDR Blog V4L (Lite). We encourage users to start with our quickstart guide in order to install the drivers and some common software first.

RTL-SDR Blog V4 Drivers

Due to the required changes made to the circuitry, updated drivers are necessary for the RTL-SDR Blog V4L. These updated drivers are backward compatible with the RTL-SDR Blog V4, V3, and older / other branded / generic RTL-SDR units as well.

Replacing the drivers is very simple, as we'll describe below. 

If you do not update or replace the drivers, then the V4L will simply not function correctly, and you will receive no signal.

We are working with various software providers to support the V4L natively, but for now, if your software doesn't support it natively, please use the instructions below.

Windows 

Almost all software

On Windows, updating the driver is usually just a matter of replacing a .dll file with one from our RTL-SDR Blog Driver Release on GitHub. Most software will use the rtlsdr.dll file in the x64 folder, but notably x86 programs like SDR#, welle.io and RTL1090 require the dll from the x86 folder.

In our quickstart guide, we have included instructions on how to replace the DLL for SDR#, SDR++ and CubicSDR. 

For any other software, the procedure will be similar:

  1. Download the Releases.zip file from our RTL-SDR Blog Driver GitHub releases page
  2. Copy the rtlsdr.dll file into the folder of the software you are using. Usually, this will replace an existing rtlsdr.dll file.
  3. On some computers, you may also need to copy the msvcr100.dll and pthreadVC2.dll files into the folder too. It does not hurt to copy these in anyway, even if you don't need them.

SDR# (SDRSharp)

The latest version of SDR# already downloads the RTL-SDR Blog branch when the install-rtlsdr.bat file is run. Make sure you are using the latest version of SDR# and not an older version. Only the newer versions have an updated install-rtlsdr.bat file which downloads the updated drivers.

HDSDR & SDRUno

For HDSDR and SDRUno please use the ExtIO from https://github.com/rtlsdrblog/ExtIO_RTL/releases. Extract this ExtIO DLL file into your HDSDR or SDRUno folder and choose it if HDSDR asks for the ExtIO on startup. 

Make sure that you disable "IF AGC" as this does not work correctly on the V4.

Spektrum

  1. Download the latest Release.zip from https://github.com/rtlsdrblog/rtl-sdr-blog/releases.
  2. Go into the spektrum\lib folder and rename the file librtlsdr.dll to librtlsdr.dll_old, or just delete librtlsdr.dll.
  3. Copy rtlsdr.dll, msvcr100.dll and pthread.dll from the rtl-sdr-blog x64 folder into the spektrum\lib folder. 
  4. Rename rtlsdr.dll to librtlsdr.dll

Linux (Debian)

On Linux, the procedure is also simple and just involves removing any existing RTL-SDR drivers and installing an updated version.

  1. Purge the previous driver:
    sudo apt purge ^librtlsdr
    sudo rm -rvf /usr/lib/librtlsdr* /usr/include/rtl-sdr* /usr/local/lib/librtlsdr* /usr/local/include/rtl-sdr* /usr/local/include/rtl_* /usr/local/bin/rtl_*
  2. Install the latest drivers:
    sudo apt-get install libusb-1.0-0-dev git cmake pkg-config build-essential
    git clone https://github.com/rtlsdrblog/rtl-sdr-blog
    cd rtl-sdr-blog
    mkdir build
    cd build
    cmake ../ -DINSTALL_UDEV_RULES=ON
    make
    sudo make install
    sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
    sudo ldconfig
  3. Blacklist the DVB-T TV drivers.
    echo 'blacklist dvb_usb_rtl28xxu' | sudo tee --append /etc/modprobe.d/blacklist-dvb_usb_rtl28xxu.conf
  4. Reboot

Alternative Debian Package Installation Method

If you have a system reliant on the Debian packages (eg. FlightRadar24, FlightAware, ADSBExchange, OpenWebRX+ images) you can update them directly using this method:

sudo apt update
sudo apt install libusb-1.0-0-dev git cmake build-essential pkg-config build-essential
sudo apt install debhelper

git clone https://github.com/rtlsdrblog/rtl-sdr-blog
cd rtl-sdr
sudo dpkg-buildpackage -b --no-sign
cd ..

sudo dpkg -i librtlsdr0_*.deb
sudo dpkg -i librtlsdr-dev_*.deb
sudo dpkg -i rtl-sdr_*.deb

Osmocom or Soapy Note

As reported by some users, if you use Osmocom blocks, or Soapy for any software, you may need to reinstall that software after updating the drivers.

Linux (arch)

On Arch distributions, updated packages are now available https://aur.archlinux.org/packages/rtl-sdr-git

MacOS

MacOS will unfortunately require that software providers update their package files themselves, as packages come with drivers prepackaged. At this time, we are not aware of any maintainers that have updated drivers to support the V4L yet.

Compiling RTL-SDR on macOS

If your software can make use of rtl_tcp, you can install the latest RTL-SDR and rtl_tcp via this method.

First, make sure you have installed Homebrew and Xcode. Open a terminal and run:

brew uninstall rtl-sdr

brew install cmake
brew install libusb
brew install pkgconfig
git clone https://github.com/osmocom/rtl-sdr
cd rtl-sdr
mkdir build
cd build/
cmake ../
make LIBRARY_PATH=/usr/local/lib
sudo make install

rtl_test -t

Now you should be able to run:

rtl_tcp -a 0.0.0.0

Note that on some MacOS devices, some people have been seeing "no LC_RPATH's found", and it has been necessary to do the following steps instead of the above:

brew install cmake libusb pkg-config git

git clone https://github.com/osmocom/rtl-sdr
cd rtl-sdr
mkdir build && cd build
P="$(brew --prefix)"

cmake .. \
-DCMAKE_INSTALL_PREFIX="$P" \
-DCMAKE_INSTALL_RPATH="$P/lib"

make -j"$(sysctl -n hw.ncpu)"
sudo make install

rtl_test -t

Android

SDR Touch / RTL-SDR TCP Driver

At this time not supported, but we are working on getting a pull request from our rtl_tcp_andro- fork merged into the Android RTL-SDR driver.

SDR++

At this time not supported.

SDRAngel

At this time not supported.

Updating the Drivers on the FlightRadar24, FlightAware and OpenWebRX Raspberry Pi4 Images

Set up your FlightRadar24 image as normal, then either log into SSH or attach a monitor. The FlightRadar24 image has default credentials pi/raspberry, pi/flightware for FlightAware and pi/adsb123 for ADSBExchange. Note on the FlightAware to enable SSH, you need to create a file with filename "ssh" on the boot folder of the SDcard.

Once logged into the terminal, run the following commands to update the librtlsdr packages. 

sudo apt update
sudo apt install libusb-1.0-0-dev git cmake build-essential
sudo apt install debhelper

git clone https://github.com/rtlsdrblog/rtl-sdr-blog
cd rtl-sdr
sudo dpkg-buildpackage -b --no-sign
cd ..

sudo dpkg -i librtlsdr0_*
sudo dpkg -i librtlsdr-dev_*
sudo dpkg -i rtl-sdr_*

Now reboot your Pi4 and it should work.

Forcing the Bias Tee on FlightRadar24, FlightAware

Note that this will only work once you have installed the RTL-SDR Blog drivers as per the instructions above. Forcing the bias tee on will not work with any other drivers.

FlightRadar 24

sudo systemctl stop fr24feed
sudo systemctl stop dump1090-mutability.service
rtl_eeprom -b 1

FlightAware

sudo systemctl stop dump1090-fa.service
rtl_eeprom -b 1

ADSBExchange

sudo systemctl stop readsb.service
rtl_eeprom -b 1

After changing the EEPROM reboot your Pi 4.

RTL-SDR Blog HF Mode

Unlike the RTL-SDR Blog V3, there is no need to activate direct sampling mode to receive HF. You can instead simply tune to an HF frequency and it will work. Activating direct sampling mode on a V4 dongle will yield no results.

Software Selectable Bias Tee

V1 and V2 of our dongles included a bias tee which could manually be enabled by opening the case and soldering two pads on the PCB together. V3 and V4 introduces a 4.5V bias tee that can be toggled entirely in software. The bias tee can continuously pull up to 180 mA of current.

WARNING: Before using the bias tee please ensure that you understand that you should not use this option when the dongle is connected directly to a DC short circuited antenna unless you are using an LNA. Although the bias tee circuit is dual protected against accidental shorts with a thermal self-resetting fuse and overcurrent protection on the LDO, short circuiting the bias tee for an extended period of time (days) could damage the LDO or fuse permanently. Only use it while connected to an actual powered device, like an LNA, active antenna or the SpyVerter.

To make things clearer: DC Short Antenna -> LNA -> Coax -> V3(bias tee on) is absolutely fine. What's not good and makes no sense anyway is DC Short Antenna -> Coax -> V3(bias tee on). DC Short Antenna -> Coax -> V3(bias tee off) is fine.

Note that the legacy DVB-T TV drivers will activate the bias tee by default. On Linux ensure that you have properly blacklisted the DVB-T drivers. More info on how to blacklist on the Linux section on the quickstart guide.

When the bias tee activates you should be able to see a small red LED illuminate, visible through a tiny hole next to the SMA port.

Windows

In most software there is an option to enable "Offset Tuning". This option is irrelevant for R820T/R860/R828D/R828S based dongles. Instead, we have repurposed it as a switch for our bias tee. This will work as long as you are running our RTL-SDR Blog drivers. 

To enable or disable the bias tee, simply activate or deactivate the "Offset Tuning" option. In SDR# this option is available in the RTL-SDR Configure menu, next to the gain settings.

Alternatively, you can activate the bias tee via the command prompt by using the rtl_biast.exe program available in our driver release. In a command prompt simply change directories into the folder where you have extracted Release.zip, and run "rtl_biast -b 1" to turn the bias tee ON, and "rtl_biast -b 0" to the turn bias tee OFF.

Note that rtl_biast will only run if there is no other software accessing the RTL-SDR, so make sure to close other software first.

Linux

If you have installed our RTL-SDR Blog drivers, you can simply run "rtl_biast -b 1" at a terminal to activate the bias tee, or "rtl_biast -b 0" to deactivate it.

Forcing the Bias Tee to be Always ON

By setting an EEPROM flag you can force the bias tee to always be ON. This is useful for software programs that don't have a bias tee option. To do this simply run the following command in a Linux terminal where you have installed the RTL-SDR Blog drivers, or a Windows command prompt where you extracted our driver release.

rtl_eeprom -b 1

The unplug and replug the dongle in after.

Note that the bias tee will only be forced on if the software os system is using our RTL-SDR Blog drivers. If any other driver is being used, the bias tee EEPROM flag will simply be ignored.

RTL-SDR Blog EEPROM Strings NOTE

Please do not change the EEPROM manufacturer or product strings on the EEPROM as the drivers check for a specific string in order to determine if the dongle is a V4 or not. The strings must match

Manufacturer: RTLSDRBlog

Product: Blog V4L