Tagged: Automatic dependent surveillance broadcast

Tracking Dictators Around the World with ADS-B Data

Over on Reddit freelance investigative journalist Emmanuel Freudenhal has put up a very interesting post about how he is using ADS-B tracking to keep an eye on the travel habits of dictators around the world. If you were unaware, ADS-B is a signal transmitted by aircraft which contains aircraft ID info, and data such as speed, altitude and GPS location. Websites like ADS-B Exchange aggregate ADS-B data from volunteer ground stations that are running (mostly) RTL-SDR dongles. Emmanuel notes that by watching the movements of aircraft registered to dictators, it is possible to keep an eye on their travel habits.

One story that Emmanuel has written using this data is a piece on Paul Biya, Cameroon's president. His article discusses how Paul Biya is often seen in Geneva Switzerland, away on private visits. In a comment, Emmanuel notes that since his story ran, Paul Biya has almost stopped travelling to Switzerland.

Emmanuel has also been running a Twitter bot that uses ADS-B data to automatically tweet when a dictator aircraft is detected at Geneva airport. A list of known dictator aircraft is kept on a publicly accessible Excel file.

Now he is hoping to expand his tracking operation, and is asking for more people to feed the ADS-B Exchange aggregation website. ADS-B Exchange is the site recommend to feed because it is the only ADS-B aggregation website that does not censor any aircraft. Other aggregation sites such as Flightradar24 and FlightAware have come under scrutiny in the past for their willingness to upon request censor and block the tracking of military/political aircraft and private jets owned by several companies. In particular several aircraft owned by dictators are reportedly censored. However, the counter argument is that not censoring aircraft may result in ADS-B tracking eventually being made illegal, or that costly legal suites may be brought against ADS-B aggregation companies.

On the Reddit post Emmanuel writes:

I'm a freelance investigative journalist (www.emmanuel-freudenthal.com / @emmanuelfreuden). I'm getting into SDR/ADSB and very glad I found this group because I need your help to track aircrafts!

With a colleague, we started a project to look into the travels of dictators around the world. It's an evolution of a Twitter bot (https://twitter.com/GVA_Watcher) started a few years ago. This bot tweets every time an aircraft owned by a dictatorship lands or takes off at the Geneva airport, Switzerland. And dictators visit Geneva, a lot. There's secretive banks and good healthcare, enjoyed by Algeria's departing president or Cameroon's president Paul Biya.

We want to expand this project to all of the world's airports. See our place-holding website: https://dictatoralert.org(which will get expanded soonish). To do so, we've partnered with ADSB-Exchange, which as you probably know, is the only website that doesn't censor flights. Usually the planes owned/chartered by dictatorships don't show up on flightaware or flightradar24 (anyone can asked to be removed). Some planes also don't share their GPS coordinates (e.g. Mode S) and so they don't show up.

In addition to the Dictator Alerts, we'll also use the data to do investigations into dictatorships, human rights violation and corruption.

The idea is to allow everyone to keep tabs, so the data will be available publicly, via Twitter bots and on a dedicated website (with e.g. a page per dictatorship and per airport).

To succeed, we need a lot more antennas! So, it'd be great if you could feed ADSB-Exchange. You can do that in addition to feeding other services. See how to do it here: https://www.adsbexchange.com/how-to-feed/ If you want to feed, please contact me on [email protected], my twitter DM are open. It's quite important that you contact me before feeding, so that we also capture aircrafts that don't share their GPS coordinates.

That also means, you'll be able to see ALL of the data that you're collecting online.

What do you think? Would you be keen to participate? Any questions?

Your feedback is very welcome, i'm still learning!

Best,

Emmanuel

Dictator Alert. A Twitter bot reporting on dictator movements via ADS-B data. dictatoralert.org
Dictator Alert. A Twitter bot reporting on dictator movements via ADS-B data. dictatoralert.org

Other stories of interest: A similar story we ran last year was about tracking police and military aircraft at the G7 summit with an RTL-SDR, and three years ago we ran a story about tracking World Economic Forum Attendees with an RTL-SDR.

SignalsEverywhere: ADS-B Aircraft Tracking with RTL-SDR, dump1090 and Virtual Radar Server

Over on his YouTube channel Corrosive from the SignalsEverywhere YouTube channel has uploaded a tutorial that shows how to set up ADS-B aircraft tracking with an RTL-SDR, dump1090 and Virtual Radar Server. The decoder software is dump1090 which is a multiplatform command line tool, and Virtual Radar Server is a Windows and Linux compatible program that is used to display the data on Google maps.

ADS-B is used as a more accurate and modern replacement for traditional aircraft radar. Instead of relying on radar reflections, ADS-B simply transmits a radio signal containing plane data such as GPS location, speed, and identification codes. Other aircraft can use this data for collision avoidance, and ground control use it for traffic management. Setting up your own RTL-SDR based ADS-B receiver allows you to see and track on a map almost all the aircraft currently flying in your area.

ADS-B Receiver With RTL SDR | Tracking Aircraft In Real-time!

RadarBox24 Specialty ADS-B RTL-SDR Reduced to $9.95 + Shipping

RadarBox24.com is a flight data aggregation service similar to sites like FlightAware.com and FlightRadar24.com. They aggregate ADS-B aircraft data obtained from (mostly) volunteer RTL-SDR based feeders based all over the world and use this to power their flight tracking map and flight information database.

Last year RadarBox24 came out with a specialty ADS-B RTL-SDR dongle. This is a custom RTL-SDR which contains a built in 1090 MHz tuned amplifier and filter. We have not tested this dongle yet, but we expect that the design and performance would be very similar to the FlightAware ADS-B dongles. A network analyzer report from RB24 is provided here.

