ESPHome 2025.9.0 - 17th September 2025

Release Overview

ESPHome 2025.9.0 brings significant enhancements to display technology, camera functionality, and performance optimizations. This release focuses on advanced display capabilities, improved memory efficiency, and enhanced developer tools while maintaining backward compatibility for most use cases.

Key Highlights:

  • MIPI RGB Display support for high-performance color displays with dedicated hardware acceleration
  • Camera JPEG encoder enabling efficient image compression and streaming capabilities
  • Enhanced NRF52 features including DFU (Device Firmware Update) support
  • Extensive memory optimizations reducing flash and RAM usage across all platforms
  • Improved sensor support with enhanced BL0940 power monitoring capabilities
  • Component improvements including restructured Inkplate e-paper display support

MIPI RGB Display Support

ESPHome 2025.9.0 introduces comprehensive support for MIPI RGB displays through the new MIPI RGB Display Driver component.

Key Features:

  • Hardware acceleration through dedicated MIPI controllers
  • High refresh rates with excellent color reproduction
  • Unified configuration supporting multiple display models
  • Reduced CPU overhead compared to traditional parallel displays
  • Professional display quality for advanced user interfaces

MIPI RGB displays offer superior performance for applications requiring high-quality graphics, smooth animations, and professional-grade user interfaces.

Camera JPEG Encoder

The new Camera Encoder component adds efficient JPEG compression capabilities to ESP32 camera implementations, enabling:

Benefits:

  • Reduced bandwidth for image transmission over WiFi
  • Lower storage requirements for image capture applications
  • Improved streaming performance with compressed image data
  • Configurable quality settings to balance size vs. quality
  • Hardware acceleration where available on supported platforms

This component is particularly valuable for security cameras, time-lapse photography, and any application requiring efficient image handling.

Enhanced NRF52 Platform

Building on the NRF52 platform introduced in 2025.8.0, this release adds crucial development and deployment features:

New Capabilities:

  • DFU (Device Firmware Update) support for over-the-air updates
  • Improved debugging tools with enhanced Zephyr integration

These enhancements make NRF52 development more practical for production deployments while maintaining the low-power advantages of Nordic semiconductors.

Memory & Performance Optimizations

ESPHome 2025.9.0 continues the optimization efforts with significant improvements:

Flash Memory Savings:

  • Component source strings moved to flash (ESP8266) saving substantial RAM
  • GPIO memory optimization reducing usage by up to 50% through bit-packing
  • Scheduler improvements with memory pools to reduce heap fragmentation
  • String optimizations eliminating unnecessary allocations in core functions

Runtime Improvements:

  • Enhanced GPIO expander support with cached operations reducing I2C bus usage
  • Optimized sensor logging with compile-time string management
  • Better timezone synchronization allowing the timezone to be sent from Home Assistant for devices that are pre-installed with ESPHome

Breaking Changes

ESPHome 2025.9.0 includes several breaking changes that may require configuration updates:

Core Preference Storage Changes

  • Device ID consideration: Preference storage now accounts for device_id to prevent conflicts
  • Impact: Devices may lose some stored preferences on first boot after upgrade
  • Action Required: No configuration changes needed, but stored calibration data may need to be reconfigured

LVGL Spinbox Configuration

  • Configuration change: step property replaced with selected_digit for spinbox widgets
  • Impact: Existing LVGL spinbox configurations will fail validation
  • Action Required: Update spinbox configurations to use selected_digit instead of step

Bluetooth Proxy Connection Defaults

  • Default change: Active connections now default to true instead of false
  • Impact: Bluetooth proxy will allow active connections by default
  • Action Required: Explicitly set active: false if you want to maintain previous behavior

API and Memory Optimizations

  • String function changes: state_class_to_string() now returns const char* instead of std::string
  • Component storage changes: Component source strings moved to flash memory on ESP8266
  • Impact: Custom components using these functions may need updates
  • Action Required: Update custom components to handle new return types

Inkplate Component Rename

  • Component renamed: Inkplate component has been renamed and grayscale handling improved
  • Impact: Existing Inkplate configurations will need component name updates
  • Action Required: Update component references in your configuration

Most breaking changes are internal optimizations that shouldn’t affect typical configurations, but custom components and advanced setups may require updates.

Full list of changes

New Features

New Components

  • Add JPEG encoder support via new camera_encoder component esphome#9459 by @DT-art1 (new-component) (new-feature)
  • [mipi_rgb] Unified driver for MIPI RGB displays esphome#9892 by @clydebarrow (new-component) (new-feature) (new-platform)

New Platforms

Breaking Changes

All changes

Past Changelogs