From charlesreid1

Scripts to install prerequisites for flight-aware: https://charlesreid1.com:3000/charlesreid1/flight-aware

Hardware

FlightAwareHardware1.jpg FlightAwareHardware2.jpg

Software

Scripts to execute the commands below can be downloaded here: https://git.charlesreid1.com/charlesreid1/flight-aware

Install software needed

Start by installing stuff that you need:

apt-get install -y \
	libboost-all-dev \
	libusb-1.0 \
	libusb-dev \
	libusb-1.0-0-dev \
	devscripts \
	cmake \
	portaudio19-dev \
	iproute \
	python-virtualenv

apt-get install -y \
	tcl8.5-dev \
	tclx8.4-dev \
	itcl3-dev \
	tcl-tls \
	tcllib \
	tcl-tclreadline \

Install RTL-SDR

Next, install rtl-sdr package from osmocom. We will also need to disable the DVB driver, not using this for TV.

git clone git://git.osmocom.org/rtl-sdr.git /root/codes/rtl-sdr
cd /root/codes/rtl-sdr
mkdir build
cd build
cmake ../
make
make install
cd /root
cp /root/codes/rtl-sdr/rtl-sdr.rules /etc/udev/rules.d/.
ldconfig

# disable DVB driver
mkdir -p /etc/modprobe.d/
cd /etc/modprobe.d/
echo "blacklist dvb_usb_rtl28xxu" >> /etc/modprobe.d/ban-rtl.conf

Before moving on to the next step, need to restart.

After restarting, plug the FlightAware device in.

Install dump1090-fa

Next install software specifically for dump1090-fa. At the conclusion of this step, you should be able to see your first flight information from the receiver.

Start by checkout out a copy of the flightaware dump1090 repo:

DUMP1090_PATH="/root/codes/dump1090"
git clone https://www.github.com/flightaware/dump1090 ${DUMP1090_PATH}
cd ${DUMP1090_PATH}

You don't want to build this manually - that will cause dump1090 binaries to sit in that directory and they will not be found on your path. Furthermore, there will be no startup service, and the piaware program tries to invoke dump1090-fa via a startup service. So, just build the .deb package. (If you see warnings about not being able to sign the package with a GPG key, that's okay, we're just building the package for ourselves.)

./prepare-wheezy-tree.sh
cd package-wheezy/
dpkg-buildpackage -b

Now install the two packages created, in the specified order:

cd ../
dpkg -i dump1090-fa_3.5.1~bpo9+1_amd64.deb
dpkg -i dump1090_3.5.1~bpo9+1_all.deb

This installs a binary called dump1090-fa, as well as installing a startup service called dump1090-fa. Running the command below should reveal a new startup service called dump1090-fa:

$ service --status-all

Test dump1090-fa

Now we can test the dump1090-fa binary. First, make sure your FlightAware RTL-SDR dongle is plugged in. If you have problems with the commands below, you can also try restarting.

First, test the dump1090-fa utility (standalone, not as a startup service):

dump1090-fa --interactive


WARNING: DUBIOUS, MAY CAUSE PROBLEMS

Finally, install the tcllauncher for flightaware:

#!/bin/sh
# 
# pastebin.com/eKbm118F
# 
# tinyurl.com/y7lghzs4
#
# The FlightAware should now be working.
# This script will install PiAware
# so you have a fancy-pants dashboard.

echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "~~~ INSTALL FLIGHTAWARE TCLLAUNCHER ~~~~~~~"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"

export FA_DIR="/root/codes/tcllauncher"
git clone https://github.com/flightaware/tcllauncher.git ${FA_DIR}
cd ${FA_DIR}
autoconf
./configure --with-tcl=/usr/lib/tcl8.5
make
make install

echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "~~~ INSTALL PIAWARE ~~~~~~~~~~~~~~~~~~~~~~~"
echo "~~~ (IF N.E.1 AXES, UR RUNNIN WHEEZY) ~~~~~"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"

