
Панель ESPHome рассчитана на работу с ноутбука или сервера Home Assistant, а кнопка «Install» предполагает проводное USB serial-подключение к машине разработчика. Из-за этого многие пользователи, у которых есть только Android, задаются вопросом: можно ли прошить ESP32 под ESPHome, не занимая чужой компьютер. В 2026 году ответ — да для большинства задач, нет для последнего шага, и варианты ниже покрывают все сценарии, с которыми вы, скорее всего, столкнётесь.
Список Android-приложений для плат ESP32 и ESP8266 в целом — в нашем обзоре семи лучших приложений ESPHome и микроконтроллеров для Android. Это руководство сфокусировано на одной задаче, которую companion-приложения обходят стороной: загрузке прошивки ESPHome на новую плату впервые.
Три рабочих способа с Android
Три метода прошивки, которые действительно работают без ноутбука, в порядке, в котором их стоит пробовать:
- Improv Wi-Fi через Bluetooth — плата с предустановленным Improv приходит готовой, телефон передаёт учётные данные Wi-Fi по BLE, панель ESPHome на сервере подхватывает устройство для OTA. Ни кабелей, ни терминала.
- Дополнение Home Assistant плюс OTA — у вас уже работает Home Assistant на mini PC или Raspberry Pi. Первая прошивка выполняется на любом ноутбуке или одноплатнике; все последующие — по воздуху с телефона.
- USB-OTG serial — Android-телефон с USB-C OTG, приложение serial-terminal и factory-бинарник ESPHome. Подходит для первой прошивки. Неудобно, но ноутбук не нужен.
Способ 1 — то, к чему отрасль пришла в 2026 году, и с него стоит начинать. Способ 2 — запасной для тех, чья плата не пришла с предустановленным Improv. Способ 3 — для крайних случаев: новые ESP32-C3 или ESP32-S3, которые нужно загрузить с полностью пустой флеш-памяти.
Способ 1: Improv Wi-Fi из приложения Home Assistant для Android
Пакет Google Play: io.homeassistant.companion.android — Home Assistant на Aptoide
Improv Wi-Fi — открытый протокол, который поддерживает команда Home Assistant / ESPHome. Предпрошитая плата — умные розетки Athom, устройства Shelly с переходом на ESPHome, датчики Everything Presence, большинство ESPHome-ready железа с 2025 года — объявляет себя по Bluetooth Low Energy. Телефон подключается, отправляет SSID и пароль Wi-Fi и передаёт управление панели ESPHome для OTA-установок прошивки с этого момента.
Что нужно
- ESP32 или ESP8266 с предустановленным Improv или плата, которую вы уже один раз прошили с включённым компонентом ESPHome Improv.
- Home Assistant в вашей сети с установленным дополнением ESPHome.
- Приложение Home Assistant для Android (ссылка выше), авторизованное в вашем экземпляре.
- Включённый Bluetooth на телефоне. Improv использует BLE, а не классическое сопряжение Bluetooth.
Шаги
- Подайте питание на ESP32. Платы с заводской прошивкой Improv объявляют себя в первые несколько минут каждой загрузки.
- Откройте приложение Home Assistant для Android. Оно автоматически слушает объявления Improv в том же сегменте сети и показывает уведомление с подписью Set up nearby device. Если оно не появилось, потяните вниз для обновления панели или проверьте, что сканирование Bluetooth включено в настройках Android.
- Нажмите на уведомление. Телефон подключается по BLE, запрашивает сеть Wi-Fi для подключения и отправляет учётные данные на плату. ESP мигает встроенным светодиодом, пока подключается к Wi-Fi.
- Панель ESPHome в Home Assistant показывает новое устройство в разделе Discovered. Оттуда примите его, выберите или напишите YAML-конфигурацию и нажмите Install > Wirelessly. Компиляция и OTA-отправка выполняются на сервере; телефон только наблюдает.
Единственное, что стоит перепроверить: ESP находится в той же подсети, что и экземпляр Home Assistant. Гостевые Wi-Fi и корпоративные SSID с изоляцией клиентов ломают OTA-передачу. Для первой прошивки подключите ESP к основной сети, затем перенесите его, если нужно.
Способ 2: OTA после одноразовой прошивки на сервере
Если плата не пришла с Improv, ноутбук для перепрошивки после первого раза всё равно не нужен. OTA-установщик панели ESPHome работает по Wi-Fi, как только на плате есть любая прошивка ESPHome — пусть даже минимальная.
Подвох в том, что первую прошивку нужно выполнить где-то. Три практичных варианта:
- Запустить ESPHome прямо на Raspberry Pi с подключённой платой. Подключитесь по SSH из Termius на Android к Pi, вставьте ESP32 в USB-порт Pi, выполните
esphome run initial.yamlиз оболочки. Pi становится вашей одноразовой станцией прошивки. - Использовать USB-порт Home Assistant Green / Yellow / OS. Home Assistant OS отдаёт подключённые USB serial-устройства дополнению ESPHome. Подключите ESP к коробке HA, откройте панель ESPHome в мобильном браузере, нажмите Install > Plug into the computer running ESPHome Dashboard. Дополнение прошивает через локальное USB serial-подключение без ноутбука.
- Одолжить ноутбук друга на десять минут только для первой прошивки, затем вернуть и выполнять все последующие обновления OTA из Android-приложения. Это прагматичный вариант по умолчанию.
Когда на плате есть любая сборка ESPHome, опция Install > Wirelessly в панели ESPHome становится доступной, и USB больше не понадобится — пока OTA не сломается и не придётся восстанавливать плату.
Способ 3: USB-OTG serial с Android
Ищите в Google Play: Serial USB Terminal, DroidTerm, USB Serial Console
Прямая serial-прошивка с Android — путь для крайних случаев. Android не запускает Python-инструментарий ESPHome нативно, поэтому этот метод не про запуск esphome-flasher на телефоне — он про загрузку готового factory-бинарника на ESP через serial-terminal-приложение.
Необходимое оборудование
- Телефон с поддержкой USB-C OTG host. Почти у каждого Android-телефона с 2020 года она есть; старым нужен кабель USB-C-to-USB-A OTG.
- Кабель USB-C-to-USB-C с передачей данных или USB-C-to-Micro-USB в зависимости от вашей dev-платы ESP.
- Сама плата ESP32 или ESP8266 со встроенным USB-to-serial мостом (CP2102, CH340, CP210x — у большинства dev-плат он есть).
Программное обеспечение
- Serial-terminal-приложение, которое работает с USB-CDC на чипе CP2102 / CH340. Serial USB Terminal от Kai Morich — самый надёжный бесплатный вариант в Google Play; DroidTerm — более лёгкая альтернатива.
- Готовый factory-файл
bin, скачанный с шага компиляции панели ESPHome на любом ноутбуке или из factory-загрузок ESPHome-ready от Athom / Shelly. - Termux плюс
esptool.pyдля тех, кто комфортно работает в оболочке.
Шаги вкратце
- Подключите телефон к ESP32 через OTG-кабель. Android должен предложить открыть terminal-приложение; предоставьте разрешение USB.
- Подключитесь к плате на скорости 115200 baud в терминале, чтобы проверить связь.
- Если используете Termux, установите Python и
esptool(pkg install python && pip install esptool) и выполнитеesptool.py --port /dev/bus/usb/... write_flash 0x0 firmware-factory.bin. Termux нужен USB serial-драйвер, привязанный к/dev/bus/usb, что на современном Android обычно работает после выдачи разрешения. - Если Termux не используете, некоторые Android GUI-приложения для прошивки (ищите в Google Play варианты ESP Flash Tool) могут отправить factory
.binнапрямую через мост CP2102 / CH340.
Надёжность зависит от телефона. Samsung и Pixel с актуальными версиями Android работают с CP2102 и CH340 из коробки; старые сборки Xiaomi и Realme иногда требуют дважды выдать разрешение OTG-USB. Весь метод заметно менее приятен, чем Improv Wi-Fi; используйте его как запасной крайний вариант.
Что Home Assistant на Android может и не может
Приложение Home Assistant Companion для Android — точка, к которой в итоге сводятся все три способа: панель ESPHome живёт внутри Home Assistant, поэтому как только устройство в сети, оно появляется в приложении для мониторинга и OTA-обновлений. Чего само приложение не умеет:
- Компилировать прошивку ESPHome локально на телефоне. Компилятор ESPHome работает на сервере, а не на телефоне. Телефон — пульт для удалённой компиляции.
- Отправлять USB-serial прошивки без сервера. У Companion-приложения нет прямой функции USB-OTG прошивки. Если вы хотите, чтобы телефон был компилятором, вы выходите за рамки поддерживаемого процесса.
- Выполнять Improv-over-Serial. Вариант Improv Wi-Fi работает с Android; вариант Improv Serial требует проводного подключения к хосту панели ESPHome.
Приложение отлично справляется с тем, для чего предназначено: BLE-провижининг Improv, просмотр данных с датчиков, запуск автоматизаций, уведомления от ваших ESP32 после выхода в сеть. Оно заменяет ноутбук для повседневной работы. Оно не заменяет ноутбук для первой загрузки полностью пустой платы, если плата не поставляется с готовым Improv.
Типичные ошибки при прошивке ESPHome с Android
- Плата на Wi-Fi с captive portal. Improv отправляет учётные данные, но сети Wi-Fi, требующие входа через браузер (гостевые сети, Wi-Fi кафе), не подключат ESP32 без участия пользователя. Перенесите плату на обычный SSID для провижининга.
- Home Assistant в другой VLAN. ESPHome OTA требует mDNS-обнаружения в том же broadcast-домене. Если ESP в IoT VLAN, а Home Assistant в основной LAN, включите mDNS reflection на роутере или провизируйте ESP в той же VLAN, что и HA, и перенесите после.
- Нет разрешения на BLE-сканирование. В Android 12+ Bluetooth разделён на Nearby devices (scan) и Bluetooth Connect. Improv нужно разрешение на сканирование — выдайте оба приложению Home Assistant.
- OTG-кабель только для зарядки. Дешёвые USB-C-to-USB-C кабели от зарядных блоков часто без пар данных. Симптом: телефон видит, что ESP потребляет питание, но serial-устройство не появляется. Используйте кабель с передачей данных.
- Плата неправильно удерживается в режиме загрузки. ESP32-C3 и ESP32-S3 иногда требуют удерживать кнопку
BOOTпри включении перед serial-прошивкой. OTG-кабели, которые также питают плату, усложняют это. Используйте Y-кабель или отдельный источник питания, если столкнулись с этим.
Где подходит каждый способ
| Способ | Первая прошивка пустой платы | Перепрошивка после первой настройки | Нужен ноутбук |
|---|---|---|---|
| Improv Wi-Fi из приложения HA для Android | Только если плата поставляется с Improv | Да (по Wi-Fi) | Нет |
| ESPHome OTA после первой прошивки на сервере | Нет (нужен сервер или ноутбук друга один раз) | Да (по Wi-Fi) | Один раз |
| USB-OTG serial с Android | Да | Да | Нет |
Порядок попыток тот же: сначала Improv, затем OTA после bootstrap на сервере, USB-OTG serial — только когда первые два недоступны.
FAQ
Можно ли запустить полную панель ESPHome на Android-телефоне?
Нативно — нет. Панель ESPHome — это Python веб-приложение, которое работает на Home Assistant OS, в Docker-контейнере или на Linux-установке. Доступ через мобильный браузер и управление с телефона возможны, но сам инструментарий компиляции выполняется на сервере.
Нужен ли Home Assistant для ESPHome с Android?
Провижининг Improv Wi-Fi и OTA-прошивка предполагают, что панель ESPHome доступна для ESP. Обычно она живёт внутри Home Assistant. Можно запустить Docker-образ ESPHome без Home Assistant, но Android-часть процесса рассчитана на интеграцию Improv в приложении Home Assistant Companion.
Что если у моей платы ESP32 нет USB-to-serial моста?
Некоторые новые модули ESP32-S3 и ESP32-C3 выводят USB напрямую без моста CP2102 или CH340. Они иногда определяются как нативное USB CDC-устройство, с которым terminal-приложения Android могут работать, но переключение режимов зависит от производителя dev-платы. Improv Wi-Fi или первая прошивка на сервере полностью обходят эту проблему.
Безопасен ли Improv Wi-Fi?
Improv шифрует учётные данные Wi-Fi при передаче по BLE с использованием ключа сессии. Он не аутентифицирует ESP — теоретически злоумышленник рядом может выдать себя за устройство с объявлением Improv. На практике это важно только в момент первого провижининга. После этого ESP в вашей Wi-Fi и общается с Home Assistant по LAN.
Можно ли прошить ESPHome с iPhone так же?
Improv Wi-Fi работает с iOS через Web Bluetooth в Safari, и приложение Home Assistant для iOS поддерживает провижининг Improv. USB-OTG serial-прошивка на iOS сильно ограничена: адаптеры Lightning-to-USB и USB-C-to-USB от Apple не открывают CDC serial-слой сторонним приложениям так, как это делает Android.