Еще в ноябре 2019 года мы опубликовали как Bastian Bloessl () заинтриговал нас своей способностью запустить GNU Radio на Android‑устройстве. Теперь он официально опубликовал свой код для публики на GitHub. Это довольно примечательное развитие, поскольку теперь вы можете нести полный набор обработки DSP в вашем кармане. В дополнение к коду он разместил короткий блог‑пост, поясняющий немного о портировании. Он отмечает некоторые основные моменты выпуска:
- Поддерживает самую последнюю версию GNU Radio (v3.8).
- Поддерживает 32‑битные и 64‑бит ARM‑архитектуры (то есть armeabi-v7a и arm64-v8a).
- Поддерживает популярные аппаратные фронтенды (RTL-SDR, HackRF и Ettus B2XX). Другие можно добавить, если будет интерес.
- Поддерживает взаимодействие с аппаратным обеспечением Android (микрофон, динамик, акселерометр и т. п.) через gr-grand.
- Не требуется рутировать устройство.
- Все обработки сигналов выполняются в области C++.
- Предоставляет различные способы взаимодействия с графом потока из Java‑среды (например, Control Port, PMTs, ZeroMQ, TCP/UDP).
- Поставляется собственная реализация двойно отображаемого кольцевого буфера GNU Radio с использованием общей памяти Android.
- Извлекает выгоду из расширений SIMD через VOLK и поставляется профилировочное приложение для Android.
- Извлекает выгоду из OpenCL через gr-clenabled.
- Включено Android‑приложение для бенчмаркинга времени выполнения GNU Radio, VOLK и OpenCL.
- Включены примеры приложений для WLAN и FM.
Он даже включает демонстрационный код, который превращает USRP B200 SDR, подключенный к Android‑устройству, в WLAN‑трансивер, который может работать в реальном времени на более мощных устройствах.
Установка может быть непростой для большинства, но Бастиан включил подробные инструкции по сборке на странице GitHub и использует Docker‑файл, что, как ожидается, немного упростит установку.

Источник:
