THE PIPELINE, END TO END

From a 1090 MHz broadcast to a threat picture

Every airliner, business jet, helicopter and many drones announce themselves on 1090 MHz. The hard part is not collecting those dots — it is answering the real questions about your patch of sky: what is that aircraft, is it behaving normally, and is anything pretending to be something it is not. Here is exactly how AeroScope does it.

Quick answer. AeroScope turns raw 1090 MHz ADS-B into an explainable picture of your sky through a 19-stage pipeline: it fuses 60+ public feeds (de-duplicated by ICAO 24-bit address), enriches each aircraft with type and operator, scores attention 0–100 across eight factors, runs DO-260B integrity and Kalman spoofing checks, and votes six torch-free anomaly detectors (consensus of at least two). Positions refresh about every seven seconds.
See it live

The end of the pipeline is a 3D picture

After the fusion, scoring and anomaly stages run, the result lands on screen as a live instrument HUD over your position — a rotating radar dome, an animated altitude histogram, and a drag-to-explore situational globe with connection arcs to the contacts that matter. Rendered entirely client-side with three.js.

aeroscope.live · 3D airspace
3D radar dome plotting nearby aircraft by bearing, distance and altitude
Radar dome
3D altitude histogram of aircraft counts per altitude band
Altitude bars
Situational globe with connection arcs to notable contacts
Situational globe
Radar dome · altitude histogram · situational globe — drag to explore, within your chosen radius.
The mission

See it · Identify it · Detect deception · Stay protected

AeroScope is built around four questions an observer actually asks when something flies overhead. Everything in the platform maps back to one of them.

📡

1 · See what's above you

Pick any point on Earth — your home, an airport, a border. AeroScope pulls live traffic for that exact area and glides every aircraft smoothly across the map at its true ground speed.

OBSERVER-RELATIVE
🔎

2 · Know what it is

Registry lookups, type and operator, military hex ranges, emergency squawks and Remote-ID drone signatures turn an anonymous dot into an identified airframe with context.

ENRICHED
🛡️

3 · Spot the spoof

A DO-260B-style integrity check plus a Kalman innovation test and self-consistency residuals expose messages that contradict physics or their own integrity fields — the signature of spoofing.

INTEGRITY
🚨

4 · Be alerted in time

Geofences, emergency-squawk triggers and a transparent 0–100 attention score push the few aircraft that matter to the top — so you watch the sky, not a spreadsheet.

REAL-TIME
Architecture

A two-tier loop: always moving, always analysing

A lightweight position refresh keeps markers gliding every few seconds, while a heavier enrichment-and-detection pipeline runs on its own cadence — so deep analysis never freezes the map.

01

Ingest

60+ crowdsourced ADS-B feeds plus a satellite-ADS-B merge, fetched per active map region.

02

Fuse

De-duplicate by ICAO 24-bit address; reconcile terrestrial and satellite views of the same airframe.

03

Enrich

Registry, Kalman tracks, DO-260B integrity, pattern-of-life and the 8-factor attention score.

04

Detect

Six independent detectors vote; a flag fires only when at least two agree.

05

Serve

WebSocket + REST to a client that dead-reckons each marker for continuous motion.

The detection layer is deliberately built from established, auditable libraries — River, scikit-learn, pykalman, OpenAP, stumpy and PyOD — not an opaque neural network. Every flag traces back to the features that produced it. There is no PyTorch and no reinforcement learning in the deployed system; an earlier RL prototype was evaluated and retired in favour of this transparent stack.

0
public ADS-B feeds fused & de-duplicated
0
independent detectors, consensus-voted
0
transparent factors in the attention score
0
live position refresh on the map
Why observer-relative

Most trackers answer "where is flight X?" — AeroScope answers "what is over me?"

Conventional flight trackers are built around the journey of a named flight. AeroScope inverts that: you fix a location, and the platform continuously evaluates everything within range of it. That single change is what makes spoofing detection, drone-candidate flagging, restricted-airspace proximity and pattern-of-life analysis meaningful — they are all relative to a place you care about.

FAQ

Frequently asked questions

What data does AeroScope use?
Aircraft positions broadcast on 1090 MHz (ADS-B), republished by volunteer receiver networks such as adsb.fi, adsb.lol, airplanes.live and OpenSky, plus a satellite-ADS-B merge. AeroScope fuses 60+ such feeds and de-duplicates them by ICAO 24-bit address.
Does AeroScope use AI, deep learning or reinforcement learning?
No deep learning and no reinforcement learning. The anomaly layer is deliberately torch-free and built on established libraries — River, scikit-learn IsolationForest, pykalman, OpenAP, stumpy and PyOD — with consensus voting (at least two detectors must agree). An earlier RL prototype was evaluated and retired in favour of this transparent, reproducible stack.
How does it detect a spoofed or fake aircraft?
Spoofed ADS-B tends to contradict either physics or its own integrity metadata. AeroScope runs a DO-260B-style integrity check (NIC/NACp/NACv/SIL), a Kalman normalised-innovation test on the trajectory, and self-consistency residuals — geometric-versus-barometric altitude, ground-speed-versus-Mach, and track-versus-heading. Messages that fail these are flagged for a second look.
Is the data real-time?
Yes. A lightweight loop refreshes positions roughly every seven seconds and the client dead-reckons each aircraft between fixes for continuous motion, while a heavier enrichment-and-detection pipeline runs on its own cadence so analysis never blocks the map.
Can I see what is flying over my house right now?
Yes — set your location and AeroScope shows the live traffic overhead with distance, bearing, identity and an attention score for each aircraft. Open the live map to try it.