Pouze Pro edice

Prohlížeč Starlink

Přehled

Prohlížeč Starlink zobrazuje živý 3D globus se všemi ~10 000 satelity Starlink animovanými v reálném čase, polohou antény a odvozeným spojením se satelitem, který s největší pravděpodobností obsluhuje váš terminál.

Ideální nástroj pro monitorování Starlinku by přesně ukázal, se kterým satelitem anténa v daném okamžiku komunikuje, kdy přepíná na nový satelit a jakou cestou signál putuje z antény přes satelit k pozemní stanici. To by vyžadovalo, aby anténa odhalila identitu obsluhujícího satelitu a směr elektronického natáčení paprsku. SpaceX ani jedno z toho neposkytuje, proto Nexus odvozuje obsluhující satelit z dostupných dat.

Proč je odvozování nutné

SpaceX uzamyká data pro identifikaci satelitu za autentizovanými gRPC koncovými body, které jsou na spotřebitelském firmwaru nedostupné.

  • dish_get_context obsahuje pole initial_satellite_id, ale na spotřebitelském hardwaru vrací PermissionDenied od firmwaru 9f4d05a4 (červen 2021).
  • transceiver_get_telemetry poskytuje lmac_satellite_id a target_satellite_id, ale na všech spotřebitelských terminálech vrací UNIMPLEMENTED.
  • PKI autentizace výzvou a odpovědí s klíči řízenými SpaceX znamená, že neexistuje žádné komunitní obejití.
  • Směr elektronického natáčení paprsku: který by přímo identifikoval obsluhující satelit, není vystaven přes žádný koncový bod.
  • Fázovaná anténní soustava natáčí svůj paprsek elektronicky až o ±50° od osy zaměření, ale tento úhel natočení je pro externí konzumenty API zcela neviditelný.

Dostupná data

Měřená z antény

Data Co nám říkají Frekvence aktualizace
Azimut a elevace osy zaměření Fyzická orientace těla antény 1 Hz
Latence PoP ping Doba odezvy k bodu přítomnosti 1 Hz
Propustnost při stahování a odesílání Aktuální propustnost 1 Hz
Časovač slotu Časovač satelitního slotu (na testovaném hardwaru vždy 0) 1 Hz
GPS souřadnice Poloha antény Na vyžádání
Historie výpadků (did_switch) Potvrzené přepnutí satelitu během přerušení služby Na událost výpadku
Mapa překážek (SNR mřížka) Mapa oblohy 123×123 pixelů, která obsahuje data o satelitním signálu v reálném čase při resetování na hranicích předání (viz Obstruction Map and Satellite Tracking) 1 Hz

Externí zdroje

Data Co nám říkají
TLE orbitální elementy pro ~10 000 satelitů Starlink (CelesTrak / 18th Space Defence Squadron) Vypočítaný azimut, elevace a šikmá vzdálenost každého satelitu z jakékoli pozorovací pozice

Co není dostupné

Data Proč je chceme Stav
ID obsluhujícího satelitu Přímá identifikace Uzamčeno za autentizací
Úhel elektronického natáčení paprsku Přesný směr paprsku Není vystaven v žádném koncovém bodě
Funkční časovač slotu Signál časování předání Pole existuje, ale na aktuálním spotřebitelském firmwaru čte 0

Jak funguje párování

Párování satelitů

Prohlížeč provádí následující výpočet s frekvencí 1 Hz:

  1. Pozice pozorovatele: GPS souřadnice antény z get_location určují, kde se na Zemi nacházíte.

  2. Pozice satelitů: pomocí SGP4 orbitální propagace na TLE datech z CelesTrak prohlížeč vypočítá azimut, elevaci a šikmou vzdálenost každého satelitu Starlink při pohledu z polohy antény.

  3. Filtrování zorného pole: uvažovány jsou pouze satelity nad 10° elevací. Fyzický směr osy zaměření antény (z alignment_stats) definuje střed kužele zorného pole fázované soustavy o rozsahu ~100°.

  4. Výběr nejbližšího kandidáta: satelit s nejmenší úhlovou vzdáleností od středu fyzické osy zaměření je vybrán jako nejpravděpodobnější obsluhující satelit.

Zaměřovací kříž osy zaměření

Zaměřovací kříž na polárním grafu oblohy představuje fyzickou orientaci těla antény, nikoli směr elektronického paprsku. Fázovaná anténní soustava Starlink je po počátečním zarovnání převážně nehybná. Hodnoty osy zaměření se mění o zlomky stupně v průběhu hodin vlivem větru nebo teplotních vlivů. Anténa se fyzicky nepohybuje, aby sledovala jednotlivé satelity.

