Skip to content
Get started

ESPHome 2026.9.0 - September 2026

NOTE

This is a beta release. Details on this page may change before the stable release is published.

Read the ESPHome 2026.9.0 release notes on the blog for the release overview, feature highlights, upgrade checklist, and breaking changes.

  • [noise] Add shared noise component and move api noise primitives esphome#18490 by @bdraco (new-component)
  • [sfa40] Add SFA40 sensor support esphome#17815 by @NoQuarrel (new-component) (new-feature) (new-platform)
  • [mk2pvrouter] Add Mk2PVRouter component with sensor support esphome#8487 by @FredM67 (new-component) (new-feature) (new-platform)
  • [d01] add D01 pm2.5 sensor support esphome#17788 by @ch604 (new-component) (new-feature) (new-platform)
  • [ds1603l] New sensor DS1603L V1.0 esphome#13133 by @JakeLC15 (new-component) (new-feature) (new-platform)
  • [snapshot][SDL] Display headless mode and snapshots esphome#17917 by @clydebarrow (new-component) (new-feature) (new-platform)
  • [esp32_hosted] Require ESP-IDF 5.3 or newer esphome#18417 by @bdraco (breaking-change)
  • [runtime_image] keep decoder allocated esphome#18488 by @guillempages (breaking-change)
  • [modbus_controller] Rename custom_command to custom_pdu; reject address 0; retire skip_updates esphome#18652 by @exciton (breaking-change)
  • [preferences] modify IntervalSyncer to be a PollingComponent esphome#14370 by @rwrozelle (breaking-change)
  • [api] Treat homeassistant.event variables as lambdas esphome#18759 by @bdraco (breaking-change)
  • [esp32] Apply custom eFuse MAC as base MAC for all interfaces esphome#18452 by @kbx81 (breaking-change)
  • [modbus_controller] Writer entities as their own hub device; heap-free esphome#18082 by @exciton (new-feature) (breaking-change)
  • [api] Deprecate media player supports_pause field esphome#18801 by @bdraco (breaking-change)
  • [modbus_controller] Apply the write offset byte-accurately on switch and output esphome#18787 by @exciton (breaking-change)
  • [modbus_controller] Switch write_lambda return value is the wire value only esphome#18788 by @exciton (breaking-change)
  • [modbus_controller] Poll through PollingDevice; deprecate ModbusCommandItem esphome#18071 by @exciton (breaking-change)
  • [modbus_controller] Replace register_count/force_new_range with reuse_previous_range esphome#18085 by @exciton (new-feature) (breaking-change)
  • [api] Add description and example metadata to user-defined actions esphome#18881 by @bharvey88 (new-feature) (breaking-change)