ESPHome 2026.9.1: исправления OTA, ESP32-P4 и безопасного режима
ESPHome 2026.9.1 — релиз с точечными исправлениями: ключ шифрования OTA сохраняется без API-сервера, ESP32-P4 собирается без Wi-Fi/ESP-NOW/BLE, на ESP32-C2 отключено nano-форматирование printf, отчёт о предыдущем сбое выводится до чтения логгером, а микшер не теряет запрос на запуск при остановке задачи.

Первоисточник: github.com
Что вошло в релиз ESPHome 2026.9.1
ESPHome 2026.9.1 — набор точечных исправлений, а не крупное обновление с новыми возможностями. Патч затрагивает OTA и безопасный режим, сборку под ESP32-P4 и ESP32-C2, диагностику сбоев, микшер, драйверы дисплеев, Ethernet на SPI-чипах, nRF52 и консоль idf.py в Windows. Ниже — разбор по пунктам с номерами pull request.
| Область | Что изменилось | PR |
|---|---|---|
| OTA / безопасный режим | Ключ шифрования OTA сохраняется без API-сервера, чтобы работали загрузки в safe mode | #19349 |
| web_server / OTA | Предупреждение о plaintext не показывается, если web_server ota отключён | #19348 |
| ESP32-P4 | Исправлена сборка без Wi-Fi, ESP-NOW и BLE | #19374 |
| ESP32-C2 | Отключено newlib nano форматирование printf | #19418 |
| Диагностика | Отчёт о предыдущем сбое печатается до того, как его прочитает логгер | #19351 |
| Микшер | Запрос на запуск не отбрасывается при завершении остановленной задачи | #19368 |
| Дисплеи | MIPI DSI: выбор опорной частоты DPHY PLL; MIPI SPI: исправление последовательности dc/cs для spi_16; LVGL: учёт build_flags | #18984, #19745, #19743 |
| Ethernet | Принятые кадры переносятся в PSRAM на SPI-чипах | #19377 |
| nRF52 | Таймаут WDT 30 секунд для загрузчика Adafruit | #19596 |
| web_server | Маскируется значение парольной text-сущности, а не только её состояние | #19385 |
| espidf | Консоль Windows переключается в UTF-8 на время работы idf.py | #19352 |
OTA и безопасный режим: ключ шифрования без API-сервера
PR #19349 исправляет потерю ключа шифрования OTA, если в конфигурации нет API-сервера. Из-за этого могли не проходить загрузки в безопасном режиме (safe mode). Теперь ключ сохраняется и в такой конфигурации, поэтому обновление по OTA в safe mode остаётся рабочим.
Предупреждение web_server ota и шифрование
PR #19348 убирает предупреждение о передаче данных в открытом виде (plaintext), когда OTA через web_server отключён. Раньше предупреждение появлялось даже там, где функционал не активен, что вводило в заблуждение при чтении логов сборки.
ESP32-P4: сборка без Wi-Fi, ESP-NOW и BLE
PR #19374 исправляет сборку под ESP32-P4 в конфигурациях без Wi-Fi, ESP-NOW и BLE. Это важно для проектов, где беспроводные стеки не нужны и сознательно исключены из сборки.
ESP32-C2: отключение newlib nano printf
В PR #19418 на ESP32-C2 отключено форматирование printf из newlib nano. Это изменение уровня сборки, влияющее на формирование строк вывода на этом чипе.
Отчёт о предыдущем сбое до чтения логгером
PR #19351 меняет порядок вывода: отчёт о предыдущем сбое (crash report) на ESP32 и RP2 печатается до того, как его прочитает логгер. Так информация о падении не теряется и остаётся доступной для диагностики.
Микшер: запрос на запуск при остановке задачи
PR #19368 исправляет микшер: запрос на запуск не отбрасывается в момент, когда завершается остановленная задача. Это устраняет гонку, из-за которой запуск мог «потеряться».
Дисплеи: MIPI DSI, MIPI SPI и LVGL
- MIPI DSI (#18984): выбор опорной частоты DPHY PLL передан IDF — компонент сам подбирает подходящий источник.
- MIPI SPI (#19745): исправлен регресс в последовательности dc/cs для spi_16.
- LVGL (#19743): при генерации lv_conf.h теперь учитываются esphome build_flags.
Ethernet на SPI-чипах и PSRAM
PR #19377 переносит принятые кадры в PSRAM на SPI-чипах Ethernet. Это снижает нагрузку на внутреннюю память и относится к устройствам с внешней PSRAM.
nRF52: таймаут WDT для загрузчика Adafruit
PR #19596 устанавливает таймаут сторожевого таймера (WDT) в 30 секунд для загрузчика Adafruit на nRF52. Это согласует поведение watchdog с особенностями данного загрузчика.
web_server: маскировка значения пароля
PR #19385 исправляет web_server: теперь маскируется не только состояние парольной text-сущности, но и её значение. Это закрывает утечку пароля в интерфейсе.
espidf: UTF-8 в консоли Windows
PR #19352 переключает консоль Windows в UTF-8 на время выполнения idf.py. Это устраняет проблемы с кодировкой при сборке через ESP-IDF на Windows.
Как обновиться до 2026.9.1
- Обновите ESPHome до версии 2026.9.1 штатным способом (через вашу систему управления пакетами или интерфейс).
- Пересоберите прошивку и загрузите её на устройство — часть исправлений относится к этапу сборки.
- Проверьте конфигурации без api: и с OTA, чтобы убедиться, что загрузка в безопасном режиме работает.
- Для проектов на ESP32-P4 без Wi-Fi/ESP-NOW/BLE и для ESP32-C2 пересоберите прошивку и проверьте логи.
Это мажорное обновление с новыми функциями?
Нет. ESPHome 2026.9.1 — набор точечных исправлений: OTA и безопасный режим, сборка ESP32-P4 и ESP32-C2, диагностика сбоев, микшер, дисплеи, Ethernet, nRF52, web_server и консоль idf.py.
Почему OTA в безопасном режиме мог не работать?
Ключ шифрования OTA терялся, если в конфигурации не было API-сервера. PR #19349 сохраняет ключ и в такой конфигурации, поэтому загрузки в safe mode снова проходят.
Нужно ли что-то менять в конфигурации для ESP32-P4 без Wi-Fi/BLE?
Отдельных действий не требуется: PR #19374 исправляет саму сборку в конфигурациях без Wi-Fi, ESP-NOW и BLE. Достаточно обновиться и пересобрать прошивку.
Что изменилось в web_server для паролей?
PR #19385 маскирует значение парольной text-сущности, а не только её состояние, что закрывает утечку пароля в веб-интерфейсе.