Blink an external led with ESP8266
Now that your ESP8266 is fully installed and working on your laptop, we can start to add an external led and control it via a program.
Using GPIOs of the ESP8266
Before using an available GPIO (General Purpose Input/Output) from our ESP8266 board, let’s have a look at them:
- Vin to supply power to the ESP8266 (as a standalone device, without your laptop)
- GND Ground pins all connected together and serve as a 0V reference
- ADC Input for the built-in analog to digital convert (8bits)
- GPIOXX are general purpose digital inputs and outputs pins (some of them can be modulated for outputs)
LED (light-Emitting Diode)
A LED is an electronic component which glows when a voltage is applied.

Be careful the led has to be connected in the correct direction otherwise it will be damaged.
The correct direction is:
- short leg (-) connected to GND
- long leg (+) connected to the power supply but not directly. A resistor must be introduced (in series) in order to limit the maximum current crossing the junction (inside the LED).
In our example, a 220 Ohm will be used (I = U / R = 3.3 / 220 = 0.015 A = 15 mA).
- First disconnect the ESP8266 from your computer (disconnect USB).
Use the breadboard and the wires to connect the resistor, the LED and the ESP8266 together as follow:
- Bend (gently) the 2 legs of the resistor (to make a U) and place it on the breadboard on two parallel rows; one of which needs to be inline with the GPIO 5 (D1 on the ESP8266) as shown on the picture

- Place the long leg (+) of the LED in a hole on the same row as the resistor as shown on the figure below.

- Connect the short leg (-) of the LED to the ground (GND) using a black wire as shown on the figure below.

- Connect the first leg of the resistor using a second wire (red) to the GPIO 5 of the ESP8266 (D1).

Tips for the breadboard
Breadboards consist of tiny “holes” in which the leads of the component connect into.

But holes are not all connected to each others.

More information can be found here
Check your electronic circuit before running your programm.
esp8266 подключение и управление светодиодом. Примеры esp8266.
Рассмотрим модуль esp8266, как его подключить и как управлять яркостью светодиода при помощи слайдера, ползунка. Применять будем nodemcu esp8266. Подключим библиотеки и настроим сервер на esp. Это один из примеров esp8266. На моём канале много esp8266 проектов.
Сегодня я расскажу как можно просто управлять разными устройствами из интерфейса web Servera.
Это будет серия видео. Начнём с самого простого, управления светодиодом. Как включать и выключать светодиод есть много видео, в том числе и на моём канале. Я же покажу как изменять яркость свечения с помощью слайдера. Это вот такой обычный ползунок. В одном из следующих видео я расскажу как слайдером управлять сервомотором. Да и ещё много чем можно управлять.
Для сегодняшнего видео надо будет установить две библиотеки
- ESPAsyncWebServer
- ESPAsyncTCP
Эти библиотеки нужны для асинхронного управления.
Архивы с этими библиотеками можно скачать с гитхаба или с моего сайта. Архив ниже.
Работа слайдера проста. При перемещении слайдера его значение сохраняется в переменную, которую можно передать на сервер. По сути это простой GET запрос про который я уже неоднократно говорил.
Он имеет вид /slider?value=0 или 1023.
Поэтому так просто на другом конце подключить любое устройство. Управление будет по ШИМ(PWM). Широтноимпульсной модуляции.
Сервер мы поднимем тоже на ESP.
Для начала работы давайте подключим обычный светодиод, можно применить и встроенный. Чтобы быть уверенным, что он работает. Загрузим любой пример BLINK. Его можно взять из примеров, а можно использовать мой, из архива.
Я подключил светодиод к выводу D4 платы ESP. Также я создал переменную LED, чтобы было проще.
В скетче говорится, то светодиод будет 2 секунды гореть, затем на секунду погаснет, и снова загорится.
Если у вас всё работает то переходим ко второму этапу.
Запустим второй скетч. Здесь довольно много кода, но сегодня мы его не будем изучать.
Единственное, что нам будет нужно, так это вписать имя WIFI сети и пароль для доступа.
Если вы подключили светодиод к другому контакту, то необходимо это указать.
Здесь можно вывести свою надпись которая будет на web странице.
- Здесь указано минимальное и максимально значение которое будет передаваться на сервер.
- А это сам GET запрос который передаёт всего одно значение.
- Скорость обмена с серийным портом 115200.
Теперь можно переходить к установке библиотек.
Эти библиотеки недоступны для установки через Диспетчер библиотек Arduino, поэтому вам нужно установить их самостоятельно.
Для этого заходим в меню Скетч и выбираем Подключить библиотеку. Нажимаем добавить zip библиотеку. Заходим в папку с архивами и по очереди добавляем обе библиотеки.
После установки можно не перезагружать ARDUINO IDE.
Теперь указываем имя своей WIFI сети и пароль.
Здесь указан вывод к которому подключен светодиод.
Это указывает, что слайдер при загрузке страницы будет установлен в ноль.
Теперь прошиваем скетч.
Заходим в монитор порта и смотрим IP адрес который был присвоен вашему устройству.
У меня это 192.168.1.162 Копируем его и вставляем в адресную строку браузера.
Это также хорошо работает и на телефоне.
Вот опять закончилось видео. У меня ещё много примеров и задумок, хватило бы времени их выполнить. Ну, а если вам нравятся мои уроки, то ставьте лайк и делитесь моими видео с другими.
До встречи в новых видео.
Пока.
Управление светодиодом с помощью ESP8266 NodeMCU и консоли Google Firebase
Стремительно развивающаяся в настоящее время сфера интернета вещей (Internet of things, IoT) позволяет управлять периферийными устройствами и считывать информацию с датчиков в любом месте земного шара. И на нашем сайте мы уже рассматривали достаточно много проектов из сферы интернета вещей, посмотреть которые вы можете по следующей ссылке.
В данной статье мы рассмотрим использование облака Google Firebase для управления светодиодом, подключенным к NodeMCU ESP8266. Firebase – это платформа базы данных от компании Google, предназначенная для создания, управления и изменения любых данных, сформированных приложениями android, веб-сервисами, датчиками и т.д.

