Releases: esphome/home-assistant-addon
Releases · esphome/home-assistant-addon
2025.10.0b3
- [media_player.speaker] Dynamic auto load esphome#11084 by @jesserockz
- Bump esphome-dashboard from 20251009.0 to 20251013.0 esphome#11212 by @dependabot[bot]
- [core] Properly clean the build dir in the HA addon esphome#11208 by @swoboda1337
- Fix log retrieval with FQDN when mDNS is disabled esphome#11202 by @bdraco
2025.10.0b2
- Bump esphome-dashboard from 20250904.0 to 20251009.0 esphome#11123 by @dependabot[bot]
- [canbus][mcp23xxx_base] Mark virtual methods as pure virtual to fix linker errors esphome#11133 by @bdraco
- [ci][tests] Remove redundant ESP32 Arduino test files esphome#11136 by @bdraco
- [ci][ethernet][tests] Remove redundant Arduino tests for ethernet PHYs esphome#11137 by @bdraco
- [ci][improv_serial][tests] Remove redundant ESP32 Arduino test files esphome#11138 by @bdraco
- [mdns] Store TXT record values in flash to reduce heap usage esphome#11114 by @bdraco
- [esp32] Update IDF 5.5 and Arduino 3.3 to use 55.03.31-1 esphome#11120 by @swoboda1337
- [esp32] Update migration warning for Arduino-as-IDF-component transition esphome#11142 by @bdraco
- [ci][mdns][tests] Remove redundant ESP32 Arduino test files esphome#11143 by @bdraco
- [esp32_ble_beacon, esp32_ble_tracker] Remove unused Arduino includes and redundant tests esphome#11140 by @bdraco
- [network][ci][tests] Remove redundant ESP32 Arduino test files esphome#11148 by @bdraco
- [ci][time][tests] Remove redundant ESP32 Arduino test files esphome#11147 by @bdraco
- [ci][debug][tests] Remove redundant ESP32 variant Arduino test files esphome#11146 by @bdraco
- [ci][logger][tests] Remove redundant ESP32 Arduino test files esphome#11144 by @bdraco
- [opentherm][ci][tests] Remove redundant ESP32 Arduino tests and simplify conditionals esphome#11149 by @bdraco
- [ci][tests] Remove redundant ESP32-C3 Arduino tests for non-variant-specific components esphome#11152 by @bdraco
- [datetime][ci][tests] Replace test.all.yaml with minimal platform cover esphome#11151 by @bdraco
- [ci][tests] Remove all redundant ESP32-C3 Arduino tests esphome#11154 by @bdraco
- [json] Fix PSRAM allocator dangling pointer crash esphome#11165 by @bdraco
- [esp32_ble] Partial revert of #10862 - Fix GATT client notifications esphome#11171 by @bdraco
- [mdns] Restore mdns_txt_record() public API for external components esphome#11158 by @bdraco
- Group component tests to reduce CI time esphome#11134 by @bdraco
- [ci] Filter out components without tests from CI test jobs (#11134 followup) esphome#11178 by @bdraco
- [esp32] Change Arduino dev & latest to 3.3.2 esphome#11169 by @swoboda1337
- Bump aioesphomeapi from 41.13.0 to 41.14.0 esphome#11188 by @dependabot[bot]
- [mipi_rgb] Fix pin conflicts introduced by shared SPI bus in #11134 esphome#11185 by @bdraco
- [ci] Dynamic runner allocation: 8 for releases, 4 for dev esphome#11191 by @bdraco
- [wifi] Fix missed string literal in flash on ESP8266 esphome#11187 by @bdraco
- [ota] Increase handshake timeout to 20s now that auth is non-blocking esphome#11186 by @bdraco
- [esp32_improv] Fix state not transitioning to PROVISIONED when WiFi configured via captive portal esphome#11181 by @bdraco
- [usb_host] Fix transfer slot exhaustion at high data rates and add configurable max_transfer_requests esphome#11174 by @bdraco (new-feature)
2025.10.0b1
- [thermostat] Rename timer enums to mitigate naming conflict esphome#10666 by @kbx81
- [remote] Remove duplicate implementations of remote code esphome#10548 by @swoboda1337
- Bump ruff from 0.12.12 to 0.13.0 esphome#10670 by @dependabot[bot]
- Add coverage for dashboard ahead of Path conversion esphome#10669 by @bdraco
- Add additional coverage for yaml_util esphome#10674 by @bdraco
- [esp32] Allow esp-idf 5.5.1 esphome#10680 by @swoboda1337
- [esp32_ble_tracker] Simplify BLE client state machine by removing READY_TO_CONNECT esphome#10672 by @bdraco
- Fix packet_transport not initializing packet data after flushing esphome#10686 by @fakuivan
- Bump pytest-asyncio from 1.1.0 to 1.2.0 esphome#10691 by @dependabot[bot]
- [api_protobuf.py] Use type based on size/length esphome#10696 by @kbx81
- Unpin libretiny version in network test esphome#10717 by @HeMan
- Add additional coverage ahead of Path conversion esphome#10723 by @bdraco
- [api] Exclude ConnectRequest/Response when password is disabled esphome#10704 by @bdraco
- [json] Only compile SpiRamAllocator when PSRAM is enabled esphome#10728 by @bdraco
- [CI] Check esp32 boards file is up to date esphome#10730 by @jesserockz
- [const] Move CONF_CLEAR to const.py esphome#10742 by @DT-art1
- Bump pytest-mock from 3.15.0 to 3.15.1 esphome#10759 by @dependabot[bot]
- Bump aioesphomeapi from 40.2.1 to 41.1.0 esphome#10776 by @dependabot[bot]
- Migrate to SPDX license specifier in pyproject.toml esphome#10768 by @mweinelt
- [core] Make StringRef convertToJson inline to save 250+ bytes flash esphome#10751 by @bdraco
- [api] Rename ConnectRequest/Response to AuthenticationRequest/Response esphome#10726 by @bdraco (breaking-change)
- [esp32] Use arduino as an idf component esphome#10647 by @swoboda1337 (new-feature) (breaking-change)
- [ethernet] Remove redundant Arduino framework version check esphome#10781 by @bdraco
- [esp32] Optimize NVS preferences memory usage by replacing vector with unique_ptr esphome#10729 by @bdraco
- [libretiny] Optimize preferences memory usage by replacing vector with unique_ptr esphome#10731 by @bdraco
- [zwave_proxy] New component esphome#10762 by @kbx81 (new-component) (new-feature)
- [ektf2232] Rename
rts_pintoreset_pinesphome#10720 by @jesserockz (breaking-change) - [dashboard] Transfer DNS/mDNS cache from dashboard to CLI to avoid blocking esphome#10685 by @bdraco
- [api_protobuf.py] Use type appropriate for
estimated_sizeesphome#10797 by @kbx81 - [core] os.path -> Path esphome#10654 by @jesserockz
- Bump ruff from 0.13.0 to 0.13.1 esphome#10802 by @dependabot[bot]
- [zwave_proxy] Send Home ID in DeviceInfoResponse esphome#10798 by @kbx81
- Fix esphome run esphome#10807 by @balloob
- Bump aioesphomeapi from 41.1.0 to 41.4.0 esphome#10805 by @dependabot[bot]
- Bump esptool from 5.0.2 to 5.1.0 esphome#10758 by @dependabot[bot]
- [zephyr] Fix compilation after Path migration esphome#10811 by @bdraco
- [http_request] Fix Path object passed to C++ codegen esphome#10812 by @bdraco
- Synchronise Device Classes from Home Assistant esphome#10803 by @esphomebot
- [sensirion] Fix warning esphome#10813 by @swoboda1337
- [core] Fix TypeError in update-all command after Path migration esphome#10821 by @bdraco
- Add coverage for Path to str fix in #10807 esphome#10808 by @bdraco
- [web_server] Reduce flash usage by eliminating lambda overhead in JSON generation esphome#10749 by @bdraco
- [tests] Add integration tests for oversized payload handling in API esphome#10788 by @bdraco
- Skip external component updates when running logs command esphome#10756 by @bdraco
- Fix missing os import after merge collisions esphome#10823 by @bdraco
- [substitutions] add missing safe globals tests esphome#10814 by @jpeletier
- [substitutions] implement !literal esphome#10785 by @jpeletier (new-feature)
- tuya: handle WIFI_SELECT and WIFI_RESET esphome#10822 by @thekeymeister
- [uart] Multiple ESP32 features and fixes esphome#8103 by @brambo123 (new-feature)
- [CI] Format files after sync esphome#10828 by @jesserockz
- [mmc5603] Fix incorrect factor for value calculation in MMC5603 component esphome#9925 by @Nerdiyde (breaking-change)
- Pin ruamel.yaml.clib to 0.2.12 esphome#10837 by @bdraco
- Bump aioesphomeapi from 41.4.0 to 41.6.0 esphome#10833 by @dependabot[bot]
- Bump aioesphomeapi from 41.6.0 to 41.7.0 esphome#10841 by @dependabot[bot]
- [camera-encoder] Use defines instead of build flags esphome#10824 by @jesserockz
- [core] Add typing to some core files esphome#10843 by @jesserockz
- [core] Add a clean-platform option esphome#10831 by @swoboda1337
- [wifi] Unify ESP32 WiFi implementation to use ESP-IDF driver esphome#10849 by @bdraco
- [api] Implement zero-copy API for bluetooth_proxy writes esphome#10840 by @bdraco
- Bump aioesphomeapi from 41.7.0 to 41.8.0 esphome#10853 by @dependabot[bot]
- [zwave_proxy] Fix race condition sending zero home ID on reboot esphome#10848 by @bdraco
- Bump aioesphomeapi from 41.8.0 to 41.9.0 esphome#10855 by [@dependabot[bot]](https://github.c...
2025.9.3
- [api] Prevent API from overriding noise encryption keys set in YAML esphome#10927 by @bdraco
- [sim800l] Fixed ignoring incoming calls. esphome#10865 by @vmakeev
- [voice_assistant] Fix wakeword string being reset while referenced esphome#10945 by @abmantis
2025.9.2
- [esp32_improv] Disable loop by default until provisioning needed esphome#10764 by @bdraco
- [libretiny] Fix lib_ignore handling and ignore incompatible libraries esphome#10846 by @swoboda1337
- Set color_order to RGB for the Waveshare ESP32-S3-TOUCH-LCD-4.3 and ESP32-S3-TOUCH-LCD-7-800X480 esphome#10835 by @stuartparmenter
- [esp32_improv] Fix crashes from uninitialized pointers and missing null checks esphome#10902 by @bdraco
- [sx126x] Fix issues with variable length FSK packets esphome#10911 by @swoboda1337
- [mipi_spi] Fix t-display-amoled esphome#10922 by @clydebarrow
2025.9.1
- [mqtt] Fix KeyError when MQTT logging configured without explicit level esphome#10774 by @bdraco
- fix(packet_transport): Add initialization for sensor configuration in packet transport esphome#10765 by @TMaYaD
- [core] Fix ESP8266 mDNS compilation failure caused by incorrect coroutine priorities esphome#10773 by @bdraco
- [gpio] Fix unused function warnings when compiling with log level below DEBUG esphome#10779 by @bdraco
2025.9.0
Full list of changes
New Features
- [light] Add support for querying effects by index esphome#10195 by @edwardtfn (new-feature)
- [mipi_spi] Add model esphome#10392 by @clydebarrow (new-feature)
- [mapping] Use custom allocator esphome#9972 by @clydebarrow (new-feature)
- Add JPEG encoder support via new camera_encoder component esphome#9459 by @DT-art1 (new-component) (new-feature)
- [nrf52] add dfu esphome#9319 by @tomaszduda23 (new-feature)
- [bluetooth_proxy] Expose configured scanning mode in API responses esphome#10490 by @bdraco (new-feature)
- [wizard] extend the wizard dashboard API to allow upload and empty config options esphome#10203 by @maximmaxim345 (new-feature)
- [mipi_rgb] Unified driver for MIPI RGB displays esphome#9892 by @clydebarrow (new-component) (new-feature) (new-platform)
- [api] Add timezone support to GetTimeResponse for automatic timezone synchronization esphome#10661 by @bdraco (new-feature)
- [bl0940] extend configuration options of bl0940 device esphome#8158 by @dan-s-github (new-feature) (new-platform)
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
- [mipi_rgb] Unified driver for MIPI RGB displays esphome#9892 by @clydebarrow (new-component) (new-feature) (new-platform)
- [bl0940] extend configuration options of bl0940 device esphome#8158 by @dan-s-github (new-feature) (new-platform)
Breaking Changes
- [core] Fix preference storage to account for device_id esphome#10333 by @bdraco (breaking-change)
- [lvgl] Replace spinbox step with selected_digit esphome#10349 by @clydebarrow (breaking-change)
- [sensor] Change state_class_to_string() to return const char* to avoid allocations esphome#10533 by @bdraco (breaking-change)
- [bluetooth_proxy] Change default for active connections to true esphome#10546 by @bdraco (breaking-change)
- [core] Store component source strings in flash on ESP8266 (breaking change) esphome#10621 by @bdraco (breaking-change)
- [inkplate] Rename component and fix grayscale esphome#10200 by @JosipKuci (breaking-change)
All changes
- [CI] Fix CI job failures for PRs with >300 changed files esphome#10215 by @bdraco
- [qm6988] Clean up code esphome#10216 by @jesserockz
- [quality] Remove period from audio related Invalid raises esphome#10229 by @jesserockz
- [api] Optimize message buffer allocation and eliminate redundant methods esphome#10231 by @bdraco
- [esp32] Optimize preferences is_changed() by replacing temporary vector with unique_ptr esphome#10246 by @bdraco
- [core] Remove unnecessary FD_SETSIZE check on ESP32 and improve logging esphome#10255 by @bdraco
- [esp8266] Replace std::vector with std::unique_ptr in preferences to save flash esphome#10245 by @bdraco
- [api] Optimize APIFrameHelper virtual methods and mark implementations as final esphome#10278 by @bdraco
- [api] Mark protobuf message classes as final to enable compiler optimizations esphome#10276 by @bdraco
- [api] Mark APIConnection as final for compiler optimizations esphome#10279 by @bdraco
- [api] Optimize protobuf decode loop for better performance and maintainability esphome#10277 by @bdraco
- [CI] Rename and expand needs-docs workflow esphome#10299 by @jesserockz
- [safe_mode] Reduce flash usage by 184 bytes through code optimization esphome#10284 by @bdraco
- [helper] Make crc8 function more flexible to avoid reimplementation in individual components esphome#10201 by @jesserockz
- [api] Avoid object_id string allocations for all entity info messages esphome#10260 by @bdraco
- [mdns] Reduce flash usage and prevent RAM over-allocation in service compilation esphome#10287 by @bdraco
- [quality] Convert remaining
to_codetoasyncesphome#10271 by @jesserockz - [binary_sensor] Convert LOG_BINARY_SENSOR macro to function to reduce flash usage esphome#10294 by @bdraco
- [sensor] Convert LOG_SENSOR macro to function to reduce flash usage esphome#10290 by @bdraco
- [button] Convert LOG_BUTTON macro to function to reduce flash usage esphome#10295 by @bdraco
- [number] Convert LOG_NUMBER macro to function to reduce flash usage esphome#10293 by @bdraco
- [light] Add support for querying effects by index esphome#10195 by @edwardtfn (new-feature)
- [CI] Base
too-biglabel on new additions only esphome#10307 by @jesserockz - [web_server] Reduce flash usage by consolidating defer calls in switch and lock handlers esphome#10297 by @bdraco
- [core] Eliminate heap allocation in teardown_components by using StaticVector esphome#10256 by @bdraco
- [libretiny] Optimize preferences is_changed() by replacing temporary vector with unique_ptr esphome#10272 by @bdraco
- [bluetooth_proxy] Mark BluetoothConnection and BluetoothProxy as final for compiler optimizations esphome#10280 by @bdraco
- [CI] Also require tests for
new-featuresesphome#10311 by @jesserockz - [homeassistant] Add compilation test for homeassistant.tag_scanned action esphome#10319 by @bdraco
- [core] Add idf-tidy env for esp32-c6 esphome#10270 by @jesserockz
- [opentherm] Rename c++ files for predictable doxygen generation esphome#10314 by @jesserockz
- [ld2420] Rename c++ files for predictable doxygen generation esphome#10315 by @jesserockz
- [nrf52] update toolchain to v0.17.4, support mac esphome#10391 by @tomaszduda23
- [nrf52] fix build in dashboard esphome#10323 by @tomaszduda23
- fix temperature config validation regex esphome#9575 by @ximex
- Update Pyth...
2025.9.0b4
- Add additional coverage for util and writer esphome#10683 by @bdraco
- [wizard] Fix KeyError when running wizard with empty OTA password esphome#10753 by @bdraco
- [core] Fix clean build files to properly clear PlatformIO cache esphome#10754 by @bdraco
2025.9.0b3
- Improve coverage for various core modules esphome#10663 by @bdraco
- Add additional test coverage ahead of Path conversion esphome#10700 by @bdraco
- [select] Use const references to avoid unnecessary vector copies esphome#10741 by @bdraco
- [dashboard] Fix archive handler to properly delete build folders using correct path esphome#10724 by @bdraco
- [ethernet] Conditionally compile PHY-specific code to reduce flash usage esphome#10747 by @bdraco
- [mqtt] fix publish payload length when payload contains null characters esphome#10744 by @jokujossai
- [ade7880] fix channel a voltage registry esphome#10750 by @jokujossai
2025.9.0b2
- Update webserver local assets to 20250910-110003 esphome#10668 by @esphomebot
- [adc] Fix
FILTER_SOURCE_FILESlocation esphome#10673 by @jesserockz - Openthread Fix Factory Reset esphome#9281 by @rwrozelle
- [core] Add millisecond precision to logging timestamps esphome#10677 by @bdraco
- Add comprehensive tests for choose_upload_log_host to prevent regressions esphome#10679 by @bdraco
- Add some more coverage for dashboard web_server esphome#10682 by @bdraco
- [tests] Add upload_program and show_logs test coverage to prevent regressions esphome#10684 by @bdraco
- Add additional dashboard and main tests esphome#10688 by @bdraco
- [core] fix upload to device via MQTT IP lookup (e.g. when mDNS is disable) esphome#10632 by @Links2004
- Bump aioesphomeapi from 40.1.0 to 40.2.0 esphome#10703 by @dependabot[bot]
- [ethernet] Fix permanent component failure from undocumented ESP_FAIL in IPv6 setup esphome#10708 by @bdraco
- [core] Optimize MAC address formatting to eliminate sprintf dependency esphome#10713 by @bdraco
- [api] Revert unneeded GetTime bidirectional support added in #9790 esphome#10702 by @bdraco
- [api] Optimize HelloResponse server_info to reduce memory usage esphome#10701 by @bdraco
- [scheduler] Fix timing accumulation in scheduler causing incorrect execution measurements esphome#10719 by @bdraco
- ina2xx should be total increasing for energy sensor esphome#10711 by @mikelawrence
- Bump aioesphomeapi from 40.2.0 to 40.2.1 esphome#10721 by @dependabot[bot]
- [md5] Optimize MD5::get_hex() to eliminate sprintf dependency esphome#10710 by @bdraco
- [wifi] Optimize WiFi MAC formatting to eliminate sprintf dependency esphome#10715 by @bdraco
- [esp32_ble] Optimize BLE hex formatting to eliminate sprintf dependency esphome#10714 by @bdraco