Оглавление
- WeMos Mini
- Установка программного обеспечения
- Модули на базе ESP8266
- Технические характеристики: ESP32 против ESP8266
- Как правильно подключить ESP8266
- Подключение NodeMCU к компьютеру
- Specifications of ESP8266
- Which pin of ESP8266 to use
- Best Pins to Use – ESP8266
- Step 2: Soldering the Headers
- ESP-07
- Обновление прошивки ESP8266
- Шаг 2: Работа с приложением Blynk
WeMos Mini
По сравнению с Wemos D1 микроконтроллер WeMos Mini имеет меньшие габариты. Плата обладает размерами в ширину 2,5 см, а в длину 3,5 см, в то время как полная версия Wemos D1 идентична Ардуино UNO.
Распиновка WeMos D1 mini
Схема платы и расположение выходов изображены на рисунке.
Технические характеристики WeMos Mini:
- 11 цифровых контактов;
- Наибольшее входное напряжение 3,2В;
- 4 МБ памяти;
- WiFi модуль;
- Коннектор для внешней антенны.
Преимуществом платы является возможность сохранения соединения при низком потреблении энергии 1мА. Благодаря этому можно делать различные приборы, которые будут работать от батареек.
Шилды для WeMos Mini
Существует большое количество шилдов, которые могут быть подключены WeMos D1 mini:
- WeMos Dual Base и WeMos Tripler Base – удваивает и утраивает основу установки шилда;
- WeMos DS18B20 – шилд с цифровым датчиком;
- WeMos Battery – шилд для дополнительного питания от батарейки;
- WeMos Relay – шилд, управлящий реле;
- WeMos OLED – шилд, оснащенный экраном OLED;
- WeMos 1-Button – модуль, оснащенный тактовой кнопкой;
- WeMos Micro SD-Card – шилд для добавления карты памяти микро SD;
- WeMos Motor – шилд для двигателей до 15В;
- WeMos DHT D4, WeMos DHT I2C, WeMos SHT30 – модули, реализующие измерение давления, температуры и влажности (первый подключается через шину onewire, второй – через I2C);
- WeMos WS2812B RGB – шилд, реализующий управление светодиодом;
- WeMos Matrix LED – шилд для индикации, базирующийся на матрице светодиодов;
- WeMos Buzzer – шилд для звукового излучателя;
- WeMos ProtoBoard – макетная плата;
- WeMos DC Power – шилд питания.
Установка программного обеспечения
Устанавливаем ПО для работы с WeMos на ПК под управлением Windows 10.
Напомню, что чип EPS8266 способен работать одинаково хорошо с различными типами прошивок, в том числе и с Arduino. И именно под Arduino с его Arduino IDE я и попробую провернуть фокус, при котором плата WeMos D1 R2 будет подключаться к моей Wi-Fi сети, а я смогу обновлять прошивку без подключения платы к компьютеру шнурком и прямо из Arduino IDE. Все это под Windows 10 x64.
Шаг 2
Устанавливаем Git (клиентское приложение для работы с онлайн-репозиторием контроля версий исходного кода) https://git-scm.com/download/win.
Шаг 3
Устанавливаем Python (среда для скриптового языка Python). Нужна версия из бранча 2.7 и берем ее с сайта python.org. С более свежей, 3-й веткой, работать, скорее всего, не будет.
При установке Python, стоит установить галочку, чтобы исполняемые файлы прописались в путь поиска. Иначе сию операцию придется делать вручную. А мало кто помнит, как это делается.
Шаг 4
Скачиваем и устанавливаем драйвер по статье на нашем сайте.
Я не пробовал запускать плату без драйвера для обновления OTA. Без драйвера, но с установленными описаниями Arduino IDE видит плату и может загружать в плату новые прошивки. Возможно, что драйвер нужен как раз для беспроводного обновления.
Шаг 5
Устанавливаем утилиты для компиляции исходных кодов для EPS8266 и описания платы для Arduino IDE
Важно установить все это в нужную директорию. Установка осуществляется путем вызова в созданной директории esp8266com команды:
git clone https://github.com/esp8266/Arduino.git esp8266
Важно! Если git у вас не запускается их командной строки, то стоит проверить переменную path и попробовать перезайти в терминал.
Правильный путь установки в директорию туда, куда установлена Arduino IDE. Например:
C:\Program Files (x86)\Arduino\hardware\esp8266com\
Переходим в созданную поддиректорию tools. И в этой директории запускаем:
python get.py
Все необходимые компоненты автоматически скачиваются в директорию esp8266.
Шаг 6
Скачиваем примеры с сервера GitHub командой
git clone https://github.com/wemos/D1_mini_Examples.git
Директорию для закачки примеров необходимо выбирать ту, где сами примеры и располагаются на вашем ПК. В моем случае, это оказалась директория в папке OneDrive.
Шаг 7
После установки примеров перезаходим в Arduino IDE или просто его запускаем, открываем любой из примеров для WeMos, например, Hello World, выбираем требуемые параметры настройки платы через меню «Tools» Arduino IDE. Здесь выбираем плату WeMos D1 и запускаем его на исполнение.
Прошу обратить внимание на то, что WeMos D1 R2 хоть и Arduino совместимая плата, но ожидать, что на ней будут нормально работать любые скетчи от Arduino не стоит. Как минимум впаянный светодиод тут привязан к совсем другому пину, нежели на платах Arduino, например, на Arduino UNO R3
Еще одна особенность при работе с D1 и другими платами от WeMos, а скорее всего от всех реализованных на ESP8266 — вывод в терминал может осуществляться с мусором либо постоянно, либо при начале отображения. Иногда все начинает работать само по себе, иногда требуется поиграть со скоростями последовательного порта (в окне терминала и в скетче), дабы подобрать скорость, которая будет работать именно у вас.
Собственно, на этом настойка подключения WeMos платы к Arduino IDE завершена. Если что-то не работает или работает как-то не так, необходимо попробовать пройти все шаги еще раз, внимательно относясь к каждому из них.
Модули на базе ESP8266
Согласитесь, что сам по себе голый чип нам мало интересен, а раз мы любим ардуино, а не сам микроконтроллер atmуga, то нам интересны готовые модули на базе чипа ESP8266. Итак приступим.
На базе данного микроконтроллера разработан ряд модулей с маркировками от ESP-01 до ESP-13. В большинстве модули похожи друг на друга. Я же коснусь в своем рассказе только тех модулей, с которыми имел дело 🙂
Итак, самый младший представитель линейки – ESP-01.
Этот модуль знаком тем, кто пытался прикрутить к своему проекту на Arduino Wifi. Забавно, что зачастую проект мог бы и без ардуино обойтись 🙂
Итак, в данном модуле пользователю/разработчику доступно только 4 GPIO вывода. Не много, но для метеостанции или какого-нибудь датчика вполне сгодится.
Приобрести такой модуль можно по ссылкам ниже:
И там и там модули хорошего качества.
Ну а мы пойдем дальше. На очереди довольно интересный и необычный модуль ESP-07
Модуль представляет собой миниатюрную плату с возможностью установки на большую плату под пайку.Обратите внимание, шаг контактов 2 мм, не 2,54, а именно 2. В обычную макетку этот модуль впихнуть проблематично
На первый взгляд отличительной особенностью данного модуля является наличие керамической антенны, а также разъема для подключения внешней антенны. На плате доступны все GPIO выводы за исключением выводов, отвечающих на SPI шину.
Модуль считается не первой свежести, но в большинстве проектов не теряет своей актуальности.
Стоит признать, что некоторые считают, модуль ESP-07 несколько устаревшим, так как ему на смену пришли модули ESP-12
Плата модуля рассчитана под пайку, либо установку на гребенку с шагом контактов 2 мм, однако из существенных отличий – наличие выводов шины SPI.
Широкое распространение получили модули ESP-12E и ESP-12F, отличающиеся друг от друга объемом FLASH памяти.
В отличие от модуля ESP-07, Модули на базе ESP-12 не имеют возможности подключения внешней антенны и используют посредственную встроенную антенну, которая представляет собой дорожку на плате.
Распиновка у модулей ESP-12 одинакова.
Подробную информацию по подключению и прошивке данных модулей вы можете получить на ресурсе посвященном микроконтроллерам ESP8266.ru
Учтите, что для прошивки и заливки скетчей в модули ESP-01 … ESP-12 необходим программатор. Подробнее о программаторах вы можете почитать в статье “Программаторы для Arduino, 3Д принтеров и не только”
Все эти модули хороши, однако кроме ESP-01 в готовом виде их применять не получится, т.к. нужна обвязка. Поэтому мы плавно переходим к готовым модулям, родоначальником которых стала плата ESP-12
Технические характеристики: ESP32 против ESP8266
ESP32 является преемником ESP8266. Он имеет дополнительное ядро процессора, более быстрый Wi-Fi, больше GPIO и поддерживает Bluetooth 4.2 и Bluetooth с низким энергопотреблением. Кроме того, ESP32 поставляется с сенсорными контактами, которые можно использовать для пробуждения ESP32 из глубокого сна, встроенным датчиком эффекта Холла и встроенным датчиком температуры (последние версии ESP32 больше не поставляются со встроенным датчиком температуры).
Обе платы очень дешевы, но ESP32 стоит немного дороже. В то время как ESP32 может стоить от 6 до 12 долларов, ESP8266 может стоить от 4 до 6 долларов (но это зависит от того, где вы их приобретаете).
В следующей таблице показаны основные различия между чипами ESP8266 и ESP32:
Hantek 2000 — осциллограф 3 в 1
Портативный USB осциллограф, 2 канала, 40 МГц….
Подробнее
Использовать просто чипы ESP32 или ESP8266 сложно и непрактично, особенно при тестировании и создании прототипов. В большинстве случаев вы захотите использовать платы разработки ESP32 и ESP8266. Эти платы поставляются со всеми необходимыми схемами для питания чипа, подключения его к компьютеру, схемой для легкой загрузки кода, контактами для подключения периферийных устройств, встроенными светодиодами питания и управления и другими полезными функциями.
Платы для разработки ESP32 и ESP8266, которые мы используем чаще, — это плата разработки ESP32 DEVKIT DOIT и комплект ESP8266 ESP-12E NodeMCU Kit. Однако есть много других моделей плат для разработки, из которых вы можете выбирать.
Как правильно подключить ESP8266
Если вы планируете заниматься с ESP8266 больше, чем один вечер, то вам потребуется вариант подключения, обеспечивающий более высокую стабильность. Ниже приводятся две схемы подключения: с поддержкой автозагрузки прошивки из Arduino IDE, UDK, Sming и без нее.
Схема подключения ESP8266 (без автозагрузки прошивки, прошиваемся предварительно установив перемычку BURN и перезагрузив модуль)
Схема подключения с поддержкой автозагрузки прошивки из Arduino IDE, UDK, Sming. Для Flash Download Tool и XTCOM_UTIL, возможно, потребуется отключение RTS/DTR. Если RTS и DTR вам отключать неудобно, то можно добавить в схему перемычки
На этих схемах не показано подключение ADC и свободных GPIO — их подключение будет зависеть от того, что вы захотите реализовать, но если хотите стабильности, то не забудьте притянуть все GPIO к питанию (pullup), а ADC к земле (pulldown) через подтягивающие резисторы.
Резисторы на 10k могут заменены на другие от 4,7k до 50k, за исключением GPIO15 — его номинал должен быть до 10k. Номинал конденсатора, который сглаживает высокочастотные пульсации, может быть другим.
Соединение RESET и GPIO16 через резистор deep sleep на 470 Ом вам потребуется, если вы будете использовать режим deep sleep: для выхода из режима глубокого сна модуль перезагружает сам себя, подавая низкий уровень на GPIO16. Без этого соединения глубокий сон будет вечным для вашего модуля.
На первый взгляд на этих схемах кажется, что GPIO0, GPIO2, GPIO15, GPIO1 (TX), GPIO3 (RX) заняты и вы не можете их использовать для своих целей, но это не так. Высокий уровень на GPIO0 и GPIO2, низкий на GPIO15 требуются только для старта модуля, а в последующем вы можете использовать их по своему усмотрению, только не забудьте обеспечить требуемые уровни до перезагрузки модуля.
Можно использовать и TX, RX как GPIO1 и GPIO3 соответственно, не забывая о том, что при старте модуля любая прошивка будет дергать TX, отправляя отладочную информацию в UART0 на скорости 74480, но после успешной загрузки вы можете использовать их не только как UART0 для обмена данными с другим устройством, но и как обычные GPIO.
Для модулей, имеющих меньшее количество разведенных пинов, как например, ESP-01 подключение неразведенных пинов не требуется, т.е. на ESP-01 разведены только: VCC, GND, GPIO0, GPIO2, CH_PD и RESET — вот только их и подтягиваете. Нет никакой необходимости припаиваться прямо к микросхеме ESP8266EX и притягивать неразведенные пины, только если вам это действительно необходимо.
Данные схемы подключения родились после множества экспериментов, проведенных нашими форумчанами и собраны по крупицам из разрозненной и недоступной изначально документации нашим сообществом, я всего лишь постарался объединить эти знания в одном месте. Множество советов по подключению вы найдете на нашем форуме. Там же вы сможете задать интересующие вас вопросы или найти помощь в решении проблем. Если вы увидели ошибку, неточность в этой статье или вам есть что добавить, то сообщите мне об этом в специальной теме на нашем форуме.
Внимание!
Правильным будет сказать вам, что не существует идеальной и в тоже время универсальной схемы подключения ESP8266. Все дело в том, что очень многое зависит от прошивки, которую вы собираетесь туда залить. Вышеприведенные схемы рассчитаны на новичков, которые только начинают осваивать ESP8266, для экспериментов. Для реальных проектов, возможно, вам придется немного изменить схему. Например, для прошивки TCP2UART нужно подключить RTS к GPIO15, а CTS к GPIO13
Также в реальных проектах рекомендую уделить особое внимание питанию
Подключение NodeMCU к компьютеру
Для начала работы с NodeMcu нужно подключить плату к компьютеру. Первым шагом будет установка драйвера CP2102 и открытие Arduino IDE. Затем нужно найти в «Файл» – «Настройки» и в окно «дополнительные ссылки для менеджера плат» вставить ссылку http://arduino.esp8266.com/versions/2.3.0/package_esp8266com_index.json.
После этого в меню «документы» – «плата» «менеджер плат» выбрать «esp8266» и установить последнюю версию. После проделанных действий в меню «инструменты» – «плата» нужно найти NodeMCU.
После того, как все необходимые данные будут установлены и скопированы, можно будет начать работать.
Specifications of ESP8266
Esp8266 specification divides into three parts: Hardware, Software, and Wi-Fi. In hardware specification, its package size is QFN 32pins with a dimension of 5mm x 5mm. Operating voltages range from 2.5V to 3.6V. The chip consumes 80mA of current on average. Its CPU is Tensilica L106 which is a 32bit processor with on-chip SRAM. The peripheral interface contains UART, SDIO, SPI, I2C, I2S, IR remote control, GIPO’s, ADC, PWM, LED Light and button.
Its firmware can be updated using OTA and UART. It uses IPv4, TCP, UDP, and HTTP as network protocols. User can configure using AT commands set, Cloud Server and using a mobile application.
Wi-Fi frequency ranges from 2.4G to 2.5G. It uses standard Wi-Fi protocol IEEE 802.11 b/g/n. Esp6266 Wi-Fi capabilities are certified by Wi-Fi Alliance.
Which pin of ESP8266 to use
Always keep in mind that GPIO label does not match the label on the silkscreen. For example GPIO0 corresponds to D3 and D0 corresponds to GPIO16. The GPIOs with a green tick is best to use.
Label | GPIO | Input | Output | Description |
---|---|---|---|---|
A0 | ADC0 | Analog Input | No | For analog input from 0 to 3.3v and no output. |
RX | GPIO3 | Yes | RX pin only | High at Boot. |
TX | GPIO1 | Tx pin only | Yes | High at Boot. |
D0 | GPIO16 | No interrupt | No I2C, PWM | Used to wake up chip from deep sleep, High at Boot. |
D1 | GPIO5 | Yes | Yes | Often used as SCL |
D2 | GPIO4 | Yes | Yes | Often used as SDA |
D3 | GPIO0 | Pulled up | Yes | Connected to Flash button |
D4 | GPIO2 | Pulled up | Yes | Connected to built-in LED, High at Boot. |
D5 | GPIO14 | Yes | Yes | SCLK pin for SPI interface |
D6 | GPIO12 | Yes | Yes | MISO pin for SPI interface |
D7 | GPIO13 | Yes | Yes | MOSI pin for SPI interface |
D8 | GPIO15 | Pulled to ground | Yes | CS pin for SPI interface |
ESP8266 pin High and Low-voltage signal at Boot
While booting ESP8266 the following pins provide 3.3v signal on specified pins so connecting relays, transistor or any other peripheral devices can misbehave. The following pin output 3.3v signal on Boot:
- GPIO16
- GPIO3
- GPIO1
- GPIO10
- GPIO9
All other GPIOs pin provide low voltage single on Boot except GPIO4 and GPIO5. So the GPIO4 and GPIO5 are the best pins to connect relays, transistor and other peripheral devices to stable results.
Pins Configuration during Boot
To boot the ESP8266 successfully we have to disallow the specified pins to get HIGH or LOW.
- GPIO16: pin is high at BOOT
- GPIO3: pin is high at BOOT
- GPIO10: pin is high at BOOT
- GPIO9: pin is high at BOOT
- GPIO2: pin is high on BOOT, boot failure if pulled LOW
- GPIO1: pin is high at BOOT, boot failure if pulled LOW
- GPIO0: boot failure if pulled LOW
- GPIO15: boot failure if pulled HIGH
Best Pins to Use – ESP8266
One important thing to notice about ESP8266 is that the GPIO number doesn’t match the label on the board silkscreen. For example, D0 corresponds to GPIO16 and D1 corresponds to GPIO5.
The following table shows the correspondence between the labels on the silkscreen and the GPIO number as well as what pins are the best to use in your projects, and which ones you need to be cautious.
The pins highlighted in green are OK to use. The ones highlighted in yellow are OK to use, but you need to pay attention because they may have unexpected behavior mainly at boot. The pins highlighted in red are not recommended to use as inputs or outputs.
Label | GPIO | Input | Output | Notes |
D0 | GPIO16 | no interrupt | no PWM or I2C support | HIGH at bootused to wake up from deep sleep |
D1 | GPIO5 | OK | OK | often used as SCL (I2C) |
D2 | GPIO4 | OK | OK | often used as SDA (I2C) |
D3 | GPIO0 | pulled up | OK | connected to FLASH button, boot fails if pulled LOW |
D4 | GPIO2 | pulled up | OK | HIGH at bootconnected to on-board LED, boot fails if pulled LOW |
D5 | GPIO14 | OK | OK | SPI (SCLK) |
D6 | GPIO12 | OK | OK | SPI (MISO) |
D7 | GPIO13 | OK | OK | SPI (MOSI) |
D8 | GPIO15 | pulled to GND | OK | SPI (CS)Boot fails if pulled HIGH |
RX | GPIO3 | OK | RX pin | HIGH at boot |
TX | GPIO1 | TX pin | OK | HIGH at bootdebug output at boot, boot fails if pulled LOW |
A0 | ADC0 | Analog Input | X |
Continue reading for a more detailled and in-depth analysis of the ESP8266 GPIOs and its functions.
Pins used during Boot
The ESP8266 can be prevented from booting if some pins are pulled LOW or HIGH. The following list shows the state of the following pins on BOOT:
- GPIO16: pin is high at BOOT
- GPIO0: boot failure if pulled LOW
- GPIO2: pin is high on BOOT, boot failure if pulled LOW
- GPIO15: boot failure if pulled HIGH
- GPIO3: pin is high at BOOT
- GPIO1: pin is high at BOOT, boot failure if pulled LOW
- GPIO10: pin is high at BOOT
- GPIO9: pin is high at BOOT
Pins HIGH at Boot
There are certain pins that output a 3.3V signal when the ESP8266 boots. This may be problematic if you have relays or other peripherals connected to those GPIOs. The following GPIOs output a HIGH signal on boot:
- GPIO16
- GPIO3
- GPIO1
- GPIO10
- GPIO9
Additionally, the other GPIOs, except GPIO5 and GPIO4, can output a low-voltage signal at boot, which can be problematic if these are connected to transistors or relays. You can read this article that investigates the state and behavior of each GPIO on boot.
GPIO4 and GPIO5 are the most safe to use GPIOs if you want to operate relays.
Analog Input
The ESP8266 only supports analog reading in one GPIO. That GPIO is called ADC0 and it is usually marked on the silkscreen as A0.
The maximum input voltage of the ADC0 pin is 0 to 1V if you’re using the ESP8266 bare chip. If you’re using a development board like the ESP8266 12-E NodeMCU kit, the voltage input range is 0 to 3.3V because these boards contain an internal voltage divider.
You can learn how to use analog reading with the ESP8266 with the following guide:
ESP8266 ADC – Read Analog Values with Arduino IDE, MicroPython and Lua
On-board LED
Most of the ESP8266 development boards have a built-in LED. This LED is usually connected to GPIO2.
The LED works with inverted logic. Send a HIGH signal to turn it off, and a LOW signal to turn it on.
When the RST pin is pulled LOW, the ESP8266 resets. This is the same as pressing the on-board RESET button.
GPIO0
When GPIO0 is pulled LOW, it sets the ESP8266 into bootloader mode. This is the same as pressing the on-board FLASH/BOOT button.
GPIO16
GPIO16 can be used to wake up the ESP8266 from deep sleep. To wake up the ESP8266 from deep sleep, GPIO16 should be connected to the RST pin. Learn how to put the ESP8266 into deep sleep mode:
- ESP8266 Deep Sleep with Arduino IDE
- ESP8266 Deep Sleep with MicroPython
I2C
The ESP8266 doens’t have hardware I2C pins, but it can be implemented in software. So you can use any GPIOs as I2C. Usually, the following GPIOs are used as I2C pins:
- GPIO5: SCL
- GPIO4: SDA
The pins used as SPI in the ESP8266 are:
- GPIO12: MISO
- GPIO13: MOSI
- GPIO14: SCLK
- GPIO15: CS
PWM Pins
ESP8266 allows software PWM in all I/O pins: GPIO0 to GPIO16. PWM signals on ESP8266 have 10-bit resolution. Learn how to use ESP8266 PWM pins:
- ESP8266 PWM with Arduino IDE
- ESP8266 PWM with MicroPython
Step 2: Soldering the Headers
- The WEMOS board comes with 3 different types of headers.
- Female
- Male
- Female/Male (long female)
- I use a breadboard to solder these on. It helps keep everything aligned. I find it better that using the helping hands. You do want to be careful because you may melt the plastic of the breadboard if you heat up the pins to much.
- For the purpose of my project and future projects I am going to use the Female headers. These will allow me to install shields. The WEMOS board has a number of shields and I will be using the Temp and Relay shield in a future build.
- When Soldering you want to make sure you don’t use too much solder, it will result in a ball of solder on your pin. If you use to little solder or not enough heat you can risk no connecting them fully. Take a look at my last picture to see what good solder joint looks like.
ESP-07
Особенности этого модуля — керамическая антенна и разъем для внешней антенны, металлический экран.
Подключение к IoT
Аппаратная часть
Работа с этим модулем, к сожалению, прошла не слишком гладко. Ни один из возможных вариантов подключения не сработал, и я, уже отчаявшись, решила удалять его описание из статьи. Но тут мне дали новый модуль и сказали попробовать еще раз — о чудо, он заработал с первого раза! В чем было дело и как сломался первый модуль, который я мучила, — неизвестно, но скорее всего он был убит нещадной статикой. Мораль этого лирического отступления такова — если у вас что-то не заработало по инструкции, написанной ниже, не вините инструкцию — сначала прозвоните и проверьте все контакты, а потом попробуйте на другом модуле.
1) Собираем схему
ESP-07 |
USB-Serial |
VCC |
VCC |
CH_PD (рекомендуется через резистор) |
VCC |
TX |
RX |
RX |
TX |
GND |
GND |
GPIO 15 (рекомендуется через резистор) |
GND |
GPIO 0 — сначала не подключен, но будет использоваться для перевода в режим программирования далее, поэтому к нему уже подведен провод |
|
все остальные контакты не подключены |
RTS, CTS — не подключены |
На фото этого и следующего модуля уже можно заметить резисторы. После неведомой поломки уже решила перестраховаться и поставила килоомники, хотя и без них все должно работать.
2) Переводим в режим программирования (необходимо каждый раз выполнять перед прошивкой модуля)
2.1) Отключаем питание от модуля2.2. Подключаем пин GPIO 0 к GND
2.2) Подключаем пин GPIO 0 к GND
ESP-07 |
USB-Serial |
VCC |
VCC |
CH_PD |
VCC |
TX |
RX |
RX |
TX |
GND |
GND |
GPIO 15 |
GND |
GPIO 0 |
GND |
все остальные контакты не подключены |
RTS, CTS — не подключены |
2.3) Подключаем модуль к питанию
2.4) Железо готово, приступаем к программной части.
Программная часть
1) Выбираем плату: Tools (Инструменты) -> Board(Плата) Generic ESP8266 Module.
2) Вставляем подготовленный код.
3) Задаем данные для подключения Wi-Fi и идентификатор своего объекта на платформе.
4) Компилируем и загружаем скетч на плату.
5) Для обычной работы модуля (не для режима прошивки) пин GPIO 0 должен быть свободен, поэтому отключаем его от GND.
6) Переподключаем питание ESP-07 (например, вытаскиваем и вставляем обратно адаптер).
7) Видим появление данных на платформе.
В Китае
Обновление прошивки ESP8266
Модуль ESP8266 замечателен тем, что не требует специального программатора — обновление прошивки производится на том же железе, на котором вы подключаете модуль ESP8266 к компьютеру, т.е. тоже через USB-TTL конвертер (ну или Arduino или RPi). Для обновление прошивки на модуле ESP8266 проделайте следующее:
для Win систем подойдет XTCOM UTIL (удобно работать, если прошивка состоит из одного файла), мультиплатформенный esptool (требуется python, нужно указывать параметры в командной строке), FLASH DOWNLOAD TOOL (много настроек, удобно прошивать прошивки, состоящие из нескольких файлов, позволяет «собрать» прошивку в один файл из нескольких). Также вы найдете и другие программы для прошивки ESP8266 — попробуйте разные и пользуйтесь той, которая вам больше понравится.
3. Отключите от последовательного порта вашу терминальную программу
4. Отключите CH_PD от питания, подключите GPIO0 модуля к GND, подключите обратно CH_PD модуля.
5. Запускайте программу для прошивки модуля и загружайте новую прошивку в модуль ESP8266.
Загрузка прошивки в модуль обычно осуществляется на скорости 115200, но режим прошивки модуля поддерживает автоопределение скорости и прошивка может быть осуществлена на скорости от 9600 и выше. Максимальная скорость зависит от многих факторов (вашего USB-TTL конвертера, длины проводов и прочего) и может быть определена экспериментально на конфигурации именно вашего оборудования.
Все последние версии прошивок загружаются с нулевого адреса (0x00000).
В статье Обновление прошивки ESP8266 подробно описана загрузки прошивки в модуль с помощью программы XTCOM_UTIL.
Использованная литература
Шаг 2: Работа с приложением Blynk
Создание учетную запись Blynk
После загрузки приложения Blynk вам необходимо создать новую учетную запись. Эта учетная запись отделена от учетных записей, используемых для форумов Blynk, если у вас такой уже есть. Мы рекомендуем использовать реальный адрес электронной почты.
Зачем мне нужно создавать учетную запись?
Учетная запись необходима для сохранения ваших проектов и доступа к ним с нескольких устройств из любого места. Это также мера безопасности. Вы всегда сможете настроить свой собственный сервер Blynk.
После того, как вы успешно вошли в свою учетную запись, начните с создания нового проекта.
Дайте проекту имя и выберите подходящую плату (Wemos D1 Mini). Теперь нажмите «Создать».
Аутентификация
Ваш токен аутентификации будет отправлен вам по электронной почте, и вы также сможете получить к нему доступ в настройках вашего проекта. Новый номер будет создан для каждого создаваемого вами проекта.