Для управления светодиодом с помощью Firebase нам скачала необходимо сконфигурировать Wi-Fi модуль NodeMCU ESP8266, а затем настроить Google Firebase.
Необходимые компоненты
- NodeMCU ESP8266(12E) (купить на AliExpress).
- Светодиод (купить на AliExpress).
Если у вас NodeMCU ESP8266 (12E), то вместо нее вы можете использовать обычный модуль ESP8266 с платой Arduino UNO и средой Arduino IDE. Более подробно о программировании модуля ESP8266 с помощью Arduino IDE вы можете прочитать в этой статье.
Схема проекта
Схема для управления светодиодом с помощью ESP8266 NodeMCU и консоли Google Firebase представлена на следующем рисунке.

После сборки схемы проекта выполните следующую последовательность шагов:
- Подключите NodeMCU к компьютеру.
- Откройте Arduino IDE.
- В Arduino IDE выберите ‘Tools’ и затем ‘Boards’.
- В пункте меню для выбора плат выберите ‘NodeMCU V1.0 (ESP-12E Module)’.
- Выберите COM порт, к которому подключена NodeMCU.
- После того как узнаете значения “FIREBASE_HOST” и “FIREBASE_AUTH” (объяснено ниже в статье), внесите соответствующие изменения в код программы проекта (приведен в конце статьи).
Объяснение программы для NodeMCU ESP8266
Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.
Мигание светодиодом
В этом руководстве мы построим простую цепь, которая будет мигать светодиодом при помощи ESP8266-модуля, запрограммированного с помощью IDE Arduino.
Почему мы всегда вначале учимся мигать светодиодом? Хороший вопрос! Если вы умеете мигать светодиодом, то можно с уверенностью сказать, что вы также умеете включать/выключать любое электронное устройство, будь то светодиод, лампа или даже тостер.
Необходимые компоненты
- Модуль с ESP8266 (ESP-01, ESP-03, ESP-05, ESP-07 или ESP-12 и др.) — 1шт.;
- Конвертер USB/TTL на базе чипа FT232RL от FTDI — 1шт.; на 220 Ом — 1шт.; — 1шт.;
Как работает этот скетч
- В начале создаем переменную типа «int» под названием «pin» и присваиваем ей значение «2» (оно означает контакт GPIO2);
- В блоке setup() при помощи функции pinMode(pin, OUTPUT) переключаем контакт GPIO2 в режим вывода данных (OUTPUT). Код в setup() проработает только один раз;
- Далее в блоке loop() мы поочередно два раза используем функции digitalWrite() и delay(). Код в loop() будет повторяться вновь и вновь, пока вы не выключите ESP8266;
- Затем включаем светодиод на 1 секунду (1000 миллисекунд) при помощи функций digitalWrite(pin, HIGH) и delay(1000);
- Теперь выключаем светодиод при помощи digitalWrite(pin, LOW) и ждем 1 секунду при помощи delay(1000);
- Программа будет повторять шаги 4 и 5, благодаря чему светодиод будет мигать периодичностью в 1 секунду .
Загружаем код на ESP8266
В двух следующих разделах мы объясним, как загружать код на модуль ESP-12E, оснащенный встроенным программатором (см. раздел «Вариант А» ниже) и как загружать код на модули ESP-01 или ESP-07, которым необходим внешний FTDI-программатор (см. раздел «Вариант Б» ниже).
Вариант А – Загрузка кода на ESP-12E
Загрузка кода на ESP-12E NodeMCU Kit выполняется очень просто, т.к. эта плата оснащена встроенным программатором. Вам не придется делать никаких лишних соединений – достаточно лишь подключить плату к ПК.

