- Провести сравнительный анализ доступных недорогих радиомодулей, способных принимать AIS сигнал и проводить аппаратную демодуляцию GMSK (очень не хочется писать/добавлять готовый демодулятор GMSK)
- Провести эксперименты по приему AIS сигнала с отобранными 2-3 радиомодулями из п1 и выбрать наилучший вариант
- Операционная система Ubuntu Ubuntu 24.04.3 LTS
- Visual Studio Code v1.108.2 с Platformio v 3.3.4
- GNU Radio v3.10.9.2 (Python 3.12.3)
- EasyEDA онлайн IDE для разработки радиосхем
- Плата esp32doit-devkit-v1 в качестве управляющего микроконтроллера
Таблица 1. Список радиомодулей для AIS
| Плата | Радиочип | Встроенный MCU | Фото | Цена на начало 2026, руб | Комментарий |
|---|---|---|---|---|---|
| XL1278-SMT | SX1278 | отсутствует | ![]() |
~500 | ВЧ часть рассчитана на 433 МГц (плату на 169 МГц не получилось купить), чип поддерживает band3 137-175 МГц, чувствительность -117 дБм@4.8 кбит/с, ВЧ-ключ UPG2179TB (или его клон XA214-G4C). Генератор AIS подобного сигнала ESP32&XL1278-SMT здесь. |
| E30 170T20D от Ebyte | SI4463 | клон STM | ![]() |
~750 | Требует перепрошивки MCU, жестко прописана модуляция GFSK, управление через AT-команды по UART, поддерживает 148-173,5 МГц, чувствительность -121 дБм@1 кбит/с, мощность передатчика 100 мВт (20 дБм) |
| E32 170T30D от Ebyte | SX1278 | HC32L110C4UA | ![]() |
~1000 | Требует перепрошивки MCU, жестко прописана модуляция LoRa, управление через AT-команды по UART, поддерживает 160-173 МГц, чувствительность -147 дБм@2,4 кбит/с при модуляции LoRa, мощность передатчика 1 Вт (30 дБм) |
Разумеется, список далеко не полный, отбирал наиболее доступные недорогие радиомодули, к которым был интерес "потрогать в живую"
Есть ещё неплохой по характеристикам чип Radiometrix NRX1 и Radiometrix RX1, но в них нет аппаратной GMSK демодуляции, а добавлять еще модули или делать программную демодуляцию GMSK не очень хочется.
Есть готовые специализированные чип-приемники AIS типа GNS5851 с неплохой заявленной чувствительностью до -117 дБм. Но достать их в РФ сейчас затруднительно и они достаточно дорогие. Есть даже специальные AIS процессоры типа CMX7032 (посвежее) и CMX910 и с серьезным ценником.
Есть интересная линейка чипов AX5043, AX5243, AX8052 от Onsemi с хорошей чувствительностью, нужным частотным диапазоном и GMSK демодулятором, но готовых плат/модулей в продаже в РФ на их основе мне найти не удалось.
На базе платы E30 170T20D с радиочипом SI4463 от Silicon Laboratories AIS приемник сделал Андрей Сычев и даже поделился прошивкой MCU. Андрей в своей статье написал, что не особо доволен чувствительностью приемника. На этом же радиочипе SI4463 построена плата RF4463PRO, выпускается на разные диапазоны, но найти доступную плату на 150 МГц не получилось.
Попробуем альтернативу на радиочипе SX1278 от Semtech (на начало 2026 сайт в РФ не работает без VPN). Вообще, есть целая серия трансиверов SX1276, SX1277, SX1278 и SX1279. Различаются, по сути, верхней граничной частотой: у SX1278 она наименьшая 525 МГц и отсутствуют ВЧ-вход/выход для частот ~800-900 МГц (корпус у всех чипов SX1276/7/8/9 QFN-28, у SX1278 ВЧ-пины 21 и 22 посажены на GND). Так же есть трансиверы SX1261 и SX1262 (SX1262 немного мощнее), работающие в диапазоне 150–960 МГц и современные LLCC68 и LR1110 с аналогичным диапазоном 150–960 МГц, краткий обзор тут. Найти готовы платы на нужный частотный диапазон так же не получилось.
Какие есть варианты в моем случае:
- Поменять ВЧ-обвязку на плате XL1278-SMT для работы на частоте ~162 МГц
- Перепрошить MCU на плате E32 170T30D для работы с сигналом AIS (настройка на частоту AIS, демодуляция GMSK, синхронизация по преамбуле и тп), по аналогии, как это делал Андрей Сычев для платы E30 170T20D
- Подключиться и управлять напрямую радиочипом SX1278 на плате E32 170T30D, минуя внутренний MCU самой платы, что то подобное обсуждали на форуме vrtp.ru
- Креативные варианты, по типу поставить преобразователь частоты с 162 на 433 МГц, пока рассматривать не будем
Примерно так может выглядеть ВЧ-часть на платах XL1278-SMT и E32 170T30D:
- RFI_LF (пин 1) - ВЧ-вход приемника SX1278
- RFO_LF (пин 28) - ВЧ-выход передатчика SX1278
- VR_PA (пин 25) - регулятор питания ВЧ-усилителя мощности
- ВЧ-ключ PE4259, по распиновке такой же, как и XA214-G4C и со схожими характеристиками
Схема взята отсюда. Схема ВЧ-части из референсного AppNote производителя радиочипа выглядит еще боле навороченной, но по сути близка к показанной выше. Из плюсов - есть указания номиналов ёмкостей и индуктивностей фильтров, что потенциально немного облегчает воспроизведение схемы. Пока отложим про запас этот вариант.
Аккуратно отпаиваем экран с платы E32 170T30D:

