From aircraft ADS-B broadcast to your real-time dashboard in under 15 seconds. Here is a step-by-step look at how we turn radio signals into actionable airspace intelligence.
Aircraft equipped with ADS-B (Automatic Dependent Surveillance-Broadcast) transponders continuously broadcast their GPS-derived position, altitude, velocity, heading, callsign, and ICAO identification code on the 1090 MHz radio frequency. These broadcasts occur approximately once per second and are unencrypted, meaning anyone with the right equipment can receive them. As of January 2020, ADS-B Out is mandatory for most aircraft operating in controlled US airspace.
A global network of thousands of community-operated ground receivers captures these ADS-B broadcasts. Each receiver consists of a 1090 MHz antenna, a software-defined radio (SDR) dongle (typically an RTL-SDR costing around $25), and a small computer like a Raspberry Pi. These receivers decode the raw radio signals into structured data and forward it to community aggregation servers. A single receiver can detect aircraft within approximately 200-300 nautical miles, depending on antenna placement and local terrain.
AeroScope aggregates data from multiple community ADS-B networks simultaneously. We pull from adsb.fi (strong Scandinavian and European coverage with a growing global network), adsb.lol (global mirror with broad coverage), and OpenSky Network (Swiss academic network). This multi-source approach ensures better geographic coverage, data redundancy, and improved accuracy through cross-validation of positions reported by different receivers.
Every piece of incoming data passes through our proprietary 15-stage analysis pipeline. Each stage adds intelligence and context to the raw position data, transforming simple coordinates into rich, actionable information about what each aircraft is doing and why it might be interesting.
The fully processed and enriched aircraft data is streamed to your browser via persistent WebSocket connections. Your dashboard displays aircraft on an interactive map with altitude-based coloring, flight path trails, threat indicators, pattern overlays, and geofence boundaries. Data refreshes every 12 seconds, with the entire end-to-end latency from aircraft broadcast to your screen typically under 15 seconds.
Each stage in our processing pipeline adds a layer of intelligence to the raw ADS-B data:
AeroScope is built on a modern, real-time architecture. The backend runs on Node.js with Express, handling data ingestion, processing, and API serving. The frontend is a React single-page application built with Vite, using Leaflet for map rendering and WebSocket connections for live data streaming. The entire system is designed for low-latency operation, processing hundreds of aircraft positions per cycle with minimal computational overhead.
Data persistence uses a rolling 7-day window with automatic purging of stale records. Historical snapshots are maintained for pattern analysis and correlation, while real-time state is kept in memory for sub-second access times. The architecture supports horizontal scaling through stateless API design and can be deployed behind load balancers for high-availability configurations.