MagicMirror² v2.11.0 is available! For more information about this release, check out this topic.
READ THE CHANGELOG BEFORE UPDATING!

MMM-FlightTracker - Real time plane tracker using ADS-B systems


  • Module Developer

    Hi there.

    I recently released a new module to get nearby planes information in real time, using ADS-B receiver (that is how most of the FlightRadar24 gets its data).

    All necessary information (prerequisite, configuration, screenshot) is available on the GitHub repository: https://github.com/tbouron/MMM-FlightTracker

    Hope you’ll enjoy!

    2_1577188325982_screenshot-passing-by.png
    0_1577188325979_screenshot-at-the-window.png
    1_1577188325982_screenshot-no-planes.png


  • Project Sponsor Module Developer

    @tbouron

    I hate to fly but your module is cool! 👍


  • Module Developer

    Thanks @Mykle1, that’s appreciated!


  • Project Sponsor Module Developer



  • I love the idea of having a flight tracker on my magicmirror, but I already have a flight tracker on my network. Its a raspberry pi runnng PiAware flight tracker. Any way you could have this plugin support a remote flight tracker over the network rather than directly connected?


  • Module Developer

    @jrsphoto said in MMM-FlightTracker - Real time plane tracker using ADS-B systems:

    I love the idea of having a flight tracker on my magicmirror, but I already have a flight tracker on my network. Its a raspberry pi runnng PiAware flight tracker. Any way you could have this plugin support a remote flight tracker over the network rather than directly connected?

    Hi @jrsphoto. The idea behind the module was to use the hardware directly rather than using an API like flightaware/flightradar24/etc, because this mean that everybody needs to have either:

    • an paid account there
    • another PI along side the one for the mirror + ADS-B receiver
      This incur more cost hence why I went for the direct connection to the hardware.

    However, I looked at PiAware and from what I can see from https://github.com/flightaware/piaware, there is no API available to get the data out of this from the LAN. But at that point, that would be irrelevant as you could target directly the public API.

    Maybe I’ll do another module in the future for flightaware or flightradar24 if I got my hands on another ADS-B device.



  • Hi @tbouron

    PiAware tracker (based on dump1090) makes its local data available in several JSON data dumps accessible under /data/ URL:

    • http://(host):(port)/data/aircraft.json - list of visible aircrafts
    • http://(host):(port)/data/stats.json - receiver statistics - number of messages, signal quality, etc.
    • http://(host):(port)/data/receiver.json - receiver status, particularily refresh rate (how often aircraft.json is refreshed) and history length
    • http://(host):(port)/data/history_(number).json - copy of earlier states of aircraft.json with number going from 0 to history length. History files are a ring buffer so you need to load them all to figure out the most recent one.

    Other homebrew solutions based on dump1090 can have similar set of results enabled.

    Complete description is here dump1090 README-json.md

    But at that point, that would be irrelevant as you could target directly the public API.

    It’s still relevant :). I live next to a military airbase and on my feed I see both military and government aircrafts that are censored from sites like flightaware/flightradar. I feed to Flightaware, so I know this for sure :).


  • Module Developer

    Hum if we can get the data out of this then yes, I can look into this 🙂

    I’ll look at dump1090 and see what I can do. Wanted to go back to the output design anyway so might be a nice feature to add.

    I’ll let you know.


  • Module Developer

    HI @ytmytm.

    So I looked at this over the past week and it turns out to be more complicated than expected.

    dump1090 does expose a raw stream of data but I could not use it as the data there is serialised from a C struct, which cannot be reconstructed from nodejs. I then looked at the SBS1 (BaseStation) stream to get the parsed data directly. This is a bit fiddly to make it work with the current codebase, and requires changes into npn dependencies I’m using.
    However, this is the best alternative I could find so I’ll continue in that direction. Bear in mind that as I have to modify dependencies so this will take a bit of time before I can release something that works ok.


  • Module Developer

    Alright @ytmytm got something working with the data exposed by dump1090.
    This is available on the branch feature/network where also updated the README.md regarding the configuration: https://github.com/tbouron/MMM-FlightTracker/tree/feature/network. You will need to update the dependencies:

    git fetch && git pull feature/network && npm i
    

    I’m running this locally and seems to work quite well. However, can I ask you to test it and report back with any issues, or a thumbs up? I’ll push this “officially” when I’m sure it works for you 🙂


Log in to reply