Огляд
Переглядач Starlink відображає 3D-глобус у реальному часі з усіма ~10 000 супутниками Starlink, що рухаються в реальному часі, місцезнаходженням вашої антени та виведеним з’єднанням із супутником, який найімовірніше обслуговує ваш термінал.
Ідеальний інструмент моніторингу Starlink показав би вам точно, з яким супутником ваша антена взаємодіє в будь-який момент часу, коли відбувається передача на новий супутник, і шлях сигналу від вашої антени через супутник до наземної станції. Це вимагало б, щоб антена розкрила ідентичність обслуговуючого супутника та напрямок електронного керування променем. SpaceX не розкриває жодного з цих параметрів, тому Nexus виводить обслуговуючий супутник із доступних даних.
Чому необхідне виведення
SpaceX блокує дані ідентифікації супутників за автентифікованими кінцевими точками gRPC, недоступними на споживчій прошивці.
dish_get_contextмістить полеinitial_satellite_id, але повертаєPermissionDeniedна споживчому обладнанні з прошивки9f4d05a4(червень 2021).transceiver_get_telemetryнадаєlmac_satellite_idтаtarget_satellite_id, але повертаєUNIMPLEMENTEDна всіх споживчих терміналах.- Автентифікація виклик-відповідь PKI із ключами, контрольованими SpaceX, означає, що обхідного рішення від спільноти не існує.
- Напрямок електронного керування променем: який безпосередньо ідентифікував би обслуговуючий супутник; не розкривається через жодну кінцеву точку.
- Фазована антенна решітка антени керує своїм променем електронно до ±50° від головної осі, але цей кут керування повністю невидимий для зовнішніх споживачів API.
Доступні дані
Виміряні з антени
| Дані | Що це нам повідомляє | Частота оновлення |
|---|---|---|
| Азимут і кут місця головної осі | Фізична орієнтація корпусу антени | 1 Hz |
| Затримка ping PoP | Час зворотного шляху до точки присутності | 1 Hz |
| Пропускна здатність завантаження та вивантаження | Поточна пропускна здатність | 1 Hz |
| Таймер слота | Таймер супутникового слота (завжди 0 на тестованому обладнанні) | 1 Hz |
| Координати GPS | Місцезнаходження антени | За запитом |
Історія збоїв (did_switch) |
Підтверджене переключення супутника під час перерви в обслуговуванні | За подію збою |
| Карта перешкод (сітка SNR) | Карта неба розміром 123×123 пікселі; містить дані про сигнал супутника в реальному часі, коли скидається на межах передачі (див. Obstruction Map and Satellite Tracking) | 1 Hz |
Зовнішні джерела
| Дані | Що це нам повідомляє |
|---|---|
| Орбітальні елементи TLE для ~10 000 супутників Starlink (CelesTrak / 18th Space Defence Squadron) | Обчислений азимут, кут місця та похила дальність кожного супутника з будь-якої позиції спостерігача |
Що недоступно
| Дані | Чому ми їх хочемо | Статус |
|---|---|---|
| Ідентифікатор обслуговуючого супутника | Пряма ідентифікація | Заблоковано за автентифікацією |
| Кут електронного керування променем | Точний напрямок променя | Не розкривається в жодній кінцевій точці |
| Функціональний таймер слота | Сигнал моменту передачі | Поле існує, але читає 0 на поточній споживчій прошивці |
Як працює зіставлення
Зіставлення супутників
Переглядач виконує наступне обчислення з частотою 1 Hz:
-
Позиція спостерігача: GPS-координати антени з
get_locationвизначають, де ви перебуваєте на Землі. -
Позиції супутників: використовуючи орбітальне поширення SGP4 на даних TLE з CelesTrak, переглядач обчислює азимут, кут місця та похилу дальність кожного супутника Starlink, як він видимий з місцезнаходження вашої антени.
-
Фільтрація за полем зору: розглядаються лише супутники з кутом місця вище 10°. Фізичний напрямок головної осі антени (з
alignment_stats) визначає центр конуса ~100° поля зору фазованої решітки. -
Вибір найближчого кандидата: супутник із найменшою кутовою відстанню від центру фізичної головної осі обирається як найімовірніший обслуговуючий супутник.
Перехрестя головної осі
Перехрестя на полярній діаграмі неба представляє фізичну орієнтацію корпусу антени, а не напрямок електронного променя. Фазована антенна решітка Starlink переважно нерухома після початкового вирівнювання; значення головної осі змінюються на частки градуса протягом годин через вітер або термічні ефекти. Антена фізично не рухається для відстеження окремих супутників.
Фактичне керування променем відбувається електронно всередині фазованої решітки на рівні RF, охоплюючи до ±50° від фізичної головної осі для відстеження обслуговуючого супутника. Цей напрямок електронного променя не розкривається через жодну споживчу кінцеву точку API.
Виявлення зміни супутника
Коли найближчий кандидат-супутник змінюється (інший ідентифікатор NORAD стає геометрично найближчим), це спостерігається як виведена зміна супутника. Ці зміни корелюють з, але не підтверджують фактичні передачі антени. Вони відображають орбітальну механіку; оскільки супутники пролітають над головою зі швидкістю ~7,5 км/с, найближчий до центру головної осі антени змінюється природно кожні кілька хвилин.
Реальні передачі між супутниками Starlink розроблені як безперервні (з’єднання-перед-розривом), без вимірюваного розриву в затримці або пропускній здатності, який можна було б використати як надійний сигнал виявлення на поточній прошивці.
Оцінка достовірності
Оцінка достовірності відображає геометричну ймовірність того, що зіставлений супутник є фактичним обслуговуючим:
| Достовірність | Критерії | Інтерпретація |
|---|---|---|
| Висока | < 10° від головної осі, ≤ 3 найближчі кандидати | Мало супутників поблизу; сильний геометричний кандидат |
| Середня | < 25° від головної осі | Добре в межах поля зору; обґрунтований кандидат |
| Низька | < 50° від головної осі | В межах діапазону керування антени, але багато найближчих кандидатів |
| Без збігу | > 50° від головної осі | Жодного супутника в межах діапазону електронного керування антени |
Ці порогові значення калібровані для фізичної головної осі (напрямку корпусу антени), а не для електронного променя. Оскільки фазована решітка може керувати ±50° від площини антени, обслуговуючий супутник зазвичай буде на 10-40° від центру фізичної головної осі. Збіг із «Високою» достовірністю означає, що є один сильний геометричний кандидат; це не означає, що ідентифікацію підтверджено.
Ступінь точності
Чому можна довіряти
Позиції супутників на глобусі є точними. Дані TLE з CelesTrak є авторитетними (отримані від 18th Space Defence Squadron Космічних сил США), а поширення SGP4 є стандартним методом, що використовується спільнотою відстеження космічних об’єктів. Точність позиціонування зазвичай становить кілька кілометрів для нещодавно оновлених TLE.
Місцезнаходження вашої антени є точним. Воно надходить безпосередньо з вбудованого GPS антени.
Фізичний напрямок головної осі є точним. Він вимірюється IMU (інерціальним вимірювальним блоком) антени з похибкою ~0,6°.
Набір видимих супутників є точним. Обчислені кути огляду від вашої позиції до кожного супутника є геометрично точними, тому полярна діаграма коректно показує, які супутники перебувають над вами та де вони на небі.
Що є виведеним
Ідентифікований супутник є обґрунтованим припущенням. Найближчий супутник до центру головної осі є найкращим геометричним кандидатом, але антена може взаємодіяти з будь-яким супутником у межах свого діапазону електронного керування ±50°. У будь-який момент десятки супутників можуть перебувати в полі зору.
Зміни супутників; це спостережувана геометрія, а не підтверджені передачі. Коли найближчий кандидат змінюється, це відображає орбітальний дрейф; інший супутник стає геометрично найближчим. Фактичні передачі антени можуть збігатися або не збігатися з цими геометричними змінами. Деякі фактичні передачі будуть невидимими для виведення (антена переключається на інший супутник, але геометрично найближчий не змінюється), а деякі спостережувані зміни будуть чистим орбітальним дрейфом (геометрично найближчий змінився, але антена фактично не переключилася).
Оцінки достовірності є геометричними, а не сигнальними. Збіг із «Високою» достовірністю означає хорошу геометрію, а не підтверджене з’єднання. Без доступу до напрямку електронного променя або ідентифікатора обслуговуючого супутника жоден інструмент на споживчій прошивці не може підтвердити, який супутник антена фактично використовує.
Сигнали, які ми дослідили
Під час розробки було оцінено кілька сигналів для виявлення передачі. Усі були протестовані на реальному обладнанні (rev3_proto2, прошивки 2026.02.16.cr74084 та 2026.04.07.mr77639.1).
| Сигнал | Гіпотеза | Результат |
|---|---|---|
seconds_to_first_nonempty_slot |
Повинен відраховувати по супутниковому слоту та скидатися при передачі | Завжди читає 0 на тестованому споживчому обладнанні; поле не заповнене |
Розриви в pop_ping_latency_ms |
Затримка повинна стрибнути, коли похила дальність змінюється під час передачі | Затримка залишається плавною через передачі; SpaceX ймовірно використовує переключення з’єднання-перед-розривом, що поглинає зміни шляху |
did_switch з історії збоїв |
Підтверджений прапорець переключення в записах збоїв | Спрацьовує лише під час перерв в обслуговуванні, а не під час рутинних ~15-секундних чистих передач |
| Розриви головної осі | Фізичне переміщення антени може супроводжувати передачі | Корпус антени майже не рухається; електронне керування променем обробляє відстеження супутників непомітно |
| SNR карти перешкод (без скидання) | Зміни SNR по комірках повинні відстежувати рух супутника через поле зору | Без скидання карти вона повертає статичну кумулятивну маску чистого неба на антені без перешкод; усі видимі комірки показують ~1,0 без будь-якої варіації між послідовними опитуваннями. Накопичені дані повністю насичені, тому порівняння кадрів не показує жодних змін. |
| SNR карти перешкод (зі скиданням) | Після виклику dish_clear_obstruction_map карта повинна перебудуватися з порожнього стану та розкрити позицію обслуговуючого супутника в міру того, як кожної секунди малюються нові пікселі |
Підтверджено, що працює. Після скидання на межах передачі опитування з частотою 1 Hz створює чисті однопіксельні траєкторії супутника. Див. Obstruction Map and Satellite Tracking. |
Obstruction Map and Satellite Tracking
Передумови
Дослідження SatInView від Ahangarpour, Zhao, and Pan (ACM MobiCom '24 LEO-NET Workshop) продемонструвало, що обслуговуючий супутник можна ідентифікувати шляхом скидання карти перешкод антени на 15-секундних межах передачі, опитування її з частотою 1 Hz та застосування XOR до сусідніх кадрів для вилучення траєкторії супутника, коли він рухається через поле зору. Спостережувана траєкторія потім зіставляється з позиціями супутників, обчисленими з TLE, для досягнення майже однозначної ідентифікації.
Під час початкової розробки Переглядача Starlink ми тестували карту перешкод без виконання скидання. На антені без перешкод карта виглядала статичною, повністю насичена маска чистого неба без будь-якої варіації між кадрами. Ми дійшли висновку, що дані не містять інформації про сигнал супутника в реальному часі. Цей висновок був точним для нескинутої карти, але неповним: карта виглядала статичною, тому що кожен піксель, який міг намалювати поточний супутник, уже був засвічений попередніми проходженнями супутників. Без попереднього очищення накопичених даних не було нічого нового для виявлення за допомогою XOR.
Оновлені результати
Після листування з дослідницькою командою SatInView ми протестували повний підхід на основі скидання на обладнанні rev3_proto2 із прошивкою 2026.04.07.mr77639.1 (квітень 2026). Результати підтверджують, що методика працює на поточному обладнанні та прошивці:
dish_clear_obstruction_mapдоступний і функціональний. Його виклик очищує накопичені дані SNR (377 активних пікселів зменшилися до 1 при тестуванні).- Після скидання карта перебудовується приблизно на один новий піксель за секунду, поки обслуговуючий супутник рухається через поле зору.
- XOR сусідніх кадрів з частотою 1 Hz створює чисті однопіксельні точки траєкторії з майже нульовим розкидом.
- 15-секундна синхронізація передачі (12-та, 27-ма, 42-га та 57-ма секунди кожної хвилини, глобально синхронізовані) була підтверджена на нашому обладнанні. Послідовні інтервали безперервно відстежували той самий супутник із чітким стрибком траєкторії, коли відбувалася фактична передача.
- Карта повідомляє
FRAME_EARTHна стаціонарних активних антенах, що означає, що решітка орієнтована з верхнім центральним пікселем, який відповідає істинній півночі. Мобільні або неактивні антени можуть повідомлятиFRAME_UT, де нижній центральний піксель відповідає напрямку головної осі.
Компроміс: чому Nexus не скидає карту за замовчуванням
Виклик dish_clear_obstruction_map є деструктивним; він стирає накопичений профіль перешкод антени. Для користувачів із встановленнями з перешкодами (дерева, будівлі або інші конструкції) ці дані цінні для діагностики проблем із сигналом і накопичуються з часом за багато проходжень супутників. Скидання їх кожні 15 секунд не дає антені накопичити жодних даних про перешкоди, а мобільний застосунок Starlink показуватиме порожню або часткову карту.
Nexus наразі використовує геометричне виведення (напрямок головної осі + зіставлення TLE) як метод ідентифікації супутника за замовчуванням. Цей підхід є недеструктивним; він не викликає жодних записуючих кінцевих точок на антені та не має побічних ефектів на дані перешкод користувача.
Ми використовуємо підхід на основі траєкторій як інструмент калібрування для валідації та покращення точності нашого геометричного виведення. Ми також оцінюємо, чи варто пропонувати відстеження траєкторій як опціональний режим для досвідчених користувачів і дослідників із чітким розкриттям компромісу щодо скидання карти.
Що може це змінити
Майбутні оновлення прошивки або апаратні ревізії можуть розкрити додаткову телеметрію, що підвищить точність виведення:
- Функціональний
seconds_to_first_nonempty_slot: якщо це поле буде заповнене на новішій прошивці чи обладнанні, воно забезпечить надійний сигнал моменту кожної передачі. - Кути електронного керування променем: будь-яке розкриття фактичного напрямку променя фазованої решітки дозволить пряму ідентифікацію супутника.
- Послаблена автентифікація на
dish_get_context: якщо SpaceX повторно увімкне полеinitial_satellite_id, проблему буде повністю вирішено. - Недеструктивні дані сигналу в реальному часі: якщо майбутня прошивка розкриє інформацію про сигнал по окремих супутниках через окрему кінцеву точку або недеструктивний варіант карти перешкод, підхід зіставлення за траєкторією можна буде застосовувати без скидання даних перешкод користувача.
- Нові покоління обладнання: SpaceX розгортає супутники V3 та нове термінальне обладнання. Інші версії прошивки або апаратні ревізії можуть заповнити наразі неактивні поля або розкрити нову телеметрію.
Попередні дослідження
Nexus використовує геометричне виведення (напрямок головної осі + позиції супутників, обчислені з TLE), щоб оцінити, який супутник обслуговує антену. Це евристичний підхід; ефективний і недеструктивний, але обмежений у точності.
Для ідентифікації з вищою точністю методика SatInView, розроблена Ahangarpour, Zhao, and Pan в University of Victoria (ACM MobiCom 2024, LEO-NET Workshop), досягає майже однозначної ідентифікації супутника шляхом кореляції траєкторій карти перешкод із даними TLE. Їхній підхід потребує скидання карти перешкод на межах передачі, що, як ми підтвердили, працює на поточному обладнанні та прошивці (див. Obstruction Map and Satellite Tracking). Їхню реалізацію доступно за адресою github.com/aliahan/SatInView.
Ми використовуємо їхню методику на основі траєкторій як еталон для калібрування та покращення точності геометричного виведення, що застосовується в Переглядачі Starlink.
Орбітальні дані
Позиції супутників отримуються з додаткової кінцевої точки GP CelesTrak, яка надає ефемериди, внесені SpaceX, об’єднані зі стандартними каталожними даними 18th Space Defence Squadron. Дані кешуються локально серверною частиною на Rust і оновлюються кожні 6 годин, із резервним 48-годинним застарілим кешем, якщо CelesTrak недоступний. Рядок стану показує поточну кількість супутників та вік даних.
Місцезнаходження антени
Переглядач використовує GPS-координати з кінцевої точки get_location антени, коли вони доступні. Якщо GPS-дані недоступні, ви можете вручну ввести свою широту та довготу в панелі налаштувань.