export PIAWARE_DIR="/root/codes/piaware_builder"
git clone https://github.com/flightaware/piaware_builder.git ${PIAWARE_DIR}
cd ${PIAWARE_DIR}
./sensible-build.sh wheezy

make
make install
sudo update-rc.d piaware defaults

echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "~~~ NOW SET UR FLIGHTAWARE CREDS ~~~~~~~~~~"
echo "~~~ service piaware start ~~~~~~~~~~~~~~~~~"
echo "~~~ piaware-config -user USERNAME -password"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"

Troubleshooting

Checking Status: Method 1

To check on the status of piaware, and assuming it was installed using the piaware_builder repository (i.e., that you built a debian package and installed it using dpkg), which also creates a startup service, you can use systemctl to check on the status of the startup service:

# systemctl status piaware

● piaware.service - FlightAware ADS-B uploader
   Loaded: loaded (/etc/systemd/system/piaware.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri 2017-08-18 04:22:31 PDT; 10h ago
     Docs: https://flightaware.com/adsb/piaware/
 Main PID: 2831 (piaware)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/piaware.service
           └─2831 /usr/bin/piaware -p /run/piaware/piaware.pid -plainlog -statusfile /run/piaware/status.json

Aug 18 15:12:34 WindowsXP sudo[3810]:  piaware : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/bin/netstat --program --tcp --wide --all --
Aug 18 15:12:34 WindowsXP sudo[3810]: pam_unix(sudo:session): session opened for user root by (uid=0)
Aug 18 15:12:34 WindowsXP sudo[3810]: pam_unix(sudo:session): session closed for user root
Aug 18 15:12:34 WindowsXP piaware[2831]: no ADS-B data program seen listening on port 30005 for 370 seconds, trying to start it...
Aug 18 15:12:34 WindowsXP piaware[2831]: attempting to start dump1090..
Aug 18 15:12:34 WindowsXP piaware[2831]: can't start dump1090, no services that look like dump1090 found
Aug 18 15:12:44 WindowsXP sudo[3813]:  piaware : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/bin/netstat --program --tcp --wide --all --
Aug 18 15:12:44 WindowsXP sudo[3813]: pam_unix(sudo:session): session opened for user root by (uid=0)
Aug 18 15:12:44 WindowsXP sudo[3813]: pam_unix(sudo:session): session closed for user root
Aug 18 15:12:44 WindowsXP piaware[2831]: no ADS-B data program seen listening on port 30005 for 10 seconds, next check in 60s

Checking Status: Method 2

To check the status of piaware, you can also use the status.json file:

# cat /run/piaware/status.json 
{
    "piaware"  : {
        "status"  : "green",
        "message" : "PiAware 3.5.1 is running"
    },
    "expiry"   : 1503094220448,
    "interval" : 5000,
    "mlat"     : {
        "status"  : "red",
        "message" : "Multilateration is not enabled"
    },
    "adept"    : {
        "status"  : "green",
        "message" : "Connected to FlightAware and logged in"
    },
    "radio"    : {
        "status"  : "red",
        "message" : "Not connected to receiver"
    },
    "time"     : 1503094209448
}

Links

Multilateration (MLAT) overview: https://flightaware.com/adsb/mlat/

PiAware if you already have dump1090: http://flightaware.com/adsb/piaware/install

PiAware building base station: http://flightaware.com/adsb/piaware/build

PiAware repo: https://github.com/flightaware/piaware

PiAware builder repo: https://github.com/flightaware/piaware_builder

PiAware repo wiki - release notes: https://github.com/flightaware/piaware/wiki/PiAware-Release-Notes

  • "Piaware will now attempt to start dump1090 if no ADS-B producer program is seen listening for connections on port 30005 (the "Beast" binary data port) for more than six minutes."

Dump1090 repo: https://github.com/flightaware/dump1090

FlightAware stats: https://flightaware.com/adsb/stats/user/charlesreid1

Flags