TeleMemetry · Live Feed

Software Map Running

How the live satellite demo works, in plain terms.

System flow
External Sources

CelesTrak

Fetched once. Refreshed every 6 hours.
TLEs every 6h
server.js · port 7446

The Engine

Node.js · runs locally · never stops
TLE Parser
Reads orbital recipes, prepares math engine for each satellite.
Propagator
Computes where every satellite is right now. Runs every 15 seconds.
Hot Ring
30-slot circular memory, one per satellite. New data pushes old data out. Always current, always bounded.
Probe Engine
Every 90 seconds: picks a satellite, pulls its recent data, asks Gemini a question, streams the answer.
Inject / Ask
You pick a satellite and type your own question. Same pipeline, not counted in accuracy score.
Audit Ledger
Every probe logged to disk. Scores each answer: exact match, close, refused, or failed.
probe-ledger.jsonl probe-errors.jsonl tle-cache.txt
live stream
Your Browser · port 8765

live.html

Receives all updates over SSE (live wire, no page reload).
AI Layer

Gemini Flash

Gemini only sees the evidence packet - 4 to 6 data points from the hot ring near the target timestamp. It never sees the full satellite history. The efficiency gain (tokens saved vs. full replay) is what the patent claims.
What happens every 90 seconds (the probe cycle)
01
Pick a satellite
Random pick from any satellite with 5+ recent data points in its hot ring.
02
Choose a timestamp
Picks the middle event in the ring - something with data on both sides.
03
Pull evidence
Grabs all events within 600 seconds of that timestamp. No index. No search. Just arithmetic.
04
Build the question
"What was the altitude of ISS at 14:32:05 UTC?" - picks one of 5 question types.
05
Ask Gemini
Evidence packet + question sent to Gemini. Answer streams back token by token.
06
Score the answer
Compare Gemini's answer to the actual data point. Log the verdict to the audit ledger.
Key terms, plain English
TLE
Orbital recipe card. A two-line text format that encodes exactly how a satellite orbits - inclination, speed, shape of orbit. Feed it to SGP4 math and you get a position.
SGP4 / Propagation
The orbital math. Given a TLE and a time, compute where the satellite is. No GPS needed - pure physics. Run it every 15 seconds and you have a live position stream.
Hot Ring
30-slot circular memory. Every satellite has its own ring. New position pushes the oldest out. Always exactly 30 events. Never grows. Memory footprint is constant forever.
Evidence Packet
The minimum data needed to answer a question. Typically 4-6 lines. Timestamp, satellite name, lat, lon, altitude, speed, heading. This is what Gemini sees.
EDR - Searchless Retrieval
The novel part. Every RAG system builds an index and runs a search. This system does neither. It asks: "which events are within 600 seconds of the target?" That's arithmetic, not search. That's the patent.
SSE
Live wire. Server-Sent Events. The server pushes updates to your browser every 15 seconds without the browser asking. Satellite positions, probe results, stats - all arrive automatically.
Scored vs. Unscored
Auto probes are scored. Your questions are not. Accuracy numbers only come from automated probes where the system knows the right answer in advance. Questions you inject go through the same pipeline but don't affect the score.
Audit Ledger
The receipts. Every probe written to probe-ledger.jsonl. Failures go to probe-errors.jsonl. Click the Accuracy card in the browser to see the summary.
visual TLE group
The ~200 brightest, most recognizable satellites. ISS, Tiangong, weather satellites, navigation birds. Chosen because they have real names and are explainable to a room. Not all 10,000 active satellites.