Skip to main content

Tools to convert from and to Avro Schema from various other schema languages.

Project description

dump1090 Real-Time Signal Statistics

This project provides a web application for real-time monitoring of ADS-B messages using dump1090. The application consists of a FastAPI backend and a frontend that displays various statistics in real-time using Chart.js.

Features

  • Message Rate Statistics: Computes and displays message rates over different intervals (5s, 15s, 30s, 60s, 300s).
  • Signal Strength Statistics: Computes and displays minimum, maximum, and average signal strength over 30 seconds.
  • Distance Statistics: Computes and displays minimum, maximum, and percentile distances over 30 seconds.
  • Coverage Statistics: Displays coverage statistics in a radar chart, showing the distribution of messages by distance and bearing.

Backend (main.py)

The backend is built using FastAPI and provides the following functionalities:

  • WebSocket Endpoint: Handles WebSocket connections to broadcast real-time statistics to the frontend.
  • ADSB Client: Connects to a dump1090 BEAST server to receive ADS-B messages, compute statistics, and update sliding windows.
  • Statistics Computation: Computes message rates, signal strength, distance statistics, and coverage statistics.
  • Broadcast Task: Periodically computes and broadcasts statistics to all connected WebSocket clients.

Running the Backend

To run the backend, execute the following command:

python msgrates.py

Command Line Arguments

The script supports the following command line arguments:

  • --host: Host to run the web server on (default: 0.0.0.0).
  • --port: Port to run the web server on (default: 8000).
  • --antenna-lat: Antenna latitude (required for running the server).
  • --antenna-lon: Antenna longitude (required for running the server).
  • --dump1090-host: Host running dump1090 (default: localhost).
  • --dump1090-port: Port for dump1090 (default: 30005).

Example usage:

python msgrates.py run --antenna-lat 52.5200 --antenna-lon 13.4050

Installation

You can install the program from pip:

pip install signalstats1090

After installation, you can run the program using the following command:

signalstats1090 run --antenna-lat 52.5200 --antenna-lon 13.4050

Frontend (index.html)

The frontend is an HTML page that uses Chart.js to display various statistics in real-time. It connects to the backend via WebSocket to receive updates and update the charts.

Charts

  • Message Rate Chart: Displays message rates over different intervals (5s, 15s, 30s, 60s, 300s).
  • Signal Strength Chart: Displays minimum, average, and maximum signal strength over 30 seconds.
  • Distance Chart: Displays minimum, maximum, and percentile distances over 30 seconds.
  • Distance Histogram Chart: Displays the count of position readings in 30km buckets (up to 300km).
  • Coverage Chart: Displays coverage statistics in a radar chart, showing the distribution of messages by distance and bearing.

Viewing the Frontend

To view the frontend, open a web browser and navigate to:

http://localhost:8000

License

This project is licensed under the MIT License.

© 2025 Clemens Vasters. All rights reserved.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

signalstats1090-0.2.0.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

signalstats1090-0.2.0-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file signalstats1090-0.2.0.tar.gz.

File metadata

  • Download URL: signalstats1090-0.2.0.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for signalstats1090-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e7d308dbf1427958dbb1018449115aa40860f89361ed5e1adbf1fc061d8b2a89
MD5 3ff609067c8bd0cdad79c039ea5972cf
BLAKE2b-256 696d497980384b8c1dd30fc09596359f570787bef5c431754ec6a6c5376d8904

See more details on using hashes here.

File details

Details for the file signalstats1090-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for signalstats1090-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2f18798ebab51446a53e200496a471053c5f12b2e2ad0eee36fba614ea5c0e9e
MD5 0d7128788e5487bafee83b5975b0e9ee
BLAKE2b-256 f45deaa5445aa9d68699c50d6e23d5c2e0ab000853ee3aecc78b227c0181531d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page