Skutečné natáčení paprsku probíhá elektronicky uvnitř fázované soustavy na úrovni RF, přičemž se vychyluje až o ±50° od fyzické osy zaměření za účelem sledování obsluhujícího satelitu. Tento směr elektronického paprsku není vystaven přes žádný koncový bod spotřebitelského API.

Detekce změny satelitu

Když se nejbližší kandidátní satelit změní (jiné NORAD ID se stane geometricky nejbližším), je to pozorováno jako odvozená změna satelitu. Tyto změny korelují se skutečnými přepnutími antény, ale nepotvrzují je. Odrážejí orbitální mechaniku: jak satelity přelétají nad hlavou rychlostí ~7,5 km/s, ten nejblíže ke středu osy zaměření antény se přirozeně mění každých několik minut.

Skutečná předání satelitů na Starlinku jsou navržena tak, aby byla bezešvá (spojení před přerušením), a nevytvářejí měřitelnou diskontinuitu v latenci ani propustnosti, která by mohla na aktuálním firmwaru sloužit jako spolehlivý detekční signál.

Hodnocení spolehlivosti

Skóre spolehlivosti odráží geometrickou pravděpodobnost, že spárovaný satelit je skutečně obsluhujícím:

Spolehlivost Kritéria Interpretace
Vysoká < 10° od osy zaměření, ≤ 3 blízcí kandidáti Málo satelitů v blízkosti, silný geometrický kandidát
Střední < 25° od osy zaměření Dobře v zorném poli, rozumný kandidát
Nízká < 50° od osy zaměření V dosahu natáčení antény, ale mnoho blízkých kandidátů
Žádná > 50° od osy zaměření Žádný satelit v dosahu elektronického natáčení antény

Tyto prahy jsou kalibrovány pro fyzickou osu zaměření (směr těla antény), nikoli pro elektronický paprsek. Protože fázovaná soustava dokáže natočit paprsek o ±50° od čela antény, obsluhující satelit bude typicky 10–40° od středu fyzické osy zaměření. Shoda s „Vysokou" spolehlivostí znamená, že existuje jediný silný geometrický kandidát. Neznamená, že identifikace je potvrzena.

Stupeň přesnosti

Čemu můžete věřit

Pozice satelitů na globusu jsou přesné. TLE data z CelesTrak jsou autoritativní (pocházejí od US Space Force 18th Space Defence Squadron) a SGP4 propagace je standardní metoda používaná komunitou pro sledování vesmírných objektů. Poziční přesnost je u nedávno aktualizovaných TLE typicky v rozmezí několika kilometrů.

Poloha antény je přesná. Pochází přímo z palubního GPS antény.

Fyzický směr osy zaměření je přesný. Je měřen IMU (inerciální měřicí jednotkou) antény s nejistotou ~0,6°.

Sada viditelných satelitů je přesná. Vypočítané pozorovací úhly z vaší pozice ke každému satelitu jsou geometricky přesné, takže polární graf správně ukazuje, které satelity jsou nad vámi a kde se na obloze nacházejí.

Co je odvozeno

Identifikovaný satelit je kvalifikovaný odhad. Nejbližší satelit ke středu osy zaměření je nejlepší geometrický kandidát, ale anténa může komunikovat s jakýmkoli satelitem v dosahu elektronického natáčení ±50°. V kterémkoli okamžiku mohou být v zorném poli desítky satelitů.

Změny satelitu jsou pozorovaná geometrie, nikoli potvrzená předání. Když se nejbližší kandidát změní, odráží to orbitální drift: jiný satelit se stává geometricky nejbližším. Skutečná předání antény se s těmito geometrickými změnami mohou, ale nemusejí krýt. Některá skutečná předání budou pro odvozování neviditelná (anténa přepne na jiný satelit, ale geometricky nejbližší se nezmění) a některé pozorované změny budou čistý orbitální drift (geometricky nejbližší se změnil, ale anténa ve skutečnosti nepřepnula).

Skóre spolehlivosti jsou geometrická, nikoli založená na signálu. Shoda s „Vysokou" spolehlivostí znamená dobrou geometrii, nikoli ověřené spojení. Bez přístupu ke směru elektronického paprsku nebo ID obsluhujícího satelitu nemůže žádný nástroj založený na spotřebitelském firmwaru potvrdit, který satelit anténa skutečně používá.

