Hace pocos días, CNX Software contó la historia del proyecto ESP-SDR, que convirtió un ESP32 en receptor SDR (y ahora también en transmisor SDR). El límite de ese montaje era la UART, que no alcanzaba a transportar los datos a la tasa de muestreo. Ahora el desarrollador h0m3us3r liberó w1700k-sdr, otro proyecto de código abierto que hace algo parecido con un equipo mucho más grande, el router Wi-Fi 7 Gemtek W1700K, convertido en un receptor SDR de banda ancha.
El proyecto usa la radio MediaTek MT7996 que el router trae de fábrica para capturar muestras I/Q crudas de 14 bits a un máximo de 320 MSps en las bandas de 2,4 GHz, 5 GHz y 6 GHz. El SoC Airoha AN7581 del router envía esos datos por una conexión de 10 GbE a un computador con Linux, donde el espectro y la cascada (waterfall) se ven en vivo desde el navegador. Para lograrlo, el firmware original del router se reemplaza por un sistema Linux propio y un firmware de radio a medida, que captura I/Q crudo en vez de procesar tráfico Wi-Fi normal.
Características y especificaciones de W1700K SDR
- Hardware compatible. Routers Wi-Fi 7 Gemtek W1700K (HW 1.x) y W1700K2 (HW 2.1).
- SoC. Airoha AN7581 con procesador Arm Cortex-A53 de cuatro núcleos.
- Radio. Chipset Wi-Fi 7 MediaTek MT7996 conectado por PCIe, con un frontal de RF MT7976 para 2,4 GHz y dos frontales MT7977 para 5 GHz y 6 GHz.
- Memoria. 2 GB de DRAM, de los cuales 1 GiB es un búfer circular DMA para las muestras capturadas.
- Bandas de recepción. 2,4 GHz, 5 GHz y 6 GHz.
- Resolución. Muestras I/Q de 14 bits.
- Tasas de muestreo. 40, 80, 160 y 320 MSps en las tres bandas, más un modo adicional 640/2 en la banda 2, con limitaciones de aliasing.
- Sintonía. Ajuste continuo del oscilador local dentro de los rangos del sintetizador, con resintonía durante la transmisión.
- Controles de RF. Control automático de ganancia (AGC), ganancia manual de LNA y de banda base, y filtrado analógico de 20 a 320 MHz.
- Transmisión. UDP sin copias intermedias (zero-copy) sobre 10 GbE, con empaquetado sin pérdida a la tasa más alta.
¿Cómo cabe tanto dato en un enlace de 10 GbE?
El proyecto combina empaquetado sin pérdida y búferes para sostener un flujo I/Q continuo a alta velocidad. A 320 MSps, la radio produce cerca de 1,28 GB/s cuando cada muestra compleja ocupa 32 bits, más de lo que una sola conexión de 10 GbE puede llevar en la práctica.
La solución del firmware es empaquetar la mitad de los bloques de datos en un formato más chico, de 28 bits por muestra compleja, sin perder información. Las muestras pasan a un búfer circular de 1 GiB en la memoria del router y de ahí viajan al computador por UDP. Con ese esquema, según el desarrollador, la conexión llega a unos 9,75 Gbit/s. ESP-WebSDR captura fragmentos cortos de I/Q y puede perder señales entre una ventana y otra. W1700K-SDR, en cambio, transmite I/Q de forma continua, sin esos huecos.
La captura muestra una cascada de 5 GHz en tiempo real con una FFT de 262.000 puntos en el navegador. Con zoom a 24 MHz alrededor de 5.250 MHz se distinguen los bordes de dos canales y la banda de guarda entre ellos, en intervalos de 1,22 kHz.
Firmware propio para la radio de MediaTek
El proyecto usa firmware a medida para el MT7996, que incluye un parche de ROM y firmware separado para los bloques WM y WA. El desarrollador hizo ingeniería inversa de los procedimientos de inicialización y calibración de la radio de MediaTek rastreando las operaciones sobre registros, y luego implementó las funciones necesarias sin cargar el firmware propietario del fabricante. El receptor permite cambiar frecuencia, ganancia, filtros y banda mientras transmite. Para cambiar la tasa de muestreo, por ahora, hay que detener y reiniciar el flujo.
El software del computador trae además una opción "flatten" que corrige la caída de la respuesta en frecuencia que introducen los filtros de diezmado de la radio. Así el espectro se ve más parejo cerca de los bordes del ancho de banda capturado. El receptor se maneja desde el navegador o con herramientas de línea de comandos que cambian la configuración y graban I/Q para procesarlo después.
¿Qué se necesita para armarlo?
La lista de materiales es corta:
- Un router W1700K o W1700K2 compatible.
- Un adaptador USB a serie de 3,3 V.
- Una conexión Ethernet al puerto LAN3 del router para la instalación.
- Un computador con Linux y una tarjeta de red de 10 GbE conectada al puerto WAN del router.
El Gemtek W1700K también se vende como router Wi-Fi 7 Quantum Fiber W1700K. Si no está claro qué versión tienes, hungvu.tech publicó un desarme con fotos de la placa y la ubicación de los pines UART.
El repositorio incluye scripts de compilación, herramientas de instalación e instrucciones para respaldar la memoria NAND original. Tras la instalación, el visor de espectro queda disponible en el navegador en el puerto 8073. La mayor parte del código se publica bajo licencia MIT, mientras que algunos componentes del kernel, el cargador de arranque y los drivers van bajo licencias GPL y BSD.






