Getting the V3 Bias Tee to Activate on PiAware ADS-B Images

A few owners of our RTL-SDR V3 and/or our Triple Filtered ADS-B LNA (or other bias tee powered LNAs) have been having trouble getting the V3 bias tee to activate on the FlightAware PiAware Raspberry Pi image. The core stumbling point is that the PiAware image activates the dump1090 ADS-B decoder immediately upon boot. To activate the bias tee, the bias tee software requires access to the dongle which it cannot get since dump1090 is blocking it. So to get around this the bias tee must be activated first before dump1090 runs.

PiAware is FlightAware's Raspberry Pi image which feeds their flightaware.com flight tracking service using RTL-SDR dongles. By using our Triple Filtered ADS-B LNA, users can expect increased range and decoded messages, especially when using long runs of coax cable, and/or in environments with strong interfering signals.

In the instructions below we'll explain how to set up a PiAware image that automatically enables the Bias Tee upon boot.

Downloading the V3 Bias Tee Software onto PiAware

First we assume that you're starting fresh from a new PiAware image, so we need to enable WiFi and SSH connections which is part of the standard set up for PiAware. See the following links for instructions.

Enable WiFi via config file https://flightaware.com/adsb/piaware/build

Enable SSH by adding ssh file to boot https://flightaware.com/adsb/piaware/build/optional#password

 
Now log in to your PiAware machine using SSH and PuTTY (or any other terminal software) using username "pi" and password "flightaware".

Run the following commands to update and install some dependencies. 

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

 
Download and install the RTL-SDR V3 Bias Tee software.

cd ~
git clone https://github.com/rtlsdrblog/rtl_biast
cd rtl_biast
mkdir build
cd build
cmake ..
make

Testing the Bias Tee

Over on his blog Akos has created a short guide to activating the bias tee manually, by first stopping dump1090, activating the bias tee, then restarting dump1090. It's a simple one line copy and paste job.

So after installing the rtl_biast software above you can use the following line to test the bias tee. After running this line the FlightAware service should be up and running again, with the bias tee and LNA activated.

sudo service dump1090-fa stop && cd ~/rtl_biast/build/src && ./rtl_biast -b 1 && sudo service dump1090-fa start

Automatically Starting the Bias Tee on Boot

Ideally we don't want to have to reactivate the bias tee manually every time the Raspberry Pi reboots. To make it automatic use the following instructions:

First create a service directory and configuration file

sudo mkdir /etc/systemd/system/dump1090-fa.service.d
sudo nano /etc/systemd/system/dump1090-fa.service.d/bias-t.conf

 
Then paste in the following

[Service]
ExecStartPre=/home/pi/rtl_biast/build/src/rtl_biast -b 1

 
Finally press Ctrl+X then Y to close and save. Now whenever PiAware reboots the bias tee should be automatically activated as this service runs before dump1090 is activated.

Credits:

Thanks to the discussion on the FlightAware forums and in particular user 'obj' for originally finding this automatic solution.