Signály, které jsme zkoumali

Během vývoje bylo pro detekci předání vyhodnoceno několik signálů. Všechny byly testovány na skutečném hardwaru (rev3_proto2, firmware 2026.02.16.cr74084 a 2026.04.07.mr77639.1).

Signál Hypotéza Zjištění
seconds_to_first_nonempty_slot Měl by odpočítávat v rámci každého satelitního slotu a resetovat se při předání Na testovaném spotřebitelském hardwaru vždy čte 0, pole je nevyplněné
Diskontinuity v pop_ping_latency_ms Latence by měla skočit, když se šikmá vzdálenost během předání změní Latence zůstává přes předání hladká. SpaceX pravděpodobně používá přepínání typu spojení před přerušením, které změny cesty absorbuje
did_switch z historie výpadků Potvrzený příznak přepnutí v záznamech o výpadcích Aktivuje se pouze během přerušení služby, nikoli při rutinních ~15sekundových čistých předáních
Diskontinuity osy zaměření Fyzické přemístění antény by mohlo předání doprovázet Tělo antény se téměř nehýbe, sledování satelitů potichu zvládá elektronické natáčení paprsku
SNR mapy překážek (bez resetu) Změny SNR v jednotlivých buňkách by měly sledovat pohyb satelitu zorným polem Bez resetování mapy vrací nezastíněná anténa statickou kumulativní masku čistého nebe. Všechny viditelné buňky čtou ~1,0 s nulovou variací mezi po sobě jdoucími dotazy. Nahromaděná data jsou plně nasycena, takže rozdílové porovnání snímků neukazuje žádné změny.
SNR mapy překážek (s resetem) Po zavolání dish_clear_obstruction_map by se mapa měla znovu budovat z prázdného stavu a odhalit pozici obsluhujícího satelitu při každosekundovém vykreslování nových pixelů Potvrzeno funkční. Po resetu na hranicích předání produkuje dotazování s frekvencí 1 Hz čisté trajektorie satelitů v jednotlivých pixelech. Viz Obstruction Map and Satellite Tracking.

Obstruction Map and Satellite Tracking

Pozadí

