В начале этого месяца стало известно, что скромный ESP32-S3 можно превратить в SDR-передатчик и приёмник ; затем стало известно, что разработчик h0m3us3r выпустил проект w1700k-sdr , который превращает маршрутизатор Gemtek W1700K Wi-Fi 7 в широкополосный SDR-приёмник.
Проект LR2021-SDR с открытым исходным кодом от Samuel Reynolds (SAMS0N1TE) следует тому же принципу и превращает LoRa-трансивер Semtech LR2021 в программно-определяемое радио (SDR), способное принимать сигналы в диапазоне от 100 МГц до 2,74 ГГц. Используя недокументированную команду в ROM чипа, этот проект предоставляет доступ к необработанным 16-битным I/Q-отсчетам, что позволяет программному обеспечению декодировать цифровую голосовую связь P25 Phase 1, сообщения пейджеров POCSAG и аналоговые FM-сигналы без внешнего SDR-приемника.
Возможности прошивки LR2021-SDR:
- Поддерживаемое оборудование – Semtech LR2021 с ROM 1.24; несовместимо с вариантом SX1262 для доступа к необработанным I/Q.
- Диапазон частот приема – от 100 МГц до 2,74 ГГц (проверено экспериментально), выходящий за пределы указанных в технической документации диапазонов 150–960 МГц и 1,5–2,5 ГГц.
- Диапазон частот передачи – от 100 МГц до 2,74 ГГц (проверено экспериментально), выходящий за пределы указанных в технической документации диапазонов 150–960 МГц и 1,5–2,5 ГГц.
- Захват I/Q – 16-битные отсчеты I и Q по SPI, с короткими чистыми захватами при частоте до 250 000 комплексных отсчетов в секунду.
- Непрерывный прием – 125 000 отсчетов/с на протяжении до 391 секунды без зарегистрированных потерь FIFO или пропущенных блоков отсчетов.
- Декодирование сигналов – цифровой голос P25 Phase 1, сообщения пейджера POCSAG и аналоговая FM через LakeShark.
- Bluetooth LE – прием рекламных пакетов BLE 1M на каналах 37, 38 и 39 с использованием встроенного механизма обработки пакетов BLE чипа.
- Запись – захваты необработанных I/Q для автономного анализа сигналов, декодирования и воспроизведения, включая записи по триггеру с отсчетами до триггера.

Обычно LR2021 обрабатывает LoRa, FSK, FLRC и другие виды модуляции и передает декодированные пакеты ведущему процессору. Проект LR2021-SDR обходит этот штатный режим работы с помощью недокументированной команды ROM, которая открывает доступ к необработанному сигналу основной полосы. Затем процессор может обрабатывать отсчеты I/Q программно, что позволяет принимать сигналы, которые стандартный пакетный интерфейс чипа напрямую не поддерживает.
Разработчик проверил приёмник в диапазоне от 100 МГц до 2,74 ГГц, используя гармоники тактового генератора платы и отдельные сигналы, сформированные HackRF One внутри экранированного корпуса. Испытания подтвердили приём на частотах 100 МГц, 1,3 ГГц, 2,6 ГГц и 2,74 ГГц. Однако измерения выполнялись на одной плате, и результаты не позволяют определить калиброванную чувствительность приёмника и не гарантируют такой же частотный диапазон на другом оборудовании.

Разработчик также проверил непрерывный захват I/Q при 125 000 отсчётах в секунду: три сеанса работали до 391 секунды без сообщений о потерях FIFO или отказах очереди. Короткие захваты при частоте до 250 000 отсчётов в секунду также работали, но более высокие частоты — 500 000 и 1 000 000 отсчётов в секунду — вызывали переполнение FIFO, поскольку интерфейс SPI на 16 МГц не мог передавать данные достаточно быстро.
LR2021-SDR также поддерживает экспериментальную передачу сигналов, включая тестовые голосовые сигналы P25, данные датчика температуры и сигналы дистанционного управления OOK/FSK. В одном тесте отдельный приёмник успешно декодировал 72 голосовых кадра P25 и восстановил исходный тестовый тон. Другие тесты включали отправку данных датчика температуры, принятых rtl_433, и воспроизведение сигналов дистанционного управления, декодированных с помощью Flipper Zero. Пока передача ограничена короткими пакетами, а непрерывная передача и поддержка голоса в реальном времени всё ещё находятся в разработке.

LakeShark (упомянутый выше) — это проект прошивки с открытым исходным кодом от того же разработчика, который превращает LilyGO T-Display P4 в портативный SDR-сканер с использованием внешнего RTL-SDR-приёмника. В LR2021-SDR разработчик теперь реализовал захват необработанных I/Q-данных непосредственно со встроенного приёмопередатчика Semtech LR2021, что позволяет LakeShark принимать и декодировать голосовые сигналы P25, сообщения пейджеров POCSAG и аналоговые FM-сигналы без внешнего SDR-приёмника.
В репозитории проекта на GitHub представлены C-библиотека под лицензией GPL-3.0, автономная прошивка захвата для ESP32-P4, инструменты на Python, инструкции по сборке и подробные результаты тестов. Пользователи могут установить LakeShark для декодирования в реальном времени и работы в портативном режиме либо использовать автономную прошивку для захвата I/Q-отсчетов через USB для анализа на компьютере. Проект остаётся экспериментальным; требуется плата с LR2021 и подходящая антенна.
Выражаем свою благодарность источнику, с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.

