Перевод статьи Various Projects Independently Find Hidden SDR Capabilities in ESP32 Microcontrollers — RTL-SDR.com.

Оказалось, что радиочасть нескольких микроконтроллеров ESP32 умеет больше, чем Wi-Fi и Bluetooth: недокументированная функция позволяет снимать с неё сырые IQ-отсчёты и превращать чип в программно-определяемое радио. Сразу несколько проектов наткнулись на это почти одновременно и независимо друг от друга.

Ещё в 2025 году мы писали об ESPARGOS — фазированной решётке из множества патч-антенн, каждая из которых подключена к Wi-Fi-микроконтроллеру ESP32. ESPARGOS умеет определять направление прихода Wi-Fi-сигналов и строить в реальном времени тепловую карту в дополненной реальности.

Недавно команда ESPARGOS сделала захватывающее открытие. Выяснилось, что у нескольких чипов ESP32 есть недокументированная функция, которая позволяет прошивке обойти жёстко заданную логику Wi-Fi и Bluetooth и вместо этого захватывать сырые IQ-отсчёты основной полосы. В результате ряд моделей ESP32 теперь можно использовать как встроенный SDR, перекрывающий диапазон 2,2–2,7 ГГц (а ESP32-C5 — ещё и 4,8–6,0 ГГц), с частотой дискретизации до 80 MS/s и аналоговой полосой примерно 13–54 МГц в зависимости от чипа.

Однако для полноценного SDR, подключаемого к ПК, пропускной способности на выходе не хватает, поэтому на компьютер можно выгружать только отдельные снимки данных. Это значит, что такой SDR работает лишь как анализатор спектра, а демодулировать или декодировать непрерывный радиосигнал с помощью одного только ESP32 нельзя. Исключение — новый ESP32-S31: он может непрерывно передавать поток на скорости до 16 MS/s через свой гигабитный Ethernet, а драйвер SoapySDR для GNU Radio и gqrx обещают в ближайшее время. Если хотите попробовать сами, на странице ESP-WebSDR можно прошить большинство отладочных плат ESP32 прямо из браузера и смотреть спектр и водопад в реальном времени.

Кроме того, в ESPARGOS отмечают, что на их оборудовании теперь возможен фазокогерентный захват IQ-отсчётов. Это значит, что ESPARGOS больше не ограничен сигналами Wi-Fi и Bluetooth и может пеленговать любой сигнал в диапазоне 2,4 ГГц. Команда также говорит, что фазокогерентная передача тоже была бы возможна, но реализовывать её пока не стали, поскольку ею могут злоупотребить.

Похоже, что как минимум ещё два проекта независимо обнаружили ту же или похожую возможность примерно в то же время, но для решения совсем других задач.

На Reddit пользователь /u/h0m3us3r нашёл ту же функцию, 26 сентября выложил свою работу на GitHub и записал видео, где ESP32-S3 работает как SDR, а в роли USB3-интерфейса выступает FPGA. В отличие от ESPARGOS, проект h0m3us3r передаёт сырые IQ-данные на ПК непрерывно через FPGA, а не снимками, так что полноценная демодуляция и декодирование на компьютере должны быть возможны. Правда, в нынешнем прототипе тактирование ESP32 идёт от FPGA, из-за чего фазовые шумы получаются большими. Если проблемы с тактированием удастся решить, связка ESP32 и FPGA может стать обычным универсальным SDR — вроде RTL-SDR, но с диапазоном 2,2–2,8 ГГц и полосой до 80 МГц.

Ещё один проект, который, судя по всему, опирается на похожую находку, — C5VRX; на GitHub он впервые появился 13 августа. C5VRX превращает ESP32-C5 в приёмник FPV-видео на 5,8 ГГц, работающий в реальном времени. Хотя здесь, по-видимому, используется другой механизм, результат похож: проект берёт недокументированный поток IQ-данных ESP32, оцифровывает FPV-сигнал и демодулирует его прямо на чипе, выдавая аналоговое композитное видео через простой резистивный ЦАП. Работа над проектом ещё идёт, и на больших дистанциях он пока работает ненадёжно.

Спектр 80 МГц от ESP32 в программе SDR++

Поток с ESP32 (eSpDR) шириной 80 МГц в SDR++