и видим неизвестный китайский микроконтроллер L110C4UA:

Опознать чип по маркировке L110C4UA могучие LLM не смогли, но Google отлично справился и мы понимаем, что это HC32L110C4UA китайский 32-битный ARM® Cortex от Xiaohua Semiconductor. Прошивки для данного MCU и плат E-byte можно посмотреть у PenguinLRS
Обдумав варианты, решил сначала отладить гибрид - подключить плату XL1278-SMT к ESP32 и научиться конфигурировать радиочип SX1278 из ESP32:
- это не требует аппаратных переделок плат
- esp32 мне знаком, не раз уже программировал под разные задачи
- на базе XL1278-SMT можно сделать передатчик, который в будущем поможет отладить работу платы ET32 170T30D с MCU HC32L110C4UA
- разбираться одновременно и с новым для меня MCU HC32L110C4UA (как показал быстрый обзор MCU без особой документации, готовых тулчейнов под знакомые мне инструменты аля VS Code&Platformio нет) и с радиочипом SX1278 мне будет достаточно сложно
Посмотреть, что получилось можно здесь.
Наиболее перспективными библиотеками для управления SX127x из ESP32 мне показались две:
- библиотека RadioLib драйверов для различных радиочипов, включая SX1278, под разные платформы, включая esp3. Заточена под Arduino, но есть примеры и под ESP-IDF
- библиотека SX127x под ESP-IDF от dernasherbrezon с полным контролем управляющих регистров
Разумеется, есть и другие библиотеки для SX127x, но они или "заточены" под LoRa (а мне нужен GMSK), как, например, драйвера от производителя SX127x Semtech или только под Arduino (как программный фреймворк, а не плату как таковую) либо хуже "дружат" с ESP32. Либо я их не нашёл.
- AIS приемник Андрея Сычева на базе платы E30 170T20D (радиочип SI4463)
- AIS приемник на базе радиочипа Radiometrix RX1
- Github проект прошивки HC32L110 от PenguinLRS
- Библиотека RadioLib драйверов различных радиочипов, включая SX1278, для разных платформ, включая esp3
- Библиотека SX127x под ESP-IDF от dernasherbrezon
- Официальные драйвера SX127x от Semtech



