ADS-B RX Flightaware on Ubuntu

Schermafdruk 2016-03-22 08.16.36Recently I got hold of an embedded Aopen PC and since I wanted to free the Raspberry PI for other stuff, I decided to follow steps on the internet to install Flightaware software such as Dump1090 and PIAWARE on this neat little machine. That didn’t go well, so here is my story, compiled of various internet articles to get a working solution.

 

 

 

 

 

Update the system

sudo apt-get update
sudo apt-get dist-upgrade

Now install what is needed to all the work, else dump1090 would not build):

$ sudo apt-get install tcl8.5-dev tclx8.4-dev itcl3-dev tcl-tls tcllib build-essential devscripts lintian diffutils patch patchutils automake cmake tcl-tclreadline telnet git gcc make

(If you are running a Raspberry Pi you may wish to update the firmware as well.   $  sudo rpi-update)

First install the software to make the rtl-sdr work.

$ sudo apt-get install git cmake libboost-all-dev libusb-1.0-0-dev python-scitools portaudio19-dev -y

Download RTL-SDR (assuming you’re in ~/):

$ sudo git clone git://git.osmocom.org/rtl-sdr.git
 Install RTL-SDR:
  • $ cd rtl-sdr/
  • $ sudo mkdir build
  • $ cd build
  • $ sudo cmake ../
  • $ sudo make
  • $ sudo make install
  • $ cd ~
  • $ sudo cp ~/rtl-sdr/rtl-sdr.rules /etc/udev/rules.d/
  • $ sudo ldconfig

We need to disable the DVB driver since we’re not watching TV and it interferes:

$ cd /etc/modprobe.d/

$ sudo vi ban-rtl.conf

Add this line to ban-rtl.conf (you will be creating the file):
blacklist dvb_usb_rtl28xxu

Plug in the receiver if you haven’t already and restart. When you log back in, run:

$ rtl_test -t              It should say something like:

Found 1 device(s):
0:  Realtek, RTL2838UHIDIR, SN: 00000001
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6 
Sampling at 2048000 S/s.

Install prerequisite packages needed to build both Piaware and dump1090-mutability.

sudo apt-get install build-essential debhelper librtlsdr-dev libusb-1.0-0-dev pkg-config tcl8.5-dev autoconf python3-dev python-virtualenv libz-dev git tclx8.4 tcllib tcl-tls itcl3

Next enter your home directory and clone the git repository for dump1090-mutability and build the package to be installed.

$ mkdir ~/build
$ cd ~/build
$ git clone https://github.com/mutability/dump1090.git
$ cd ~/build/dump1090
$ dpkg-buildpackage -b

Now clone the the Piaware Debian Package Builder and create the package which will be used to install Piaware.

$  cd ~/build
$ git clone https://github.com/flightaware/piaware_builder.git
$  cd ~/build/piaware_builder
$  ./sensible-build.sh wheezy
$  cd ~/build/piaware_builder/package-wheezy
$  dpkg-buildpackage -b

It is now time to install the newly created Piaware and dump1090-mutability packages. When installing dump1090-mutability you will be asked if you want it to automatically start. Generally you will want to answer yes to this question.

$  sudo dpkg -i ~/build/dump1090-mutability_1.15~dev_*.deb

check if iproute is installed

$  sudo apt-get install iproute
$  sudo dpkg -i ~/build/piaware_builder/piaware_3.0.5_*.deb

Changes were made to Piaware with the release of v2.1-3.

“Piaware now sends mlat results to port 30104 by default. This change is to try to avoid accidentally feeding mlat results to a dump1090 that is not mlat-aware and may forward the results on unexpectedly (e.g. to other feeder software that doesn’t expect to see them).”

If you want MLAT results sent to dump1090-mutability you will need to complete one of two options.

1) EITHER have Piaware use the older default port 30004 to send data.

$  sudo piaware-config -mlatResultsFormat beast,connect,localhost:30004
$  sudo /etc/init.d/piaware restart

2) OR configure dump1090-mutability to listen for the data on the new port 30104.

$  sudo nano /etc/default/dump1090-mutability

Change the line BEAST_INPUT_PORT=”30004″ to BEAST_INPUT_PORT=”30104″ then reload dump1090-mutability.

$  sudo /etc/init.d/dump1090-mutability force-reload

Now associate your Piaware device with your FlightAware account.
sudo piaware-config -user <YOUR FLIGHTAWARE LOGIN> -password
sudo /etc/init.d/piaware restart

At this point you will have a working Piaware feeder. This step is optional and will cover setting up Lighttpd so you can view aircraft being tracked by your receiver in a browser. The following commands will install Lighttpd and the dump1090 mod. After completing the following commands you can view the dump1090 web interface by browsing to http://xxx.xxx.xxx.xxx/dump1090.

$  sudo apt-get install lighttpd
$  sudo lighty-enable-mod dump1090
$  sudo /etc/init.d/lighttpd force-reload
$  sudo /etc/init.d/lighttpd force-reload