Dump1090 is a simple Mode S decoder for RTLSDR devices
C JavaScript CSS HTML Other
Pull request Compare This branch is 95 commits ahead of flightaware:master.
Permalink
Failed to load latest commit information.
bladerf bladeRF docs and custom bitstream. Feb 3, 2017
compat fixed a tiny change to an #ifndef comment Mar 31, 2016
debian-wheezy Build/packaging work for the bladeRF Feb 3, 2017
debian Prepare for v3.4.0 release. Feb 9, 2017
docs/screenshots Additional readme content Feb 10, 2017
public_html Aircraft database update. Feb 26, 2017
testfiles Initial commit of Dump1090, a simple Mode S decoder. Jan 5, 2013
tools Removed csv due to database update from external source. Jan 31, 2017
.gitattributes Compress vrs.csv since it's basically readonly. Sep 10, 2016
.gitignore Ignore Netbeans project folder Feb 10, 2017
.travis.yml Test on latest Xcode for OS X 10.9, 10.10, and 10.11 Jun 8, 2016
COPYING GPL. Jan 20, 2015
LICENSE GPL. Jan 20, 2015
Makefile Added option to build with aggressive mode. Feb 22, 2017
README-json.md More CPR stats. Feb 19, 2015
README.md Merged with dump1090-fa tag 3.4.0 Feb 22, 2017
anet.c Added basic push server support. Feb 10, 2017
anet.h IPv6 support (in theory). Feb 16, 2016
convert.c Reverted, reason see flightaware#10 Feb 23, 2017
convert.h Measure mean signal level in the converters. Nov 12, 2016
convert_benchmark.c Free state directly, not calling cleanup. Feb 22, 2017
cpr.c Fix decoding of even lat=0 + odd lat=0 which can have 3 results (-90,… Aug 17, 2015
cpr.h Import CPR changes from experimental branch. Jan 20, 2015
cprtests.c Fix some format strings that pass an unsigned int but use %d Apr 5, 2016
crc.c Fixed all memory leaks on exit. Feb 13, 2017
crc.h Optimized struct memory layout for minimum padding. Feb 20, 2017
demod_2400.c Tweak reported timestamps so that the relative timing of Mode S and Jan 15, 2017
demod_2400.h Experimental 2.4MHz Mode A/C demodulator. Mar 20, 2016
dump1090.c Merged with dump1090-fa tag 3.4.0 Feb 22, 2017
dump1090.h Optimized structure layout. Feb 22, 2017
faup1090.c Fixed memory leaks on exit in faup1090. Feb 13, 2017
icao_filter.c Don't hang if the ICAO hashtable fills up. May 30, 2015
icao_filter.h icao_filter.[ch] from the experimental branch. Jan 20, 2015
interactive.c Merge remote-tracking branch 'upstream/master' into dev Oct 14, 2016
mode_ac.c Table-ize the Mode A to C conversions, add a Mode C to Mode A convers… Oct 11, 2016
mode_s.c Removed tempory code that got in during merge with 3.4.0. Feb 23, 2017
net_io.c Avoid sprintf for simple hex digit printing in raw output. Feb 13, 2017
net_io.h Optimized struct memory layout for minimum padding. Feb 20, 2017
prepare-wheezy-tree.sh Tweak wheezy build so it builds rtl-sdr itself rather than relying Sep 16, 2016
sdr.c Optimized structure layout. Feb 22, 2017
sdr.h Add copyright headers to all the new files. Feb 3, 2017
sdr_bladerf.c Optimized structure layout. Feb 22, 2017
sdr_bladerf.h Add copyright headers to all the new files. Feb 3, 2017
sdr_ifile.c Optimized structure layout. Feb 22, 2017
sdr_ifile.h Add copyright headers to all the new files. Feb 3, 2017
sdr_rtlsdr.c Fixed bug that sets auto-gain to manual mode. Feb 22, 2017
sdr_rtlsdr.h Add copyright headers to all the new files. Feb 3, 2017
stats.c Remove internal webserver code entirely. Dec 29, 2016
stats.h Optimized struct memory layout for minimum padding. Feb 20, 2017
track.c Declare functions static not used elsewhere. Feb 13, 2017
track.h Optimized struct memory layout for minimum padding. Feb 20, 2017
util.c Fix up end_cpu_timing (seems to break on Pi 1s otherwise) Feb 3, 2017
util.h Move {start,end}_cpu_timing into util.c Jan 27, 2017
view1090.c Fixed memory leaks on exit in view1090. Feb 13, 2017

README.md

dump1090-fa Mictronics

This is a fork of dump1090-fa customized for use within FlightAware's PiAware software.

Modifications:

  • Aircraft database removed due to update from external source. See readme.
  • Link columns removed in aircraft table.
  • Additional column to indicate civil or military aircraft (requires special database).
  • Additional row color alert in case of interesting aircraft (requires special database).
  • Detailed aircraft model in selected block (requires special database).
  • Additional special squawks used in Germany. (Rettungshubschrauber, Bundespolizei etc.)
  • Additional aircraft operator database. Aircraft operator will be shown in selected block and as flight ident tooltip in table.
  • Added basic support for feeding a single push server like VRS
  • Fixed memory leaks on exit
  • Optimized structure memory layout for minimum padding.

Screenshots

mod 1 mod 2
mod 4 mod 5
mod 3

Push server support

dump1090-fa tries to connect to a listening server, like a VRS push server.

For example feeding VRS at adsbexchange.com use the new parameters: --net-push-address feed.adsbexchange.com --net-push-port 30005 --net-push-beast

dump1090-fa Debian/Raspbian packages

It is designed to build as a Debian package.

Building under jessie

Dependencies - bladeRF

You will need a build of libbladeRF. You can build packages from source:

$ git clone https://github.com/Nuand/bladeRF.git $ cd bladeRF $ dpkg-buildpackage -b

Or Nuand has some build/install instructions including an Ubuntu PPA at https://github.com/Nuand/bladeRF/wiki/Getting-Started:-Linux

Or FlightAware provides armhf packages as part of the piaware repository; see https://flightaware.com/adsb/piaware/install

Dependencies - rtlsdr

This is packaged with jessie. "sudo apt-get install librtlsdr-dev"

Actually building it

Nothing special, just build it ("dpkg-buildpackage -b")

Building under wheezy

First run "prepare-wheezy-tree.sh". This will create a package tree in package-wheezy/. Build in there ("dpkg-buildpackage -b")

The wheezy build does not include bladeRF support.

Building manually

You can probably just run "make" after installing the required dependencies. Binaries are built in the source directory; you will need to arrange to install them (and a method for starting them) yourself.

"make BLADERF=no" will disable bladeRF support and remove the dependency on libbladeRF.

"make RTLSDR=no" will disable rtl-sdr support and remove the dependency on librtlsdr.