Studie SatInView autorů Ahangarpour, Zhao a Pan (ACM MobiCom '24 LEO-NET Workshop) prokázala, že obsluhující satelit lze identifikovat resetováním mapy překážek antény na 15sekundových hranicích předání, jejím dotazováním s frekvencí 1 Hz a XORováním sousedních snímků pro extrakci trajektorie satelitu při jeho pohybu zorným polem. Pozorovaná trajektorie se pak porovná s pozicemi satelitů propagovanými z TLE, čímž lze dosáhnout téměř jednoznačné identifikace.

Během počátečního vývoje prohlížeče Starlink jsme testovali mapu překážek bez provedení resetu. Na nezastíněné anténě se mapa jevila statická — plně nasycená maska čistého nebe bez variace mezi snímky. Usoudili jsme, že data neobsahují informace o satelitním signálu v reálném čase. Tento závěr byl pro neresetovanou mapu správný, ale neúplný: mapa se zdála statická, protože každý pixel, který mohl aktuální satelit vykreslit, byl již rozsvícen z předchozích průletů satelitů. Bez předchozího vymazání nahromaděných dat neměl XOR co detekovat.

Aktualizovaná zjištění

Po korespondenci s výzkumným týmem SatInView jsme otestovali kompletní přístup založený na resetu na hardwaru rev3_proto2 s firmwarem 2026.04.07.mr77639.1 (duben 2026). Výsledky potvrzují, že technika na aktuálním hardwaru a firmwaru funguje:

  • dish_clear_obstruction_map je dostupná a funkční. Její volání vymaže nahromaděná SNR data (377 aktivních pixelů zredukovaných na 1 při testování).
  • Po resetu se mapa znovu buduje rychlostí přibližně jednoho nového pixelu za sekundu, jak se obsluhující satelit pohybuje zorným polem.
  • XORování sousedních snímků s frekvencí 1 Hz produkuje čisté trajektoriové body v jednotlivých pixelech s téměř nulovým rozptylem.
  • Časování předání po 15 sekundách (12., 27., 42. a 57. sekunda každé minuty, globálně synchronizováno) bylo potvrzeno na našem hardwaru. Po sobě jdoucí intervaly sledovaly stejný satelit kontinuálně, s jasným skokem trajektorie při skutečném předání.
  • Mapa hlásí FRAME_EARTH na stacionárních aktivních anténách, což znamená, že mřížka je orientována tak, že pixel v horním středu odpovídá skutečnému severu. Mobilní nebo neaktivní antény mohou hlásit FRAME_UT, kde pixel ve spodním středu odpovídá směru osy zaměření.

Kompromis: proč Nexus mapu ve výchozím nastavení neresetuje

Volání dish_clear_obstruction_map je destruktivní — maže nahromaděný profil překážek antény. Pro uživatele se zastíněnými instalacemi (stromy, budovy nebo jiné konstrukce) jsou tato data cenná pro diagnostiku problémů se signálem a budují se v průběhu času přes mnoho průletů satelitů. Resetování každých 15 sekund brání anténě v hromadění jakýchkoli dat o překážkách a mobilní aplikace Starlink zobrazí prázdnou nebo částečnou mapu.

Nexus v současné době používá geometrické odvozování (směr osy zaměření a párování s TLE) jako výchozí metodu identifikace satelitu. Tento přístup je nedestruktivní — nevolá žádné zapisovací koncové body na anténě a nemá vedlejší účinky na uživatelova data o překážkách.

Přístup založený na trajektorii používáme jako kalibrační nástroj pro validaci a zlepšení přesnosti našeho geometrického odvozování. Zároveň zvažujeme, zda nabídnout sledování trajektorie jako volitelný režim pro pokročilé uživatele a výzkumníky s jasným upozorněním na kompromis spojený s resetem mapy.

Co by to mohlo změnit

Budoucí aktualizace firmwaru nebo hardwarové revize by mohly odhalit další telemetrii, která by zlepšila přesnost odvozování:

  • Funkční seconds_to_first_nonempty_slot: pokud bude toto pole na novějším firmwaru nebo hardwaru vyplněné, poskytlo by spolehlivý signál časování pro každé předání.
  • Úhly elektronického natáčení paprsku: jakékoli odhalení skutečného směru paprsku fázované soustavy by umožnilo přímou identifikaci satelitu.
  • Uvolněná autentizace na dish_get_context: pokud by SpaceX znovu povolil pole initial_satellite_id, problém by byl zcela vyřešen.
  • Nedestruktivní data o signálu v reálném čase: pokud budoucí firmware zpřístupní informace o signálu jednotlivých satelitů přes samostatný koncový bod nebo nedestruktivní variantu mapy překážek, přístup založený na párování trajektorií by bylo možné použít bez resetování uživatelských dat o překážkách.
  • Nové generace hardwaru: SpaceX nasazuje satelity V3 a nový terminálový hardware. Odlišné revize firmwaru nebo hardwaru mohou vyplnit aktuálně neaktivní pole nebo odhalit novou telemetrii.

Předchozí práce

Nexus používá geometrické odvozování (směr osy zaměření a pozice satelitů propagované z TLE) k odhadu, který satelit anténu obsluhuje. Jde o heuristický přístup — účinný a nedestruktivní, ale omezené přesnosti.

Pro identifikaci s vyšší přesností dosahuje technika SatInView, vyvinutá autory Ahangarpour, Zhao a Pan na University of Victoria (ACM MobiCom 2024, LEO-NET Workshop), téměř jednoznačné identifikace satelitu korelací trajektorií z mapy překážek s TLE daty. Jejich přístup vyžaduje resetování mapy překážek na hranicích předání, o kterém jsme potvrdili, že na aktuálním hardwaru a firmwaru funguje (viz Obstruction Map and Satellite Tracking). Jejich implementace je dostupná na github.com/aliahan/SatInView.

Jejich techniku založenou na trajektorii používáme jako referenci pro kalibraci a zlepšování přesnosti geometrického odvozování používaného v prohlížeči Starlink.

Orbitální data

Pozice satelitů pocházejí z doplňkového GP koncového bodu CelesTrak, který poskytuje efemeridy dodávané SpaceX sloučené se standardními katalogovými daty 18th Space Defence Squadron. Data jsou lokálně ukládána do mezipaměti backendem v Rustu a obnovována každých 6 hodin, se záložní 48hodinovou mezipamětí pro případ nedostupnosti CelesTrak. Stavový řádek zobrazuje aktuální počet satelitů a stáří dat.

Poloha antény

Prohlížeč používá GPS souřadnice z koncového bodu get_location antény, pokud jsou dostupné. Pokud GPS data nejsou přístupná, můžete zeměpisnou šířku a délku zadat ručně v konfiguračním panelu.