The ESPARGOS project has published ESP-SDR, open-source firmware that "turns the Wi-Fi/Bluetooth radio of an ordinary ESP32 board into a receive-only software-defined radio." CNX Software covered the project on October 4, 2026, and names Florian Euchner and Zoltan Doczi of ESPARGOS as its creators. The code is on GitHub under GPL-3.0-or-later. ESP-SDR is firmware, not a hardware product, so there is nothing to order and no price. You flash it onto ESP32 boards you already have.
The firmware reads samples through an undocumented debug path. According to CNX, the developers believe Espressif engineers left a debug I/Q sampling path in the silicon for factory wafer testing. CNX also reports that the team used LLMs to reverse-engineer the adctrig function in Espressif's librftest library so they could configure the debug registers. The project states that parts of the firmware are AI-generated. The authors say they understand the mechanism well only on the ESP32-C61.
How it works
Normally the ESP32's receiver feeds the chip's fixed Wi-Fi and Bluetooth modem hardware. ESP-SDR bypasses those modems and captures raw I/Q baseband samples from the internal ADC signal chain. The samples go into internal SRAM, and a ring buffer moves them to a host computer over USB or UART. The firmware can also compute FFTs on the chip with 256 to 2048 bins, so it can send compact spectrum data instead of raw I/Q.
On most chips, captures are snapshots with gaps between them. A snapshot holds up to 16,380 samples, or 8,190 on the ESP32-C2 and 12,284 on the ESP32-S2. As RTL-SDR.com puts it, plain ESP32 chips can export only snapshots to a PC. That makes them spectrum analyzers rather than receivers for continuous demodulation or decoding. Two chips stream:
- ESP32-S3: continuous I/Q over native USB, decimated from 16 MS/s to 15.625 to 250 kS/s.
- ESP32-S31 (experimental): 8-bit I/Q at up to 20 MS/s over high-speed USB, or 40 MS/s over Gigabit Ethernet, through the SoapyESPSDR driver. The driver targets GNU Radio and Gqrx.
The trade-press write-ups give lower Ethernet figures for the ESP32-S31 driver, which is still in development: 8 to 16 MSa/s from CNX and up to 16 MS/s from RTL-SDR.com.
Sample rates and chip support
The project's README lists these sample rates by chip:
| Chip | Sample rates |
|---|---|
| ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-S2, ESP32-S3 | 80 / 40 / 16 MS/s |
| ESP32-C5, ESP32-C61, ESP32-S31 | 80 to 4 MS/s |
| ESP32-H2 | 32 / 16 / 10.667 / 6.4 MS/s |
| ESP32-P4 | Not possible (no radio) |
| ESP32-H21, ESP32-H4 | Not yet supported |
CNX gives the usable bandwidth as about 13 to 54 MHz, depending on the chip. Gain is not calibrated in dB.
Tuning range
Every supported chip accepts tuning frequencies from 100 to 6000 MHz, but the PLL locks only near 2.4 GHz, plus near 5 GHz on the ESP32-C5. With a 5/6 LO divider, the ESP32, C2, C3, S2 and S3 reach about 1.85 GHz, and the C6 reaches about 1.95 GHz. CNX describes a wider practical range: the 2.4 GHz ISM band nominally, 2.2 to 2.7 GHz on some chips, and 4.8 to 6.0 GHz on the ESP32-C5. CNX also says the ESP32-C61 can capture LTE Band 7 and 5G NR n7 signals.
ESP-WebSDR
ESP-WebSDR is a companion tool that runs in the browser. It connects to a board over USB and shows a live spectrum and waterfall. It can also flash the ESP-SDR firmware from a supported browser such as Chrome or Edge. CNX notes that it captures short I/Q snapshots, so it can miss signals that arrive between capture windows.
Other projects found the same capability
RTL-SDR.com groups ESP-SDR with other projects that have found SDR capabilities in ESP32 chips:
- eSpDR by h0m3us3r pairs an ESP32-S3 with an FPGA used as a USB3 front end. It streams raw I/Q continuously to a PC and has a potential range of 2.2 to 2.8 GHz with up to 80 MHz of bandwidth. RTL-SDR.com calls the prototype a work in progress.
- C5VRX by Twotoz uses an ESP32-C5 as a real-time 5.8 GHz FPV video receiver. It demodulates on board and outputs analog composite video through a simple resistor DAC. It is a work in progress and does not yet work reliably at range.
- espdr-tx by Jochen Hammes (DA2JH) builds on h0m3us3r's work. It uses an ESP32-S3 without an FPGA to transmit narrowband FM or SSB voice on the 13 cm band, steering the frequency and amplitude of the Wi-Fi PHY's test tone.
RTL-SDR.com also reports that phase-coherent I/Q capture lets ESPARGOS, the team's main project, find the direction of any signal in the 2.4 GHz band, not just Wi-Fi and Bluetooth. The team says phase-coherent transmission would be possible but is withholding it because it could be misused.
What It Means for Makers
- Who it is for: anyone with ESP32 boards who wants to look at activity in the 2.4 GHz band, or the 5 GHz band with an ESP32-C5. The tool is best suited to spectrum viewing and relative signal comparisons, not to calibrated power measurements.
- Choosing a chip: to decode continuous signals on a PC today, use the ESP32-S3 for narrowband I/Q over USB. The ESP32-S31 offers wideband streaming, but its support is still experimental.
- Getting it: the source is in the ESPARGOS/esp-sdr repository. ESP-WebSDR can flash most ESP32 dev boards straight from Chrome or Edge.
- Caveats: the firmware depends on an undocumented hardware debug path that Espressif does not document or support.