Как я собрала свой первый приёмник 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 dBi, три метра кабеля, разъём SMA. Около 25 евро. Выглядит как маленькая чёрная солонка на магнитной шайбе. В целом она нормальная. Подробнее об этом ниже.
Плюс карта microSD, которую пришлось откопать в ящике стола. (Она лежала там примерно с 2019 года. Её жизнь была интереснее, чем я ей приписывала.)
Итого, поскольку Pi уже был моим: около 55 евро и одно воскресное утро. Цены гуляют - предложения на Amazon меняются вместе с наличием и продавцами, так что проверяйте перед покупкой; считайте цифры здесь ориентиром по порядку величины, а не расценкой.
Миф и реальность
Миф в том, что настройка Pi - это та часть проекта, где вы обнаруживаете, что на самом деле не понимаете компьютеры, свой Wi-Fi и себя самого.
Реальность ближе к предполётной подготовке. Есть чек-лист; вы выполняете его по порядку; если пропустили шаг, узнаёте об этом в течение сорока секунд, потому что что-то не работает. Авиационных людей учат это любить. У любого, кто летал по кругу и выполнял проверку 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, потому что я не отличаюсь тонкостью), задайте имя пользователя и пароль, вставьте данные своего Wi-Fi и отметьте 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, когда разберётесь; так логи тише.
Что на самом деле даёт комнатная антенна
Честно? Больше, чем я ожидала, и меньше, чем хотелось бы.
Из своего окна в Эттербеке я вижу, при удачной геометрии, почти всё выше 5000 футов в радиусе около 100 морских миль. Это покрывает основные прилёты в Завентем, высотный европейский трафик, пересекающий Бельгию, и большую часть авиации общего назначения из Гримбергена и Шарлеруа, как только она поднимается над зданиями.
Чего я не вижу - низкого и близкого: полётов по кругу на малых аэродромах, вертолётов ниже 1500 футов, ночных санитарных рейсов, идущих низко. 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. Я буду там сегодня вечером.
Посмотрите на своих данных
Расскажите о своём аэропорте, ведомстве или парке, и мы покажем, что сеть уже видит там.