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 .. -DDETACH_KERNEL_DRIVER=ON 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.
Thanks to the discussion on the FlightAware forums and in particular user 'obj' for originally finding this automatic solution.
BIAS-T for ADSBEXCHANGE Pre-built
#Setup adsbexchange at http://adsbexchange.local/
#Ensure some aircraft are visible at http://adsbexchange.local/tar1090/
#SSH to your server
#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.
git clone https://github.com/rtlsdrblog/rtl_biast
cmake .. -DDETACH_KERNEL_DRIVER=ON
#Testing the Bias-T
sudo service readsb stop && cd ~/rtl_biast/build/src && ./rtl_biast -b 1 && sudo service readsb start
#With the pre-amp in-line, look for additional aircraft at http://adsbexchange.local/tar1090/
#Configure adsbexchange to switch-on bias-t of RTL-SDR V3, BEFORE starting #adsbexchange
sudo nano /etc/systemd/system/adsbexchange-first-run.service
THEN ADD the third line below:
ExecStartPre=/home/pi/rtl_biast/build/src/rtl_biast -b 1
Finally press Ctrl+X then Y to close and save.
Now whenever adsbexchange reboots the bias tee should be automatically activated as this service runs before readsb service is activated.
Test this by rebooting the server and checking status then aircraft at http://adsbexchange.local/tar1090/
Automatic script that works for dump1090-fa / readsb / piaware image / adsbexchange image:
Thank you @wiedehopf
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.
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
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……
The Service Mode for enabling Bias-T does not work at all… it lockes up the Dump1090-fa service from restarting up properly… sigh!
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.
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?
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.
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 —
service dump1090-fa stop
./rtl_biast -b 1
service dump1090-fa start
— EOF biast.sh —
Will this mod survive a Piaware update; ie is it safe to leave automatic update enabled?
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:
Also create the file /etc/systemd/system/dump1090-fa.service.d/bias-t.conf and add these lines to it:
ExecStartPre=/home/pi/rtl_biast/build/src/rtl_biast -b 1
Reboot your Pi and the LNA should be powered up.
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
This method to switch on biast does not work with Flightradar24’s Pi24 image which has an integral dump1090-mutability v1.14, whose start is controlled by the data feede software “fr24feed”.
I have posted method to turn-on bias-t on Pi24 image in this post of Flightradar24 forum:
Works like a bought one.