These dongles can only receive 1090 MHz and do so better than a standard RTL-SDR due to the built in LNA and filter. The LNA reduces the noise figure of the dongle leading to greater sensitivity, and the filter removes any strong out of band signals that could overload and desensitize the dongle. This results in greater reception range, and more flights tracked. Please note that these dongles cannot be used as wideband general purpose RTL-SDRs due to the filtering.

Recently in an attempt to gather more volunteer contributors, RadarBox24 has decided to sell their ADS-B dongles at a loss, pricing them at only US$9.95 + shipping (or on Amazon USA with Prime). Shipping appears to be anywhere from US$5-$8 depending where you are in the world, and shipping does not increase with two or more dongles being ordered.

ADS-B data can easily be shared to RadarBox24 with their Raspberry Pi image and RadarBox24 write that if you share data to their site, you will receive the following kickbacks:

  • Free Business Account while sharing (worth $39.95 /mo). This allows you to access RAW and historic flight data as well as enabling other features such as more advanced data filtering, and a weather layer.
  • Strong and enthusiastic Community on Whatsapp
  • Track your own station's flights in real-time not only on website but also on RadarBox apps
RadarBox ADS-B RTL-SDR Dongle
RadarBox ADS-B RTL-SDR Dongle

Feeding the dump1090 Aircraft Database with VDLM2DEC

For ADS-B decoding, dump1090 is an RTL-SDR compatible program that is commonly used. In order to provide information about the aircraft being detected (e.g. icao24 hex address, registration/tail number and sometimes the type of aircraft like A380), dump1090 uses an offline database. Unfortunately this database has not been maintained in a very long time, so it is now out of date, and so cannot display information about many aircraft.

Recently Thierry had the idea to use the data from VDL2 aircraft transmissions to update his dump1090 database. VDL2 is a short data messaging system used by aircraft that will eventually replace the older ACARS messaging system. With an RTL-SDR and vdlm2dec decoder, the VDL2 signal which broadcasts at around 136 MHz can be received and decoded.

Contained within the data is the icao24 hex address and registration/tail number. By collecting this VDL2 data over a number of days, a new database can be generated which can then be imported into the dump1090 database. It however, doesn't seem to acquire aircraft type data.

An aircraft registration/tail number displayed on the fuselage.
An aircraft registration/tail number displayed on the fuselage. Image source: Wikipedia

An Overview of Aircraft Communication Modes from HF to UHF

Over on YouTube icholakov has uploaded an informative video that gives an overview of the main communication modes that aircraft use from HF to UHF. In the video he also gives examples of those modes being received and decoded with an SDR.

The modes that he explains and demonstrates are VHF voice, VHF ATIS automated weather, ACARS short data messages, HF voice, HF automatic weather, HF data selective calling (SELCAL), HF data link (HFDL) and UHF ADS-B aircraft positioning.

Monitoring airplane communications

Tracking Police and Military Aircraft at the G7 Summit with an RTL-SDR

Back in early 2016 we posted about a journalist who used an RTL-SDR to gather ADS-B data about the type of aircraft used at the world economic forum in Davos. The idea was to help highlight the vast wealth and power of the attendees by showing off their heavy use of private aircraft.

Now more recently Laurent Bastien Corbeil has published a similar article in Motherboard (a Vice News tech magazine) explaining how he tracked police and military planes at this years G7 summit which was held in Canada in early June. Laurent used an RTL-SDR Blog V3 with the small dipole antenna attached to a window to gather ADS-B data from all the aircraft activity during the summit.

ADS-B is a radio system used on modern aircraft which broadcasts the aircraft's current GPS location and other data such as aircraft identifiers. It is now used extensively by air traffic controllers as it is significantly more reliable than traditional radar. With a simple RTL-SDR it is possible for anyone to track and plot ADS-B data on a map, and this is how tracking sites like flightradar24.com and flightaware.com work.

From his collected data he was able to spot several interesting aircraft such as Canadian Air Force Chinooks, C130 Hercules', RCMP Pilatus', a military Bombardier jet, and a coast guard Bell 427. He also notes that while he was able to spot Donald Trumps Marine One helicopter with his own eyes, the ADS-B data was not present, indicating that more important military aircraft do not broadcast ADS-B for security reasons.

In the article Laurent makes estimates of the costs of operating these aircraft, and makes some guesses on the type of mission flown by some of the aircraft.

G7 Aircraft Flight Costs (Data by Laurent Bastien Corbeil, Graphics by Marvin Lau)
G7 Aircraft Flight Costs (Data by Laurent Bastien Corbeil, Graphics by Marvin Lau)

Tracking Planes with RTL-SDR, Apache Kafka, KSQL, Kibana and a Raspberry Pi

Inspired by a low flying aircraft that kept waking his cat in the morning, Simon Aubury decided to use an RTL-SDR and ADS-B tracking software dump1090 to determine which plane was the culprit. This is all now standard stuff, however, Simon's software implementation and management of the received ADS-B data is quite unique, as he uses Apache Kafka, KSQL and Kibana as his tools for processing and visualizing the ADS-B data.

Apache Kafka is a 'distributed streaming platform', and KSQL enables real time processing of the data from Kafka. Kibana is a data visualization tool. Essentially these technologies are just ways to manage, process and digest in a human readable way large amounts of real time data coming into a database.

So with some clever database coding Simon was able to create a constantly updating dashboard in Kibana that plots aircraft positional heat maps, displays data such as spotted airlines and destination frequencies in a text cloud, and displays aircraft height data in a line graph. Finally using a database lookup and his gathered data Simon was able to determine that an A380 aircraft flying over his house was waking his cat in the morning.

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.