Espressif ha publicado en GitHub un paquete de soporte de placa para arrancar Linux en la ESP32-S31. No se trata de una versión recortada del sistema, sino del núcleo 6.18 convencional. Es posible porque este chip incorpora una unidad de gestión de memoria. El paquete combina la rama Linux de Espressif con Buildroot y U-Boot, de modo que un aficionado puede construir un sistema arrancable desde el código fuente. De momento es una versión preliminar para desarrolladores y Espressif no la recomienda para productos finales. Hay que compilar el núcleo, la memoria es escasa, no existe GPU y varias interfaces siguen en fase experimental. Aun así, es un paso simbólico y práctico para un microcontrolador económico.

Linux de verdad en un microcontrolador

Espressif, la empresa que fabrica la ESP32, ha dado soporte oficial a Linux en uno de sus chips más recientes. Lo cuenta MakeUseOf a partir de la publicación del código en GitHub.

Hasta ahora ya se había conseguido ejecutar Linux en algunos microcontroladores. Pero era una variante reducida, sin soporte de memoria virtual. Aquí cambia el planteamiento. La ESP32-S31 tiene el hardware necesario para ejecutar un núcleo convencional de forma nativa.

La noticia importa por el símbolo. La ESP32 es hoy, entre los aficionados, lo que fue el Arduino hace unos años. Es barata, está muy extendida y tiene una comunidad enorme. Que pueda ejecutar un sistema operativo completo acerca estos chips al territorio de las placas de un solo ordenador.

Qué ofrece la ESP32-S31

La ESP32-S31 es un modelo de gama alta dentro de la familia. Lleva un procesador RISC-V de dos núcleos, Wi-Fi 6 y Zigbee. Incluye además numerosas conexiones para accesorios y hardware externo.

Es el mismo procesador que aparece en una placa de desarrollo con pantalla táctil de 39 dólares, también analizada por MakeUseOf. Ese precio da una idea de la propuesta. No hablamos de un ordenador de sobremesa, sino de un chip pensado para proyectos conectados y de bajo coste.

Su ventaja frente a otros modelos de la serie es la gestión de memoria virtual. Esa característica es la que permite separar el núcleo de las aplicaciones. Sin ella, Linux no puede funcionar como un sistema operativo moderno.

La clave: la unidad de gestión de memoria

Una unidad de gestión de memoria traduce direcciones virtuales en físicas mediante tablas de páginas. En Linux, cada página suele ocupar 4 KiB. Cada proceso trabaja en su propio espacio de direcciones y no puede leer ni escribir en el de otro.

En las variantes sin esa unidad, Linux pierde varias capacidades. No existe protección de memoria entre procesos. La llamada fork, que copia un proceso con la técnica de copia en escritura, se sustituye por vfork, mucho más limitada. Un fallo en una aplicación puede tumbar todo el sistema.

Con la unidad de gestión disponible, la ESP32-S31 puede ejecutar herramientas habituales de Linux sin adaptaciones especiales. Eso amplía mucho el catálogo de programas que se pueden portar. También facilita que un error en una aplicación no arrastre al resto del sistema.

El paquete de Espressif: Buildroot, U-Boot y mucho trabajo

El paquete de soporte de placa de Espressif reúne varias piezas. Incluye su rama del núcleo Linux, Buildroot, U-Boot y otros componentes. Con ellas se puede ensamblar un sistema arrancable.

La cadena de arranque es la habitual en sistemas embebidos. Primero se ejecuta el código de la memoria de solo lectura del chip. Después entra U-Boot, el cargador de arranque. Este carga el núcleo y el árbol de dispositivos. Por último, el núcleo lanza el primer proceso del espacio de usuario.

Buildroot se encarga de generar el sistema de archivos raíz. Con BusyBox, un sistema mínimo puede quedar en unos pocos megabytes. El núcleo comprimido suele ocupar entre 1 y 3 MB, según la configuración. Son órdenes de magnitud habituales en sistemas embebidos, no cifras medidas en este chip.

Espressif lo ha etiquetado como versión preliminar para desarrolladores. No recomienda su uso en hardware de producción. Además, el usuario debe compilar el núcleo por su cuenta. Es decir, habrá mucho trabajo de preparación y funcionalidad limitada por ahora.

Lo que todavía falta

Las limitaciones son claras. Una de las razones por las que una ESP32 cuesta mucho menos que una Raspberry Pi es que dispone de una fracción de la memoria. Una ESP32 clásica tiene 520 KB de SRAM interna. Una Raspberry Pi 5 puede llevar hasta 16 GB. La diferencia supera las 30 000 veces. La ESP32-S31 admite más recursos que ese modelo clásico, pero la distancia sigue siendo enorme.

Tampoco tiene GPU. Por eso no cabe esperar un entorno de escritorio utilizable. El sistema quedaría limitado a la consola y a servicios en segundo plano.

Varias interfaces de hardware son aún experimentales. La gestión de energía y el soporte de USB como anfitrión siguen en desarrollo. Son piezas importantes para cualquier proyecto real. Un dispositivo que funciona con batería necesita una buena gestión de consumo, y un USB anfitrión es necesario para conectar teclados, memorias o módems.

Para la mayoría de proyectos, el marco ESP-IDF de Espressif sigue siendo la opción más rápida y práctica. Arranca en milisegundos, ocupa poca memoria y está muy probado. Linux solo compensa si se necesita algo que ese marco no ofrece.

Reflexiones finales

Este anuncio no significa que la ESP32 sustituya a la Raspberry Pi. Significa otra cosa. Espressif quiere que sus chips más potentes sean algo más que controladores. Lo refuerza con otras herramientas. MakeUseOf recuerda que la compañía ha lanzado una alternativa a Claude Code que entiende el hardware conectado a una ESP32. Puede generar, compilar y desplegar aplicaciones a partir de instrucciones en lenguaje natural.

Si esas piezas maduran juntas, la ESP32 podría acercarse a una placa de un solo ordenador diminuta. Todavía no está ahí.

En domótica, el caso de uso más habitual entre nuestros lectores, Linux no resulta necesario. Con el Apollo ESPHome Starter Kit, ESPHome resuelve sensores, automatizaciones y comunicación con Home Assistant sin sistema operativo. Es más ligero y más fiable.

Donde sí puede aportar es en proyectos que reutilicen software existente. Pensamos en pasarelas, pequeños servidores o herramientas de red que hoy exigen una placa mayor. Eso dependerá de cuánta memoria se pueda añadir y de lo rápido que Espressif cierre las carencias de energía y USB.

Mientras tanto, conviene tratarlo como lo que es. Es una versión preliminar y un campo de pruebas. Para quien disfrute con Linux embebido, tiene mucho interés. Para quien quiera un producto terminado, todavía es pronto.

3

Suscribirse
Notificación
0 Comments
0
¡Aquí puedes dejar tus comentarios!x