13 comments

  1. Peter

    Got the LNA new from EBay, switched on the bias, a green LED is lighting inside the LNA, but it is not working at all. Getting only one or two planes on the dump1090 map. Without LNA (RTL-SDR v3 only) there are more than 60 planes.

    • JON ADAMS

      That happened to me as well about 2 months back. Ordered one, arrived in what appeared to be fine condition, connected it to the base of the 1090 stick on the balcony, fed 5 Vdc to it, but nearly no a/c. A few, to be sure, but only a few. Green LED on inside.
      Opened device, inspected traces, no obvious opens or shorts, but could not find an issue. Put it on network analyzer and wiggled connectors, pushed on components, used some freeze mist, always have a concern of cold solder joints or hairline cracks in solder where there’s significant potential for mechanical stress on a connector, lo and behold gain would change intermittently over about 30 dB. Touched up solder joints on connectors. No change. Still completely unreliable.
      Emailed the vendor – he graciously shipped another my way. This one works absolutely fine. No issues. Now two months into a PHX summer, the amp chugs away outside (not exactly in direct sun, in the shade, but not in any way insulated against heat).
      I need to send the intermittent one back to him so he can attempt to figure out the problem.
      Cheers and 73 – Jon N7UV

  2. Simon

    Is there a hardware mod to keep BiasTee enabled? Or should I buy the NooElec SMArTee instead?
    Because I want Bias Tee enabled permanently without the hassle every times the Pi reboots……

  3. JON ADAMS

    Here’s an interesting thing – I had two RTL-SDR v3s, both with the “enableable” bias-T function, but had never used that function. The both had provided at least a year or two or more of solid service for a number of projects I had, most recently being on the downstream side of homebrew Piaware ADS-B amp/filter front ends, where they worked just fine.
    I just purchased the ADS-B 19090 MHz LNA (RTL-SDR product) because I was intrigued by the massive filtering design of the device. I have transmitters (10-50 W or more) often nearby, and SDR desense is common without good filtering.
    This is where it went bad. The first LNA/filter unit arrived a few days ago, I connected it up right at the antenna (a Flightaware 1090 MHz stick), and proceeded to figure out how to get the SDR dongle to activate the bias-T function. The thread here was fundamental to getting the bias-T voltage output to activate on a Piaware RaspiPi build.
    In any event, after a few days of struggling with getting the bias-T to activate reliably, and getting Piaware to not balk at the hardware access, the first (and most recent) RTL-SDR V3 up and died on me. “Died” in that, if inserted into a RaspPi, prevents the RPi from booting successfully. I mean to the point that the Ethernet LEDs never come on.
    The other RTL-SDR dongle, also a v3 but a little older, still works but does not seem to be able to activate the bias-T voltage, so the amp acts like a 20-30 dB attenuator…
    I’ve ordered two new SmartTee dongles, as they’re advertised to have “always on” bias-T, which for my particular purposes is satisfactory to me. Nonetheless, I’m curious as to why the one RTL died hard, and the other one doesn’t seem to respond to the commands from the above thread.
    Thoughts?

    • Simon

      It seems to me that the power supply of the RPi can’t deliver the extra 150mA current. Do you use the original 5.1Volt / 2A power supply?

  4. wiedehopf

    There have been some problems reported using this method probably because of missing blacklisting of some kernel drivers.

    Could you include the automatic detaching of kernel drivers to avoid those problems?
    So change the “cmake ..” line to:
    cmake .. -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON

    I think enabling the UDEV rules has no effect because the package is never actually installed so that part could probably be removed.

  5. Rodney Yeo

    If you want it to load at boot up via rc.local or crontab… do add a sleep 10 timer else it will fail to work!

    — BOF biast.sh —
    #!/bin/bash
    sleep 10
    service dump1090-fa stop
    cd ~/rtl_biast/build/src
    ./rtl_biast -b 1
    service dump1090-fa start
    — EOF biast.sh —

  6. RobR

    On the Raspberry Pi running Stretch I needed to blacklist the builtin DVB-T drivers or rt_biast would fail with a “usb_claim_interface error -6” message. To blacklist, create the file /etc/modprobe.d/blacklist-rtl.conf and add these lines to it:

    blacklist dvb_usb_rtl28xxu
    blacklist rtl2832
    blacklist rtl2830
    Also create the file /etc/systemd/system/dump1090-fa.service.d/bias-t.conf and add these lines to it:

    [Service]
    ExecStartPre=/home/pi/rtl_biast/build/src/rtl_biast -b 1

    Reboot your Pi and the LNA should be powered up.

  7. abcd567

    The method to switch-on bias-t through dump1090-fa.service does not apply to dump1090-mutability, as ALL the dump1090-mutability.service files automatically generated by systemd-sysv-generator, and all the changes made by user are overwritten at restart / reboot.

    However as the systemd-sysv-generator generates dump1090-mutability.service by reading from file `/etc/init.d/dump1090-mutability, I have added bias-t start and logging script in that file, and it works OK.

    Please see my post dated today (May 01, 2018) in Flightaware forum:

    Dump1090-mutability and RTL-SDR V3 Bias-T Auto Switch-ON

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.