ESPHome lanza una actualización centrada en la estabilidad, memoria y conectividad

imagem 40

ESPHome presenta un paquete de cambios incrementales orientados a mejorar la estabilidad, optimizar la gestión de memoria y reforzar la conectividad. Estas mejoras son especialmente relevantes para quienes gestionan dispositivos autoalojados y buscan un funcionamiento fiable en sus entornos domóticos.

Gestión de memoria y núcleo del sistema

Se ha reforzado la asignación de memoria en varios módulos. El núcleo ahora incluye FixedVector::try_init, que permite manejar de forma elegante los casos en que el montón está agotado, y RAMAllocator::make_unique para crear objetos cuya asignación puede fallar sin provocar bloqueos. Componentes como Nextion, OTA (tanto la sesión de ruido como el buffer de autenticación y el bloque de firma), el contexto SPI del W5500 en Ethernet y el almacenamiento de desbordamiento de la API recurren a esta asignación controlada, evitando fallos por falta de memoria. También se ha corregido la liberación de entradas en la cola de Nextion para que se haga de la misma forma en que fueron asignadas. Además, se añadió soporte para que set_internal() funcione durante la configuración y registre errores después, y se resolvió que los archivos se busquen en relación con el archivo YAML que los declara (una nueva característica). El reset del núcleo ahora limpia las plataformas cargadas, y el constructor de dispositivos empaquetado se ha actualizado a las versiones 1.14.6, 1.14.7, 1.14.8 y 1.14.9.

Conectividad y comunicaciones

La función network::is_connected() ahora maneja mejor múltiples interfaces, lo que mejora la detección de red en configuraciones complejas. En WiFi, si no se pueden asignar resultados de un escaneo, se descarta el escaneo en lugar de abortar, y se filtran los escaneos del ESP32 por SSID directamente en el controlador para reducir carga. El rastreador BLE del ESP32 vuelve a registrar los clientes GATT después de deshabilitar y habilitar BLE, y revierte la preferencia de coexistencia a equilibrada cuando comienza una actualización OTA, priorizando la fiabilidad de la transferencia. En el módulo de ruido, se actualizaron noise-c a 0.1.30 y libsodium a 1.10021.11 para mejorar la seguridad y el rendimiento. También se mantiene USE_BLUETOOTH_PROXY fuera del binario de prueba compartido para evitar conflictos.

Correcciones específicas y ajustes en componentes

Se corrigió la generación de código para el códec en sendspin cuando no se especifican códecs. En LVGL, se solucionó un fallo que ocurría al usar lvgl.list.add. En i2s_audio, el hilo de bucle ahora controla todos los cambios de estado, evitando condiciones de carrera. La API reutiliza el almacenamiento del buffer de desbordamiento en lugar de asignar memoria por cada escritura estancada, lo que reduce la fragmentación. Estos cambios, aunque pequeños, contribuyen a una experiencia más fluida y fiable para los usuarios que ejecutan ESPHome en sus propios servidores.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *