Как прошить ESP8266 по USB и Wi-Fi. Какие инструменты нужны для прошивки ESP8266. Как настроить ESP8266 для работы с Arduino IDE и ESPHome. Какие возможности дает прошивка ESP8266.
Что такое ESP8266 и зачем его прошивать
ESP8266 — это популярный Wi-Fi модуль, который часто используется в проектах умного дома и интернета вещей. Прошивка ESP8266 позволяет запрограммировать его для выполнения нужных задач. Но почему так важно правильно прошить этот модуль?
Прошивка ESP8266 дает следующие возможности:
- Подключение к Wi-Fi сети и обмен данными через интернет
- Управление подключенными устройствами и датчиками
- Работа в качестве веб-сервера
- Обновление прошивки «по воздуху» (OTA)
- Интеграция с системами умного дома
Без правильной прошивки ESP8266 будет просто «кирпичом» без какой-либо функциональности. Поэтому важно разобраться, как грамотно прошить этот модуль.
Способы прошивки ESP8266
Существует несколько основных способов прошивки ESP8266:

1. Прошивка через USB-UART адаптер
Это самый простой и надежный способ для первоначальной прошивки. Потребуется:
- USB-UART адаптер (например, на чипе CH340G или CP2102)
- Соединительные провода
- Программатор (например, esptool.py)
Процесс прошивки:
- Подключить ESP8266 к USB-UART адаптеру
- Установить драйверы для адаптера
- Запустить программатор и загрузить прошивку
2. Прошивка по Wi-Fi (OTA)
Позволяет обновлять прошивку «по воздуху» без физического подключения. Для этого:
- ESP8266 должен быть предварительно прошит прошивкой с поддержкой OTA
- Модуль должен быть подключен к той же Wi-Fi сети, что и устройство для прошивки
- Используется специальное ПО для OTA-прошивки (например, ESP8266 Sketch Data Upload)
3. Прошивка через Arduino IDE
Удобный способ для разработчиков Arduino. Нужно:
- Установить поддержку ESP8266 в Arduino IDE
- Подключить ESP8266 через USB-UART адаптер
- Выбрать нужную плату ESP8266 в Arduino IDE
- Загрузить скетч как для обычной Arduino
Подготовка к прошивке ESP8266
Перед прошивкой ESP8266 необходимо подготовить все необходимое:

Оборудование:
- Сам модуль ESP8266 (например, ESP-01, ESP-12E, NodeMCU и др.)
- USB-UART адаптер для подключения к компьютеру
- Соединительные провода
- Источник питания 3.3В (модуль не работает от 5В!)
Программное обеспечение:
- Драйверы для USB-UART адаптера
- Программатор (например, esptool.py или ESP8266Flasher)
- Файл прошивки в формате .bin
Также стоит заранее ознакомиться с распиновкой конкретной модели ESP8266, чтобы правильно подключить все провода.
Пошаговая инструкция по прошивке ESP8266 через USB
Рассмотрим процесс прошивки ESP8266 на примере популярного модуля ESP-01:
- Подключите ESP-01 к USB-UART адаптеру по схеме:
- VCC — 3.3V
- GND — GND
- TX — RX адаптера
- RX — TX адаптера
- GPIO0 — GND (для входа в режим прошивки)
- Установите драйверы для USB-UART адаптера
- Скачайте и установите программатор (например, ESP8266Flasher)
- Скачайте нужный файл прошивки (.bin)
- Запустите программатор и выберите COM-порт адаптера
- Загрузите файл прошивки и укажите адрес 0x00000
- Нажмите кнопку «Flash» для начала прошивки
- После успешной прошивки отключите GPIO0 от GND и перезагрузите модуль
Теперь ESP8266 прошит и готов к работе с новой прошивкой.

Прошивка ESP8266 по Wi-Fi (OTA)
Обновление прошивки «по воздуху» (OTA) очень удобно, когда ESP8266 уже установлен в проект. Как это работает?
Требования для OTA-прошивки:
- ESP8266 должен быть предварительно прошит прошивкой с поддержкой OTA
- Модуль должен быть подключен к Wi-Fi сети
- Компьютер для прошивки должен быть в той же сети
Процесс OTA-прошивки:
- Установите Arduino IDE с поддержкой ESP8266
- Откройте скетч с новой прошивкой
- Выберите пункт «Инструменты» — «Порт» — «Network Ports»
- Выберите IP-адрес вашего ESP8266 в сети
- Нажмите «Загрузить» для отправки новой прошивки
ESP8266 автоматически перезагрузится с новой прошивкой после успешного обновления.
Настройка ESP8266 для работы с Arduino IDE
Arduino IDE — популярная среда разработки, которая поддерживает программирование ESP8266. Как настроить Arduino IDE для работы с этим модулем?
Шаги по настройке:
- Откройте Arduino IDE
- Перейдите в «Файл» — «Настройки»
- В поле «Дополнительные ссылки Менеджера плат» вставьте:
- Перейдите в «Инструменты» — «Плата» — «Менеджер плат»
- Найдите и установите пакет «esp8266 by ESP8266 Community»
- Выберите нужную модель ESP8266 в меню «Инструменты» — «Плата»
Теперь вы можете программировать ESP8266 прямо из Arduino IDE как обычную Arduino!

Использование ESPHome для прошивки ESP8266
ESPHome — это система для удобного создания прошивок для ESP8266 и ESP32. Она особенно популярна среди пользователей Home Assistant. Как использовать ESPHome для прошивки ESP8266?
Преимущества ESPHome:
- Простая конфигурация через YAML-файлы
- Автоматическая интеграция с Home Assistant
- Поддержка OTA-обновлений
- Широкий выбор готовых компонентов
Процесс прошивки через ESPHome:
- Установите ESPHome (например, через Home Assistant)
- Создайте новое устройство в интерфейсе ESPHome
- Настройте конфигурацию в YAML-файле
- Скомпилируйте прошивку
- Загрузите прошивку на ESP8266 через USB или OTA
После этого ваш ESP8266 будет работать под управлением ESPHome и легко интегрируется в систему умного дома.
Типичные проблемы при прошивке ESP8266 и их решение
При прошивке ESP8266 иногда возникают проблемы. Рассмотрим самые распространенные из них и способы их решения:
1. Ошибка подключения к COM-порту
Возможные причины и решения:
- Не установлены драйверы USB-UART адаптера — установите их
- Неправильно выбран COM-порт — проверьте в диспетчере устройств
- Поврежден кабель — попробуйте другой кабель
2. Ошибка «ESP not responding»
Что делать:

