Git Product home page Git Product logo

mictronics / readsb Goto Github PK

View Code? Open in Web Editor NEW
124.0 19.0 33.0 231.59 MB

Readsb is a Mode-S/ADSB/TIS decoder for RTLSDR, BladeRF, Modes-Beast and GNS5894 devices.

Home Page: http://www.mictronics.de

License: Other

Makefile 0.17% C 42.14% JavaScript 27.61% HTML 3.16% CSS 1.98% C++ 0.11% Python 0.03% TypeScript 24.78%
ads-b adsb bladerf adalm-pluto rtl-sdr rtlsdr sdr mode-s indexeddb dump1090 dump1090-fa gns5894 ubladerf readsb typescript leaflet

readsb's Introduction

Readsb

[Portmanteau of Read ADSB]

Readsb is a Mode-S/ADSB/TIS decoder for RTLSDR, BladeRF, Modes-Beast and GNS5894 devices. As a former fork of dump1090-fa it is using that code base but development will continue as a standalone project with new name. Readsb can co-exist on the same host system with dump1090-fa, it doesn't use or modify its resources. However both programs will not share a receiver device at the same time and in parallel.

No longer under development!

Future development on readsb continuous on the Protocol Buffer version starting with version v4.0.0.

You may also check the wiedehopf readsb fork for an alternative version of readsb.

Disclaimer

This is a personal, hobbyist project with no commercial background.

Push server support

readsb tries to connect to a listening server, like a VRS push server.

For example feeding VRS at adsbexchange.com use the new parameters:

--net-connector feed.adsbexchange.com,30005,beast_out

BeastReduce output

Selectively forwards beast messages if the received data hasn't been forwarded in the last 125 ms (or --net-beast-reduce-interval). Data not related to the physical aircraft state are only forwarded every 500 ms (4 * --net-beast-reduce-interval).The messages of this output are normal beast messages and compatible with every program able to receive beast messages.

readsb Debian/Raspbian packages

It is designed to build as a Debian package.

Building under jessie, stretch or buster

Dependencies - PlutoSDR (ADALM-PLUTO)

You will need the latest build and install of libad9361-dev and libiio-dev. The Debian packages libad9361-dev that is available up to Debian 9 (stretch) is outdated and missing a required function. So you have to build packages from source in this order:

$ git clone https://github.com/analogdevicesinc/libiio.git
$ cd libiio
$ cmake ./
$ make
$ sudo make install
$ git clone https://github.com/analogdevicesinc/libad9361-iio.git
$ cd libad9361-iio
$ cmake ./
$ make
$ sudo make install

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

Dependencies - rtlsdr

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

Actually building it

Build package with no additional receiver library dependencies: dpkg-buildpackage -b.

Build with RTLSDR support: dpkg-buildpackage -b --build-profiles=rtlsdr

Build with BladeRF(uBladeRF) support: dpkg-buildpackage -b --build-profiles=bladerf

Build with PlutoSDR support: dpkg-buildpackage -b --build-profiles=plutosdr

Build full package with all libraries: dpkg-buildpackage -b --build-profiles=rtlsdr,bladerf,plutosdr

Building manually

You can probably just run "make". By default "make" builds with no specific library support. See below. Binaries are built in the source directory; you will need to arrange to install them (and a method for starting them) yourself.

"make BLADERF=yes" will enable bladeRF support and add the dependency on libbladeRF.

"make RTLSDR=yes" will enable rtl-sdr support and add the dependency on librtlsdr.

"make PLUTOSDR=yes" will enable plutosdr support and add the dependency on libad9361 and libiio.

Configuration

After installation, either by manual building or from package, you need to configure readsb service and web application.

Edit /etc/default/readsb to set the service options, device type, network ports etc.

The web application is configured by editing /usr/share/readsb/html/script/readsb/defaults.js or src/script/readsb/default.ts prior to compilation. Several settings can be modified through web browser. These settings are stored inside browser indexedDB and are individual to users or browser profiles.

Note about bias tee support

Bias tee support is available for RTL-SDR.com V3 dongles. If you wish to enable bias tee support, you must ensure that you are building this package with a version of librtlsdr installed that supports this capability. You can find suitable source packages here. To enable the necessary support code when building, be sure to include preprocessor define macro HAVE_BIASTEE, e.g.:

"make HAVE_BIASTEE=yes" will enable biastee support for RTLSDR interfaces.

Credits

  • Matthias Wirth aka wiedehopf
  • Taner Halicioglu aka tanerH

readsb's People

Contributors

antirez avatar bjd avatar bovine avatar csfa avatar ddeitterick avatar drakeapps avatar dschaper avatar dstipp avatar elverde avatar hhm0 avatar jburgess777 avatar kamadas avatar m30164 avatar malcolmrobb avatar matthewbrandes avatar maxried avatar mictronics avatar mutability avatar nnathan avatar rgeissert avatar rparenton avatar rxseger avatar saiarcot895 avatar steve-m avatar stintel avatar tanerh avatar tslocum avatar ukuehn avatar wiedehopf avatar wizardishungry avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.