Кликните в IDE Arduino на «Инструменты» > «Плата» (Tools > Board) и выберите плату NodeMCU 1.0 (ESP-12E Module). Все ее настройки по умолчанию должны выглядеть вот так:
Ваш COM-порт будет называться, скорее всего, не «COM11» (как на скриншоте выше), а как-то по-другому. И это нормально – так он не будет мешать никаким другим процессам. Но все остальные настройки должны быть как на скриншоте выше.
Проверив настройки, нажмите на кнопку «Загрузка» (Upload) в IDE Arduino
и подождите несколько секунд, пока не увидите сообщение «Загрузка завершена» (Done uploading) в нижнем левом углу программы.

Как должна выглядеть цепь
Подключите к контакту D4 (GPIO2) ESP8266-модуля светодиод и резистор на 220 Ом.

Перезапустите ESP8266. Все готово, поздравляем! Светодиод должен начать мигать раз в секунду!
Вариант Б – Загрузка кода на ESP-01
Для загрузки кода на ESP-01 между ESP8266 и FTDI-программатором должна быть установлена последовательная коммуникация.

У большинства FTDI-программаторов есть перемычка для преобразования 5 вольт в 3.3 вольта. Убедитесь, что у вашего программатора она стоит на 3.3 вольтах.
Далее подключите ESP8266 к FTDI-программатору согласно схеме ниже, чтобы настроить последовательную коммуникацию между ними.

Их контакты должны быть подключены друг к другу следующим образом (слева – ESP8266, справа – FTDI-программатор):
- RX –> TX
- TX –> RX
- CH_PD –> 3.3V
- GPIO0 –> GND
- VCC –> 3.3V
- GND –> GND
На схеме выше контакт GPIO0 подключен к GND, т.к. наша задача – загрузить код. Когда мы загружаем на ESP8266 новый скетч, это требует от ESP8266 записать новую прошивку. При нормальном использовании (если нам не нужно записать на ESP8266 новую прошивку) контакт GPIO0 должен быть подключен к VCC.
Если вы купили новый FTDI-программатор, и вам нужно установить на компьютер под управлением Windows FTDI-драйверы, то официальные драйверы можно найти, как правило, на этом сайте. Или можно попросить их у продавца, у которого вы купили FTDI-программатор.
«Раскирпичивание» FTDI-программатора на Windows-компьютере
Если у вас возникли проблемы с установкой FTDI-драйверов на Windows 7/8/8.1/10, то ваш FTDI-программатор, скорее всего, «окирпичился». О том, как его «раскирпичить», смотрите здесь.
В видео по ссылке выше говорится, что вам нужно загрузить драйверы с сайта FTDI. Соответствующую ссылку можно найти в описании к видео (или просто кликнуть тут).
Подготовка IDE Arduino
Кликните на «Инструменты» > «Плата» (Tools > Board) и выберите плату «Generic ESP8266 Module». По умолчанию все настройки для нее должны выглядеть примерно вот так:
В вашем случае, скорее всего, будет какой-то другой COM-порт, а не тот, что на скриншоте выше («COM8»). И это нормально, потому что мы не будем мешать другим процессам. Но все прочие настройки должны выглядеть как на скриншоте выше.
Проверив настройки, нажмите на кнопку «Загрузка» (Upload) в IDE Arduino
и подождите несколько секунд, пока не увидите сообщение «Загрузка завершена» (Done uploading) в нижнем левом углу программы.

Как должна выглядеть цепь
Загрузив код в модуль, отключите его от компьютера. Затем подсоедините компоненты друг к другу как на схеме ниже.

Запитайте ESP8266 от 3.3-вольтового источника питания. Все готово, поздравляем! Светодиод должен начать мигать раз в секунду.
