Notebookcheck Logo

La pila WiFi de código abierto basada en Rust llega al ESP32

Espressif ESP32 (Fuente de imagen Espressif)
Espressif ESP32 (Fuente de imagen Espressif)
Tras una ingeniosa ingeniería inversa, los ingenieros liberaron la pila WiFi del EPS32, que antes era de código cerrado. Pronto, el ESP32 será capaz de varios modos de funcionamiento emocionantes.

Acaba de lanzarse una pila WiFi experimental de código abierto para el ESP32. Conocido como Ferris on Air o FoA, este proyecto, escrito en async rust, es una pila 802.11 de prueba de concepto que allana el camino para implementar diferentes interfaces con la ayuda de Embassy, un marco basado en rust para dispositivos embebidos. En última instancia, este marco traerá capacidades como la red de malla y AirDrop al ESP32. Por muy emocionantes que sean estas características, no siempre han sido posibles.

El ESP32 es en gran parte de código abierto. Por desgracia, los módulos WiFi y Bluetooth son de código cerrado, probablemente porque Espressif, el fabricante del ESP32, está obligado por un NDA de hardware para estos módulos. Afortunadamente, para este proyecto, Espressify confirmó que el proyecto podía realizar legalmente ingeniería inversa de los módulos y publicar los resultados bajo una licencia Apache. Sin embargo, la ingeniería inversa no es una hazaña fácil.

Para abrir el módulo WiFi, el equipo utilizó Ghidra, una herramienta de ingeniería inversa de código abierto desarrollada por la NSA, para analizar la estructura de su código, la lógica y los nombres de las funciones, que Esprssif tuvo la amabilidad de dejar en el código. Con esta información, el equipo consiguió conocer la función de cada registro de hardware implicado en el control del módulo WiFi. A continuación, utilizando una combinación de análisis de hardware físico y emulado del ESP32, el equipo realizó con éxito la ingeniería inversa del módulo WiFi. En particular, el equipo tuvo que construir una jaula de Faraday de bricolaje para aislar las señales WiFi procedentes del ESP32. Para lograrlo, el equipo utilizó un cubo de madera forrado con tejido conductor, un cable de fibra óptica para la señal al ESP32 y una batería de coche para alimentar todo el montaje.

Ferris on Air se encuentra aún en sus primeras fases, pero está ganando adeptos y prestaciones rápidamente. El proceso completo de ingeniería inversa y más detalles sobre el proyecto están disponibles a continuación.

Please share our article, every link counts!
Mail Logo
Stephen Pereyra, 2024-12-30 (Update: 2024-12-30)