La tesis central de este proyecto es demostrar que hardware de consumo masivo, específicamente routers Wi-Fi 7 con SoCs de radio avanzados, puede ser re-propuesto para tareas de procesamiento de señal de banda ancha que tradicionalmente requieren equipos SDR especializados y costosos. Esto se logra mediante la ingeniería inversa y el reemplazo completo del firmware propietario, desbloqueando capacidades de captura de datos IQ crudos a altas tasas de muestreo.

El problema fundamental que aborda es la democratización del acceso a capacidades de análisis de espectro de RF de alto rendimiento. Al transformar un dispositivo de red comercial en un SDR, se reduce significativamente la barrera de entrada para la investigación, el desarrollo y la experimentación en el ámbito de las comunicaciones inalámbricas, la seguridad de RF y la detección de señales. La capacidad de capturar bandas completas (2.4 GHz, 5 GHz, 6 GHz) a 320 Msps (o incluso 640 Msps con decimación) con control granular sobre la frecuencia central (LO), ganancia y filtros, abre nuevas posibilidades para el monitoreo y la ingeniería inversa de protocolos inalámbricos.

Arquitectura del Sistema

La arquitectura del sistema se divide en dos componentes principales: el dispositivo SDR (router Gemtek W1700K) y el host de procesamiento. En el router, el SoC MediaTek MT7996 actúa como el front-end de RF, capturando datos IQ de 14 bits a tasas de hasta 320 Msps. Este componente ejecuta un firmware completamente personalizado, desarrollado a partir de ingeniería inversa de los registros de inicialización y calibración de MediaTek, lo que permite el control directo del LO, la tasa de muestreo, la ganancia (LNA/baseband) y los filtros analógicos. El firmware también maneja el empaquetamiento de datos para optimizar el ancho de banda.

Los datos IQ capturados son transferidos vía DMA a un anillo de memoria DRAM de 1 GiB en el SoC Airoha AN7581. Desde allí, el kernel de Linux (versión 6.18 con parches específicos) envía cada segmento de 8 KiB como un datagrama UDP, utilizando una técnica de zero-copy, a través del puerto 10 GbE del router. En el lado del host, una aplicación w1700k-stream recibe estos datagramas, los procesa (incluyendo una corrección opcional de roll-off de decimación) y los pone a disposición de otros consumidores a través de memoria compartida como un stream de complex int16 con etiquetas de "gap". Finalmente, w1700k-spectrum toma este stream, realiza un FFT de 262,144 puntos a 100 cuadros/segundo y lo visualiza como un espectro y cascada en una interfaz web, permitiendo también el control en vivo del SDR. La comunicación de control entre el host y el firmware del router se realiza a través de un mailbox de comandos.

Flujo de Datos IQ del Router al Host

  1. 1 MT7996 Radio Captura de IQ de 14 bits a 320 Msps, controlada por firmware personalizado.
  2. 2 DMA a DRAM Datos IQ transferidos vía DMA a un ring buffer de 1 GiB en SoC DRAM.
  3. 3 Kernel Linux (AN7581) Envía segmentos de 8 KiB como datagramas UDP, zero-copy, sobre 10 GbE.
  4. 4 Host: w1700k-stream Recibe datagramas UDP, aplica corrección de roll-off, expone stream IQ en mem...
  5. 5 Host: w1700k-spectrum Consume stream IQ, realiza FFT de 262,144 puntos, genera espectro/cascada.
  6. 6 Browser UI Visualiza espectro en tiempo real y permite control del SDR.
CapaTecnologíaJustificación
compute MediaTek MT7996 Front-end de radio y procesador de señal inicial (captura IQ, empaquetamiento). Firmware personalizado, sin código MediaTek.
compute Airoha AN7581 SoC Procesador principal del router, ejecuta Linux, gestiona DMA y 10 GbE. Linux 6.18 con parches de placa, BusyBox rootfs.
networking UDP Protocolo de transporte de datos IQ de alta velocidad y baja latencia desde el router al host. vs TCP (descartado por overhead y latencia), RDMA (requiere hardware específico) Datagramas de 8 KiB, zero-copy, sobre 10 GbE.
data-processing FFTW3 Biblioteca para transformadas rápidas de Fourier (FFT) en el host para el análisis de espectro. FFT de 262,144 puntos a 100 cuadros/segundo.
storage NAND Flash (W25N04KV/LV) Almacenamiento persistente del firmware y sistema operativo en el router. Copia de seguridad y restauración del firmware original.

Fundamentos Teóricos

Este proyecto se conecta con los fundamentos de la teoría de la información y el procesamiento de señales digitales, particularmente con el teorema de muestreo de Nyquist-Shannon, que establece la tasa mínima a la que una señal analógica debe ser muestreada para ser reconstruida sin pérdida de información. La captura de datos IQ crudos a altas tasas de muestreo (320 Msps) es una aplicación directa de este principio, permitiendo la digitalización de bandas de RF completas.

Además, la ingeniería inversa del hardware y el desarrollo de firmware personalizado para dispositivos comerciales resuena con los principios de la computación reconfigurable y el movimiento de hardware de código abierto. Aunque no se cita un paper específico, el espíritu de este trabajo se alinea con la investigación en SDR que busca abstraer la capa física del hardware, como se exploró en trabajos tempranos sobre radios definidas por software por Joseph Mitola III en la década de 1990, quien propuso la idea de una radio cuya funcionalidad se define principalmente por software, permitiendo flexibilidad y adaptabilidad. La optimización del transporte de datos con zero-copy y UDP se basa en principios de redes de alto rendimiento para minimizar la latencia y maximizar el throughput, conceptos bien estudiados en la literatura de sistemas distribuidos.