La noticia más llamativa de las últimas semanas en el mundo del hardware hacking fue el desbloqueo de la función SDR oculta en las radios Wi-Fi de los microcontroladores ESP32 de Espressif. Sirven como SDR para transmitir y para recibir, y como el hack está recién empezando, en Hackaday esperan que venga mucho más.

Hay un problema. Aunque se especuló con que podrían bajar a frecuencias mucho menores, hasta donde se sabe solo está probado que funcionan alrededor de las frecuencias del Wi-Fi. Para una pieza de 2,4 GHz, Hackaday lo toma como una franja de 100 MHz entre 2,4 y 2,5 GHz, aunque la realidad puede ser más amplia y quizás bajen hasta 1,8 GHz. Hay muchas posibilidades ahí, pero habría bastante más que hacer si funcionara en otras partes del espectro. La salida es el conversor, una forma antigua y probada de hacer que una radio trabaje en otra frecuencia.

La lección de los receptores analógicos

Diagrama de bloques de la etapa de entrada de un sintonizador de TV, derivado de Chetvorno, CC0, vía Wikimedia Commons

Diagrama de bloques de la etapa de entrada de un sintonizador de TV. Derivado de Chetvorno (obra propia, CC0), vía Wikimedia Commons.

Al mezclar dos frecuencias, el espectro resultante contiene su suma y su diferencia. Ese era el mecanismo detrás del dial de sintonía de una radio o un televisor analógico. El dial movía un oscilador, y un circuito sensible sintonizado en la llamada frecuencia intermedia filtraba la diferencia entre el oscilador y la estación buscada. Hace unos años Hackaday publicó un análisis a fondo del sintonizador de TV analógico de UHF como campo de juego para hackers, donde revisó esto en detalle.

Un conversor usa exactamente ese principio. El rango de frecuencias de la antena se mezcla con la salida de un oscilador fijo, cuya frecuencia se elige para que la diferencia caiga en la banda de la radio. Así, sintonizar la radio recorre la salida del mezclador, que equivale a recorrer el rango de frecuencias de la antena.

Un ejemplo con números. Si el ESP32 recibe de 2,4 a 2,5 GHz, un mezclador en su entrada con un oscilador local de 2 GHz le permitiría captar la banda de 400 a 500 MHz. En la práctica el circuito necesita filtros en la entrada y en la salida para que lo que está fuera de banda no se cuele donde no debe, pero de verdad es así de simple. Con el manejo adecuado de la potencia y la amplificación, también funciona para transmitir, y ese equipo se llama transversor.

Un conversor de recepción que se puede armar

Un conversor práctico necesita un filtro de entrada, un mezclador, un filtro de salida y un oscilador local. Los filtros suelen ser piezas de catálogo y no tienen por qué ser caros. El mezclador puede ser algo tan simple como un diodo Schottky rápido, y el oscilador local puede ser incluso otro ESP32, de lo baratos que son. Se pueden sumar amplificadores. Lo que describe el autor es un conversor de recepción algo improvisado, pero que se puede hacer funcionar.

El filtro

Un filtro pasabajos muy simple en red Pi

En la mayoría de los casos el conversor servirá para recibir señales por debajo del rango del ESP32, así que se asume que el objetivo está entre HF y VHF. El filtro de entrada tiene que rechazar todo lo que esté sobre la frecuencia máxima de entrada y evitar que el oscilador local se filtre hacia la antena. Es un filtro pasabajos. Se pueden comprar hechos, pero también son fáciles de construir.

El pasabajos más común se conoce como red Pi, porque su circuito se parece a la letra griega pi. Lleva una bobina en el camino de la señal y un condensador a tierra a cada lado. Quien maneje las matemáticas puede calcular los valores, y si no, hay muchas calculadoras de redes Pi en línea. Construir una red Pi a estas frecuencias es bastante directo.

Para el filtro de salida hace falta algo que rechace lo más posible la frecuencia del oscilador local y deje pasar el rango de recepción del ESP32. Aquí hay suerte, porque la industria del Wi-Fi necesita justo esos filtros y se consiguen baratos en Mouser o Digi-Key. El autor no recomienda una pieza en particular, pero apunta a la línea de filtros Wi-Fi de TDK para elegir uno con el ancho de banda necesario.

El oscilador local

Para un ESP32 que trabaje a frecuencias mucho más bajas, el oscilador local probablemente estará cerca de los 2 GHz o por encima. Antes se usaba un oscilador de cristal con circuitos multiplicadores. También se puede comprar un módulo oscilador PLL caro. El método más simple y probablemente el más barato es usar otro ESP32, ahora que puede funcionar como transmisor SDR. Se programa para emitir una sola portadora en la frecuencia deseada, se baja el nivel de salida y listo, un oscilador local de 2 GHz por uno o dos dólares.

El mezclador

De nuevo, se puede comprar un mezclador hecho como módulo, aunque uno con salida en 2,4 GHz será caro. Por suerte hay un circuito simple que hace el trabajo. Usa un diodo como elemento no lineal, alimentado con la señal de la antena y la del oscilador local. A estas frecuencias se busca un diodo Schottky de señal pequeña, muy rápido y con la menor capacitancia posible, y varios fabricantes los venden a precios de centavos, no de dólares. El circuito básico aparece abajo y es bastante simple.

Circuito de un mezclador simple de diodo no balanceado con un filtro pasabanda en la salida

En el circuito, el diodo es el Schottky, el filtro pasabajos de entrada no aparece y el filtro de salida es un pasabanda Wi-Fi de catálogo. Las dos líneas gruesas representan un acoplador de microcinta, que son simplemente dos pistas de PCB paralelas sobre un plano de tierra. Lo ideal es calcular su tamaño para que presenten la impedancia correcta, a menudo 50 ohms, que es también el valor de R1, aunque en la práctica hasta las soluciones más improvisadas pueden funcionar.

Con un ESP32 como oscilador local, el autor arriesga que bastaría con trazar la pista en el PCB bajo la antena del módulo y bajar la potencia. Reconoce que puede ganarse el desprecio de algunos colegas, pero dice tener una larga historia de parches en RF y cree que podría funcionar.

Hacer que transmita

La misma técnica sirve para bajar la salida de transmisión del ESP32 a la frecuencia deseada, con una trampa. Incluso la potencia modesta de un ESP32 puede dañar o saturar piezas diseñadas para recepción. Hay dos opciones. Elegir piezas aptas para transmisión, o bajar la potencia a un nivel bajo y amplificar ya en la frecuencia menor.

Con esto ya se puede improvisar un conversor

Lo anterior no es un diseño listo para que el ESP32 escuche frecuencias más bajas, pero entrega todas las señales necesarias para llegar ahí. Hace años que la gente construye conversores para el RTL-SDR, así que también se pueden sacar ideas de ahí. Hackaday pide que le avisen si alguien construye un conversor de bajada, para transmitir, recibir o ambas cosas.

En una Superconference de hace cerca de una década hubo una charla sobre técnicas de construcción en RF que ahorra muchos dolores de cabeza, y con eso un circuito tan simple debería estar al alcance.