- Проверьте правильность подключения GPIO0 к GND
- Попробуйте нажать кнопку RESET на модуле
- Убедитесь, что питание 3.3В стабильно
3. Прошивка загружается, но ESP8266 не работает
Возможные решения:
- Проверьте, что загружена правильная прошивка для вашей модели
- Убедитесь, что все контакты правильно подключены
- Попробуйте сбросить настройки, удерживая GPIO0 при включении
Если проблема сохраняется, попробуйте прошить заведомо рабочую прошивку или обратитесь за помощью на форумы.
Прошивка esp8266 по wifi c android телефона.
EvdokimovAG84
✩✩✩✩✩✩✩
- #1
Может кто сталкивался с программой которой можно шить esp8266 по wifi телефоном Андроид. В маркете вроде есть программы но непонятно какой принцип работы.
Сотнег
★★★★★★★
- #2
@EvdokimovAG84,
чтобы плату можно было прошить по wifi,
в плате уже должна быть прошивка с этой функцией.
То есть в первый раз всё равно нужно шить через порт по проводу.
А потом хоть с телефона, хоть через интернет — от возможностей прошивки зависит.
EvdokimovAG84
✩✩✩✩✩✩✩
- #3
@Сотнег,
А можно подробнее? Или есть где нибудь инфа чтобы ознакомиться!
Сотнег
★★★★★★★
- #4
EvdokimovAG84
✩✩✩✩✩✩✩
- #5
А код для ота прошивки всегда должен присутствовать в скетче, чтобы в очередной раз прошивка была загружена и возможность ОТА осталась?!
EvdokimovAG84
✩✩✩✩✩✩✩
- #7
@Сотнег,
Спасибо, Уважаемый!
Я благодаря тебе разобрался и уже прошил с телефона!
Lumenjer
★★★✩✩✩✩
- #8
@EvdokimovAG84, Есть фреймворк EmbUI, который позволяет оперативно урегулировать вопросы касательно менеджмента WiFi сетей, синхронизации времени с NTP, и прошивкой через браузер.
EvdokimovAG84
✩✩✩✩✩✩✩
- #9
@Lumenjer,
Отличная информация! Спасибо!
Знакомство с ESPHome. Пишем первую программу. — Home Server
Здравия всем! Что же, пришло время познакомится с ESPHome. В этой статье я расскажу как настроить ESPHome после установки, как создать новую прошивку и залить её в устройство как по USB, так и по воздуху. Как подключить наше устройство к Home Assistant. Что же начнем!
Введение
Свои первые устройства для автоматизации я собирал на контроллерах Arduino Uno и Arduino Mega теперь уже в далеких 2011-2013 годах. С тех времен утекло много воды. Когда появился теперь уже народный чудо контроллер ESP8266, мир поменялся. Он сразу на борту имел WiFi и Flash память на 512кб — 4мб. И практически сразу был портирован на Arduino SDK.
Главная прелесть ESP8266, в том, что его один раз нужно прошить прошивкой через USB подключение к компьютеру, а последующие изменения можно вносить по воздуху с так называемым OTA режимом.
Первые прошивки для ESP8266 я писал на Arduino SDK. Но после перехода на Home Assistant, я перешел на ESPHome, который разрабатывается специально для подключения к Home Assistant, через API. По этому добавление любого датчика и исполняющего устройства в Home Assistant стало очень просто. Я практически не использую MQTT брокера. Который раньше был узким местом в системе, если MQTT брокер падал вместе с сервером умного дома, происходил коллапс. И приходилось делать прошивки, которые продолжали работать без MQTT брокера.
ESPHome это система для создания прошивок (Firmware) с помощью конфигурационных файлов, написанных на языке Yaml. После освоения его в Home Assistant, написание прошивок на ESPHome дело очень легкое. Для конфигурирования, компиляции и управления ESPHome использует понятный Web интерфейс. Давайте же разберемся с ним
Знакомство с интерфейсом ESPHome
После установки ESPHome, описанной в этой статье, откроем наш web интерфейс.
Как видим из приведенного изображения, вначале у нас список устройств пуст. Но есть 2 функциональные кнопки: NEW DEVICE и SECRET.
Файл
secretsЩелкнем сверху на кнопку SECRET
Откроется редактор файла secrets. yaml. Этот файл, аналогичен файлу secrets.yaml в Home Assistant. Он нужен для хранения персональной информации, к примеру, название WiFI сети и паролем доступа к ней.
Заполним поля wifi_ssid и wifi_password своими данными. И нажмем кнопку SAVE, чтобы применить настройки.
Создание первого устройства
Щелкнем по кнопке NEW DEVICE, откроется мастер создания нового устройства.
Мастер приветствие, он говорит, что первый раз нужно залить прошивку, подключив устройство через USB к компьютеру.Выбираем тип, в моем случае это ESP8266Выбираем имя устройства, по опыту, лучше без подчеркивания _ и тире —Мастер сразу предложить скомпилировать и залить прошивку, но мы пропустим этот пункт, нажмем кнопку SkipРедактор конфигурации
У нас появится первое устройство. Откроем редактор конфигурации, нажав кнопку EDIT
Откроется редактор нашего устройства в файле конфигурации esptest. yaml
Как видно из изображения, используется язык разметки YAML. В редакторе встроена проверка синтаксиса. И если мы что то не правильно ввели, редактор нам сразу же об этом скажет красным квадратом в правом верхнем углу. Если на него навести курсор мыши, всплывет подсказка в какой строке у нас ошибка.
Не забывайте сохранять изменения перед выходом, автоматически они не сохраняются.
Первая программа на ESPHome
Тип устройства
Под общим названием ESP8266 скрывается обширный набор устройств, отличающихся количеством памяти, тактовой частотой процессора и количеством портов, доступных пользователю.
ESPHome работает на основе фраймворка PlatformIO, соответственно какие платы поддерживаются размещены на сайте. Посмотрев таблицу, понимаем, что большинство плат на чипе ESP-12E и ESP-12F идут под общим названием nodemcuv2.
Я в своих тестах использую плату Nodemcu V3 на чипе ESP-12F
Откроем снова редактор нашего нового устройства и отредактируем нашу конфигурацию и изменим плату на nodemcuv2
esp8266: board: nodemcuv2
Если в WiFi сети, где будет расположено устройство работает DHCP Server, то можно компилировать прошивку.
Компиляция прошивки
Скомпилируем прошивку, нажав кнопку Install
Откроется мастер создания прошивок
Нажмем Manual download Нажмем Legacy formatОткроется окно в котором будет вестись лог компиляции прошивки. После завершения компиляции появится кнопка Download, и файл сам начнет скачиваться.
Заливаем первую прошивку через USB
Осталось залить прошивку в наше устройство. Подключим нашу плату по USB к компьютеру. Для прошивки будем использовать утилиту ESPHome Flasher. Скачаем её с гитхаба и запустим.
С недавних пор Windows 10 ужесточило запуск программ. По этому может вылезти такое предупреждение.
Нажмем ПодробнееНажмем Выполнить в любом случаеОткроется главное окно программы
Выберим нужный Serial Port, на котором весит наше устройство. Нажмем кнопку Browse и выберим нашу прошивку. Осталось нажать кнопку Flash ESP. Начнется проверка и заливка прошивки.
После удачной заливки, наше устройство перезагрузится и выведет информацию о текущем подключении
Можно закрывать приложение. Дальнейшая настройка будет происходить на web интерфейсе ESPHome.
Настройка нового устройства
После тога, как мы залили прошивку в наше устройство и оно перезагрузилось, поменялся интерфейс ESPHome
Как видим, наше устройство поменяло статус с OFFLINE на ONLINE. Кнопка LOGS стала информативной, при ее нажатии происходит коннект к устройству и забирается последний лог
На каждой ESP12 есть распаянный светодиод на 2 порту. Давайте его сделаем аналогом лампы.
esphome: name: esptest esp8266: board: nodemcuv2 # Enable logging logger: # Enable Home Assistant API api: encryption: key: "ONenF3FmMEBZD0V5u15E+wp4rNoN3RfqZ3cPJtl10D4=" ota: password: "1bcebac7181111892d02a04ea4867d3b" wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Esptest Fallback Hotspot" password: "p1Tkhye6thDA" captive_portal: output: - platform: gpio id: led pin: GPIO02 inverted: true light: - platform: binary id: in_led output: led name: Test Lamp
Сохраним настройки и скомпилируем прошивку. Но в этот раз прошьем по воздуху. Для этого нажмем кнопку Wirelessly
Сразу же откроется окно компиляции и загрузки прошивки по воздуху
Дождемся загрузки новой прошивки
Видим, что наш новый светильник появился в логе.
Интеграция в Home Assistant
Подготовка
Для добавления устройства на ESPHome, нам нужны 2 вещи. Это IP адрес устройства и ключ шифрования, указанный в конфигурации. Чтобы узнать IP, если он не был указан в конфигурации, откроем окно лога устройства. Находим поле IP Address и записываем его
Теперь идем в редактор конфигурации и ищем поле key: в подразделе encryption: раздела api: и записываем наш ключ шифрования
Подключение интеграции
Как я раньше говорил, прошивки на основе ESPHome легко интегрируются в Home Assistant. Откроем в web интерфейсе Home Assistant Настройки -> Устройства и службы
Нажимаем кнопку ДОБАВИТЬ ИНТЕГРАЦИЮ
Откроется мастер добавления интеграции
Набираем в поиске первые буквы ESPHome и выбираем нашу интеграциюПишем наш IP и нажимаем подтвердитьВводим наш ключ шифрования Устройство подключеноУправление устройством
На этом интеграция устройства на ESPHome закончена. Данные теперь прилетают по API в наш Home Assistant. Перейдем на вкладку Устройства и выберем наше устройство esptest
Как видим, наша лампа появилась в интерфейсе и ей можно сразу же и управлять и настраивать.
Заключение
В этой статье я рассказал как настроить ESPHome после установки, как создать новую прошивку и залить её в устройство как по USB, так и по воздуху. Как подключить наше устройство к Home Assistant. Как понятно из статьи делать это очень легко и просто. В дальнейшем я покажу различные свои устройства, которые я использую в повседневной работе.
АТ | Espressif Systems
- Свернуть все
- Развернуть все
Название | Кузов | Платформа | Версия | Дата выхода | Скачать | |
---|---|---|---|---|---|---|
ESP8266 NonOS AT Bin | ESP8266 NonOS AT Bin больше не будет обновляться. | Ящик | Устарело | 2021.12.28 | ||
ESP32-C3 В корзину | Ящик | Последний | 2021.08.12 | |||
ESP32 В корзине | Ячейка | Последний | 2021.![]() | |||
ESP32-S2 В корзине | ESP32-S2 AT Bin больше не будет обновляться. Мы рекомендуем использовать ESP32-C3 и ESP32-C3 AT Bin для новых проектов. | Ящик | Последний | 2020.08.21 | ||
ESP8266 IDF AT Bin | Ящик | Последний | 2020.07.29 | |||
ESP8266 Интернет вещей Qcloud AT | На основе AT-команды ESP8266 QCloud. | Ящик | Последний | 2019.08.19 |
ESP8266 с прошивкой AT — документация Blynk
Эта документация предназначена для УСТАРЕВШЕЙ версии платформы Blynk, которая больше не поддерживается и будет закрыта.
Вы можете подписаться на текущую версию платформы Blynk здесь.
Новые мобильные приложения можно скачать в App Store и Google Play.
Фактическая документация Blynk находится здесь.
Модуль Wi-Fi ESP8266 (или экран) с прошивкой AT по умолчанию можно использовать для подключения вашего оборудования к Blynk.
Экраны ESP8266
Они бывают разных форм и цветов, но в основном вы можете использовать простой модуль ESP01, например:
Если у вас есть Arduino Shield с ESP8266 (например, doit. com ESP13 Shield), вам не нужно делать эту проводку — это уже сделано за вас!
☝️ Этот тип подключения очень сложен для начала. В качестве НАМНОГО более простого варианта мы рекомендуем начать с
ESP8266 в качестве отдельной платформы
(Blynk может работать непосредственно на чипе ESP8266).
☝️ Этот метод не работает с
этой платой
Arduino UNO WIFI (по крайней мере, пока Arduino не предоставит соответствующие библиотеки TCP).
В первую очередь рекомендуется приобрести преобразователь USB-UART TTL, способный выдавать 1А при 3,3В. Это поможет вам во многих разных случаях, не только для ESP8266. Для ESP8266 он понадобится для первоначальной настройки и тестирования, обновления прошивки AT и т. д.
☝️ Если вы запустите автономный пример ESP8266 на своем модуле ESP8266, он перезапишет прошивку AT модуля, поэтому он не будет работать как модем. Убедитесь, что ваш ESP прошит прошивкой AT (вы можете найти стабильную прошивку здесь, прошить ее до 0x00000, например, используя это руководство).
Для этого подключения Blynk использует библиотеку ESP8266_Lib.h, которую вы получаете автоматически при установке библиотек Blynk.
Начало работы
1.
Убедитесь, что ваш модуль ESP8266 правильно запитан и включен
2.
Ensure a stable serial connection to ESP8266
3.
Use your USB-UART TTL converter, or this sketch to access AT command console
4.
Update your ESP до последней прошивки, если необходимо (рекомендуется AT v1.1.0.0)
5.
Запомните, какие программные серийные контакты (или аппаратные серийные номера) и скорость передачи данных работают для вашего модуля.
6.
Используйте пример Blynk -> Boards_WiFi -> ESP8266_Shield с той же последовательной конфигурацией.
7.
В приложении Blynk выберите тип платы вашей основной платы, к которой подключен ESP8266 (Uno, Mega и т. д.)
Серийный номер программного обеспечения для переключения ESP8266 на скорость 9600 бод. Отправьте эту AT-команду на ESP8266:
AT+UART_DEF=9600,8,1,0,0
или, для некоторых версий:
AT+CIOBAUD=9600
Должен ответить OK
.
Устранение неполадок
Не прочитать комментарии к эскизу и внести в него соответствующие изменения для конкретного оборудования.
Питание ESP8266 от контакта 3v3 на
Arduino UNO/Nano/Mega
, скорее всего, не сработает.Используйте отдельный источник 3,3 В, который может обеспечить ток до 1 А, например, AMS1117.
Скорость передачи ESP8266 должна совпадать со скоростью передачи данных Arduino Serial.
Или контакты TX/RX могут быть перепутаны местами по ошибке.
Убедитесь, что Arduino может обмениваться данными с ESP8266 с помощью AT-команд.
Использование
Программный серийный номер
менее стабилен, чемАппаратный серийный номер
.Попробуйте использовать платы с выделенным аппаратным последовательным портом, например
Leonardo, Mega, Teensy
и т. д.Слабый сигнал WiFi.
Плохая конструкция цепи.
Если вы постоянно получаете «ESP не отвечает» — наберитесь терпения и попробуйте поискать доступные решения на форуме нашего сообщества.
Некоторые полезные рекомендации по написанию скетчей Blynk можно найти здесь: http://community.blynk.cc/t/solved-disconnect-cmd-skiped-etc-issues-my-advice/5362
Blynk был протестирован с следующие версии прошивки AT:
Версия AT: 0.22.0.0 (20 марта 2015 г., 10:04:26)
Версия SDK: 1.0.0
Версия AT: 0.23.0.0 (24 апреля 2015 г., 21:11:01)
Версия SDK: 1.0.1
Версия AT: 0.25.0.0 (12 июня 2015 г., 20:26:28) )
Версия SDK: 1.1.2
Версия AT: 0.40.0.0 (8 августа 2015 г., 14:45:58)
Версия SDK: 1.3.0
Ai-Thinker Technology Co., Ltd.
Сборка: 1.3.0.2 11 сентября 2015 г.