Як я зібрала свій перший приймач ADS-B, у неділю, у Брюсселі

Написано у травні 2026 року. Інсталятор фідера відтоді змінився: актуальні кроки дивіться у практикумі на radar.dataero.eu.
Не дуже технічна інструкція від людини, яка, строго кажучи, не дуже технічна.
Отже, до справи.
Минулої суботи я повернулася з короткого перельоту до Ле-Туке. Південно-західний 12 вузлів, та погода, за якої забуваєш, що прогноз обіцяв гірше. Дорогою додому — десь над Па-де-Кале, спостерігаючи в SkyDemon за тихою низкою A320 на кілька тисяч футів вище за мене — мені спала думка, яка приходила щонайменше чотири рази до того і за якою я ніколи не діяла.
Мені варто поставити приймач ADS-B.
Цього разу, у потязі з Грімбергена, я замовила деталі.
До недільного обіду я вже дивилася на повітряні судна над Брюсселем на власному обладнанні. З підвіконня. З увімкненим чайником. Усе разом зайняло приблизно дві з половиною години, дві чашки кави та одну коротку мить розгубленості, яка минула, щойно я прочитала рядок документації, який пропустила. За моїми оцінками, дев’яносто хвилин із цього часу я читала уважніше, ніж насправді було потрібно.
Цей допис для кожного, хто колись відкривав посібник із Raspberry Pi і тихо закривав вкладку. Це та версія посібника, яку я б хотіла мати суботнього ранку.
Список покупок
У мене в шухляді лежав Raspberry Pi 5. Не маю гарного пояснення чому; я купила його минулої весни з наміром зробити щось цікаве і не зробила. Якщо у вас ще немає Pi, беріть Pi 5 (8 ГБ цілком достатньо) і блок живлення. Старіший Pi 4 чудово підходить — Pi 5 просто був у мене.
До цього я додала дві речі з Amazon.de:
- USB SDR-донгл NooElec NESDR Smart — алюмінієвий корпус, чип R820T2, розміром із товсту USB-флешку з маленьким антенним роз’ємом на кінці. Близько 30 €. (Чесно кажучи, це найгарніша річ у моїй квартирі.)
- Двохдіапазонну антену Bingfu на магнітній основі — 978 / 1090 МГц, 7 дБі, три метри кабелю, роз’єм SMA. Близько 25 €. Виглядає як маленька чорна сільничка на магнітній шайбі. Загалом вона нормальна. Докладніше про це нижче.
Плюс карта microSD, яку довелося відкопати в шухляді столу. (Вона лежала там приблизно з 2019 року. Її життя було цікавішим, ніж я їй приписувала.)
Загальні витрати, оскільки Pi вже був мій: близько 55 € і один недільний ранок. Ціни гуляють — пропозиції на Amazon змінюються разом із наявністю та продавцями, тож перевірте перед покупкою; сприймайте ці цифри як порядок величини, а не як комерційну пропозицію.
Міф і реальність
Міф у тому, що налаштування Pi — це та частина проєкту, де ви виявляєте, що насправді не розумієте ні комп’ютерів, ні свого wifi, ні самих себе.
Реальність ближча до підготовки до польоту. Є контрольний список; ви виконуєте його по порядку; якщо пропустите крок, дізнаєтеся про це за сорок секунд, бо щось не працюватиме. Авіаційних людей навчено це любити. Кожен, хто літав по колу й виконував перевірку HASELL, має правильний мозок для цього хобі.
Отже — контрольний список.
Що насправді відбувається на цьому Pi
На цій маленькій коробочці оселяються дві програми.
Перша — readsb, декодер із відкритим кодом, який підтримує невелика група людей, що розуміються на радіотехніці краще, ніж це корисно для здоров’я однієї людини. Він слухає слабкі сплески на 1090 МГц, які ваш донгл знімає з антени, розплутує тисячі транспондерів повітряних суден, що накладаються одне на одне щосекунди, і раз на секунду записує результат в охайний JSON-файл. Загалом це найважча частина всього проєкту. Хтось уже зробив її за вас.
Друга — фідер Dataero, невеликий сервіс на Python, який читає JSON-файл readsb і пересилає його до мережі Dataero на radar.dataero.eu. Це легша половина задачі; але це й та половина, яка робить ваше обладнання корисним комусь, окрім вас.
Спершу ви встановлюєте readsb, переконуєтеся, що він чує повітряні судна, а потім ставите поверх нього фідер Dataero.
Ось і вся архітектура. Далі це справді лише контрольний список.
Крок 1 — Запишіть образ на SD-карту
Завантажте Raspberry Pi Imager на ноутбук. Він існує для Windows, Mac і Linux і, без зайвого галасу, є одним із найкращих інсталяторів, якими я користувалася. Вставте SD-карту в ноутбук. Оберіть Raspberry Pi OS Lite (64-bit) — Lite, бо робочий стіл не потрібен пристрою, який житиме на підвіконні й ніколи не побачить монітора.
Перш ніж натиснути Write, відкрийте налаштування за значком шестерні. Задайте ім’я хоста (моє — radar-etterbeek, бо я не вмію бути непомітною), задайте ім’я користувача та пароль, вставте дані свого wifi і поставте позначку Enable SSH. Так усе потрібне буде підготовлено заздалегідь; вам ніколи не доведеться підключати екран до Pi.
Натисніть Write. Зробіть собі каву. Поверніться за п’ять хвилин.
Крок 2 — Запустіть Pi
Витягніть SD-карту з ноутбука. Вставте її у слот знизу Pi. Підключіть блок живлення.
Є особлива тиша, яка западає на кухні, коли Raspberry Pi завантажується вперше. У мене вона тривала близько дев’яноста секунд. Під Brothers in Arms, що здалося цілком доречним.
Коли Pi закінчить думати, знайдіть його у своїй мережі. Найпростіше — через сторінку адміністрування роутера: шукайте radar-etterbeek (або як ви його назвали) і запишіть IP-адресу.
Крок 3 — Підключіться по SSH і оновіть систему
З термінала на ноутбуці:
ssh sandy@192.168.1.42(Використовуйте своє ім’я користувача та IP свого Pi.) Першого разу він запитає, чи довіряєте ви хосту. Довіряєте. Потім:
sudo apt update && sudo apt upgrade -yЦе займе кілька хвилин. Зробіть другу каву.
Крок 4 — Підключіть донгл і антену
Вимкніть Pi (sudo shutdown now). Вставте донгл NooElec в один із портів USB-A на Pi. Прикрутіть SMA-кабель антени до кінця донгла — затягніть пальцями, потім ще чверть оберту двома пальцями; не геройствуйте з плоскогубцями.
Поставте антену десь із видом на небо. Я поставила свою на внутрішній бік вікна у вітальні, на магнітній шайбі, приліпленій до сталевої коробки з-під печива, бо підвіконня дерев’яне. Що працює, те й добре.
Увімкніть Pi знову. Підключіться по SSH ще раз.
Крок 5 — Створіть обліковий запис Dataero та отримайте API-ключ
Два коротких кроки в браузері, які відбуваються не на Pi.
- Відкрийте radar.dataero.eu у браузері на ноутбуці. Натисніть Register, заповніть форму, підтвердьте електронну адресу, якщо попросить.
- Після входу натисніть своє ім’я користувача у верхньому правому куті, перейдіть до свого Profile, знайдіть розділ API Key і натисніть Request API Key. Скопіюйте ключ туди, де знайдете його в наступні тридцять секунд.
Ось і все. Ставтеся до ключа як до пароля — не вставляйте його в Discord, не комітьте в публічний репозиторій, не зачитуйте вголос за вечерею.
Крок 6 — Установіть фідер Dataero
Повертаємося до SSH-сесії на Pi. Ви маєте досі бути в теці dataero-adsb-feeder з кроку 5; якщо ви кудись забрели:
cd ~/dataero-adsb-feederПотім запустіть інсталятор фідера:
sudo bash installer.shВін поставить кілька ввічливих запитань — найважливіше: вставити API-ключ, який ви щойно скопіювали зі свого профілю Dataero. Інсталятор створює віртуальне середовище Python у /usr/local/dataero-adsb-feeder, кладе ваш ключ у файл .env там само та реєструє фідер як службу systemd, що запускається під час завантаження.
Коли він закінчить, перевірте, що фідер живий:
sudo systemctl status dataero-feeder.serviceТа сама процедура: active (running), зеленим. Якщо ні, найпоширеніша причина — помилка в API-ключі, про яку journalctl -u dataero-feeder.service -e повідомить із помітною прямотою.
Крок 7 — Перший контакт
Знову відкрийте radar.dataero.eu, увійдіть і знайдіть свою станцію на мапі. За хвилину-дві після запуску фідера маркер вашої станції має стати зеленим, а від нього — розійтися невелике сузір’я повітряних суден.
Перший літак, який я побачила, — A320 Lufthansa в наборі з Франкфурта на FL340, курсом на захід. Другий — Boeing C-17 високо над Нідерландами, на схід на FL310, імовірно, довгим шляхом кудись у Перську затоку. Третій змусив мене всміхнутися по-справжньому: Cirrus SR22 — не мій, але досить близький — блукав уздовж бельгійського узбережжя.
Ось цей момент. Щойно ви побачите, як перші три-чотири треки з’являються на вашому власному екрані, спіймані вашим власним обладнанням, технічна частина проєкту закінчується і починається частина для захоплених.
Корисні команди, які знадобляться пізніше
Коротка пам’ятка на той випадок, коли ви повернетеся наступних вихідних і все забудете:
# Status
sudo systemctl status readsb
sudo systemctl status dataero-feeder.service# Live logs
sudo journalctl -u readsb -f
sudo journalctl -u dataero-feeder.service -f# Restart after editing config
sudo systemctl restart dataero-feeder.service# Edit the feeder's config (API key, paths, debug)
sudo nano /usr/local/dataero-adsb-feeder/.envУстановити DEBUG=TRUE у .env і перезапустити службу — правильний перший крок, коли щось не так, а причина неочевидна. Поверніть значення на FALSE, щойно розберетеся; так журнали тихіші.
Що насправді дає кімнатна антена
Чесно? Більше, ніж я очікувала, і менше, ніж хотілося б.
З мого вікна в Еттербеку я бачу, за правильної геометрії, майже все вище 5 000 футів у радіусі близько 100 морських миль. Це покриває основні прильоти до Завентема, високий європейський трафік, що перетинає Бельгію, і більшість авіації загального призначення з Грімбергена та Шарлеруа, щойно вона піднімається над будівлями.
Чого я не бачу — це низького та близького: польотів по колу на малих аеродромах, гелікоптерів нижче 1 500 футів, медичних рейсів уночі, що летять низько. Bingfu робить те, для чого її створено, — бути маленькою, кімнатною та прийнятною. Вона не створена бути найкращим, що можна зробити.
Тож я зробила те, що зробив кожен фідер ADS-B до мене. Я вже придивляюся до зовнішньої антени. Auratrove 1090 SMA outdoor, близько 60 €, — реалістичний наступний крок: кращий коефіцієнт підсилення, погодостійка, кріпиться до поруччя балкона. Стрибок у прийомі від кімнатної до зовнішньої, за всіма відгуками, аж ніяк не непомітний. Я відзвітую.
Невеликий уклін у бік readsb
Було б неправильно завершити, не сказавши прямо: по-справжньому розумна частина цього проєкту — не Pi, і не фідер Dataero теж. Це readsb. Сторона Dataero — включно з усією цією статтею — легка половина.
readsb — це те, що слухає слабкі радіосплески на 1090 МГц від повітряних суден, потенційно за 200 морських миль, розплутує тисячі повідомлень транспондерів Mode-S, що накладаються одне на одне щосекунди, і перетворює все це на чистий JSON-файл на маленькому комп’ютері, який коштує менше за пристойну вечерю. Він походить від dump1090, його розвинув Mictronics, а зараз підтримує wiedehopf і спільнота учасників. Ніхто з нас у Dataero не написав жодного рядка з цього. Ми передаємо байти далі.
Якби це програмне забезпечення було гуртом, readsb був би вокалістом, соло-гітаристом, барабанщиком, басистом, продюсером, звукорежисером і автором усіх пісень. Фідер Dataero — це той, хто роздає флаєри біля входу.
Тож — невеликий уклін, щиро.
Примітка про Dataero
Я спрямувала свій потік даних на Dataero — європейську мережу ADS-B, побудовану спільнотою, яку ми підтримуємо, — почасти тому, що там працюю, а почасти тому, що додати свій приймач до мережі, яка належить людям, що її тримають, мені приємніше, ніж віддавати дані компанії, з якою я ніколи не поговорю. Установлення не відрізняється від будь-якого іншого; змінюється те, що відбувається з даними потім.
Якщо ви вже передаєте дані кудись, переходити не потрібно. Dataero працює поруч.
Що я сказала б суботньо-ранковій Сенді
Що Raspberry Pi — це, загалом, просто маленький комп’ютер на Linux, який робить одну річ дуже добре, якщо ввічливо попросити. Що SDR-донгл розміром із USB-флешку. Що антена розміром із кухонне приладдя. Що обидві потрібні програми встановлюються скриптами; що одна з них — магія з відкритим кодом, а інша — ретранслятор на шістдесят рядків; що нічого тут не є непоправним. Якщо крок не працює, ви перечитуєте рядок над ним і пробуєте знову.
Що задоволення від того, щоб відкрити вкладку браузера й дивитися на справжні повітряні судна, спіймані вашим власним обладнанням, що стоїть на вашому підвіконні, у вашій квартирі, — тихо, але геть непропорційне вкладеній роботі.
Та й усе. Чашка чаю — і назад до справи.
Якщо ви хочете додати свій вузол до Dataero, репозиторій фідера — на github.com/dataero-adsb/dataero-adsb-feeder, а мережа, до якої він приєднується, — на radar.dataero.eu. Я буду там сьогодні ввечері.
Побачте це на власних даних
Розкажіть про свій аеропорт, адміністрацію або парк, і ми покажемо, що мережа там уже бачить.