Дружимся с esp

Зачем обновлять

Как-то очень быстро стало не хватать возможностей стандартного Arduino Uno R3 для мелкой домашней автоматизации. Почему-то захотелось подключать собираемые устройства к сети не витой парой, а через Wi-Fi, забрезжила потребность в большем количестве свободных пинов, захотелось иметь возможность использовать PWM и прерываний больше, чем на двух пинах.

Да и памяти в Arduino Uno вдруг оказалось очень мало. Далеко не все пожелания влезают в скромный объем памяти, установленной на плате.

В поисках более интересной и удобной платы, я совершенно случайно наткнулся на нечто, совмещающее в себе почти все, а может быть, даже и все «хотелки». Речь далее пойдет о платах для домашней автоматизации и интернета вещей производства WeMos на чипе ESP8266EX.

Распиновка платы WeMos D1 mini

Как пример — ниже предлагаем вашему вниманию распиновку (входы-выходы) пока самой популярной платы WeMos. Ниже на рисунке распиновка (pinout) ESP8266 WeMos D1 mini:

ESP8266 WeMos D1 mini

Будьте внимательны, как видно на схеме — максимальное напряжение для платы 3,3 Вольт. Также мы хотели расписать на схеме основные входы/выходы, USB и другие функциональные вещи:

Немного по схеме:

  • Digital GPIO — это выводы GPIO, т.е. это «входы / выходы общего назначения».
  • Reset button — Кнопка сброса
  • USB Prog Inerface — вывод подключения USB

На этом сегодня всё. Статьи о платах серии WeMos читайте в нашей рубрике здесь.

Некоторые особенности

Поскольку платы на чипах ESP8266 и соответственно платы на их основе являются всего лишь совместимыми с Arduino, то между ними есть некоторые различия, без знания которых окунание в омут программирования может привести к гибели человеческих жертв или как минимум непонятки с неизвестно почему неработающим кодом.

Первое, что нужно уяснить, так это то, что WeMos работает с напряжением 3.3 Вольта, а большинство полноформатных плат Arduino с напряжением 5 вольт

И даже если на плате есть выход 5 вольт, то использовать это напряжение стоит с осторожностью.
Цифровые входы платы выдают напряжение в диапазоне от 1.8 и до 3.3 Вольта с пиковым током до 200 мА. Единственный аналоговый вход способен работать с напряжением в диапазоне от 3.0 и до 3.6 вольт

Возможно, что в ваших проектах потребуется согласование напряжений.
Отличается плата WeMos D1 R2 от аналога Arduino и по языку программирования, вернее, набором функций и прочими тонкостями. Например, описание пинов задаются не просто номерами, а с четким указанием цифровой это пин или нет. Так пин с номером 1 обозначается как D1.

На текущий момент (конец лета 2016) функция Serial Monitor для OTA пока не реализована в IDE. По этой причине рекомендуется использовать внешний терминал и подключить его к соответствующему сетевому порту.

Краткое описание языка Lua

Язык Lua обладает простым синтаксисом и мощными конструкциями описания данных, которые основаны на массивах и расширяемой семантике.  Этот мощный язык программирования используется для создания программного обеспечения, расширения различных игр. В отличие от остальных языков Lua обладает более гибкими и более мощными конструкциями.

Мигание светодиодами на Lua

Можно рассмотреть простейшую схему – мигание светодиодом. Этот пример поможет изучить работы с контактами GPIO. Светодиод нужно подключить как показано на схеме.

Затем нужно записать следующий скетч в левое окно ESPlorer:

pin_number = 1

gpio.mode (pin_number, gpio.OUTPUT) // установка рабочего режима на выход

gpio.write (pin_number, gpio.HIGH)// установка высокого уровня

gpio.write (pin_number, gpio.LOW)// установка низкого уровня

gpio.serout (1, gpio.HIGH, {+990000,990000}, 10, 1) // установка мигания светодиодом 10 раз

После нужно сохранить скрипт с названием init.lua. Сразу после этого начнется автоматическая загрузка написанного кода в отладочную плату и его выполнение. Если операция выполнена успешно, отладочная плата начнет мигать светодиодом.

Важно отметить, что плата самостоятельно выполняет скрипт, подключение к компьютеру нужно только для подачи питания

ESP8266EX и WeMos

Чип EPS8266 от китайской компании Espressif появился на рынке в 2014 году и сразу же привлек внимание общественности. С одной стороны, EPS8266 — чип максимально интегрировавший обвязку и позволяющий создавать очень простые платы с минимум элементов, да еще и со встроенным современным Wi-Fi

А с другой стороны, стоимость чипа неимоверно низкая (к 2016 году цена опустилась вдвое).

По этой причине множество производителей принялись, с неистощимым энтузиазмом, выпускать новые платы, на основе чипа от Espresiff. Хотя, при мало-мальском умении использовать в своих проектах можно и голый чип ESP8266, благо самая нужная обвязка встроена сразу в него. Что неимоверно удобно.

Espresiff создала свой чип с прицелом на «Интернет вещей», поэтому он обладает весьма скромными размерами, вместительной памятью, способностью к разгону и нескольким режимам энергосбережения. К слову, в ESP8266 реализован даже суперэкономичный режим, в котором устройство потребляет самый мизерный мизер энергии, но при этом не отключается от сети Wi-Fi. У разработчиков открывается невероятная возможность по реализации первоклассных проектов с питанием от батарей.

Несмотря на то что EPS8266 можно использовать как самостоятельное изделие, многие производители наладили выпуск плат совместимых с линейкой Arduino. Что еще больше повысило популярность чипа, но уже среди энтузиастов сделать что-то своими руками да в единичном экземпляре. Возможность использования EPS8266 в Arduino-совместимых проектах стало возможным благодаря характеристикам чипа.

Большой объем памяти, и внятная архитектура позволили не только сделать его совместимым с Arduino и NodeMCU, но и с множеством других программно-аппаратных экосистем. Компании и индивидуальные разработчики к настоящему моменту уже навыпускали великое множество прошивок, предназначенных для различных целей. Существуют даже варианты реализации, позволяющие программировать устройство через браузер . Согласитесь, что функционал богатый и устройство нашло широкий отклик среди масс.

Что же до компании Wemos. Получить внятную информацию о самой компании мне так и не удалось. Известно только, что она китайская, продает свою продукцию, в том числе, и через фирменный магазин на AliExpress, зарегистрирована на GitHub в 2014 году, аккурат в момент выпуска описываемого чипа. По слухам, какая-то команда разработчиков, учувствовавшая в другом проекте, организовала WeMos и наладила выпуск плат. Но какого-либо подтверждения я так найти и не смог. В общем — полная анонимность J, даже номера телефона на сайте нет.

Кстати, многие называют чип EPS8266 именно так, но в спецификации он обзывается как EPS8266EX. Два это разные чипа или просто называются безалаберно непонятно. Ни поиск по форумам, ни чтение спецификаций производителя, не помогли мне разобраться в этом вопросе. Посему будем считать, что оба названия обозначают одно и то же.

В моем распоряжении оказалась плата Wemos D1 R2. Приведу ее некоторые характеристики:

  • 80 MHz 32-bit процессор Tensilica Xtensa L106 . Возможен негарантированный разгон до 160 МГц.
  • IEEE 802.11 b/g/n Wi-Fi. Поддерживается WEPи WPA/WPA
  • 16 портов ввода/вывода, SPI, I2 C, I2 S, UART, 10-bit АЦП.
  • Питание 3,0–3,6 В. Среднее потребление 80 мА. Потребление до 170 мА в режиме передачи, 60 мА в режиме приема, пиковое потребление возможно до 500 мА. Присутствует режим пониженного потребления с сохранением соединения с точкой доступа ~1 мА.
  • Установлена Flash память объемом 4 Мб.

Дополнительно необходимо заметить, что сам чип работает при температурах от -40С и до +125С, что соответствуют лучшим технологическим стандартам. Хотя, я лично сомневаюсь, что готовая плата будет работать при температуре в 125 градусов, ведь все остальные элементы обвязки тоже нужно подбирать под столь высокие температурные стандарты, а на такой подвиг согласятся далеко не все производители.

Код прошивки

Для прошивки всех используемых ниже модулей используем один и тот же код.

Основные функции:

  1. Установка Wi-Fi соединения

  2. Подключение к объекту на платформе Rightech IoT Cloud по протоколу MQTT

  3. Отправка рандомных значений по температуре («base/state/temperature») и влажности («base/state/humidity») каждые 5 секунд (PUB_DELAY)

  4. Получение сообщений о переключении света («base/relay/led1»)

Работоспособность кода будем проверять на платформе Rightech IoT Cloud, именно поэтому в качестве адреса MQTT-брокера указан dev.rightech.io. Идентификаторами клиентов служат идентификаторы объектов, созданных на платформе. Под каждую проверку я завела на платформе отдельный объект, именно поэтому во всех скринах кодов, которые будут далее представлены, отличается только строка <ric-mqtt-client-id>. 

Прим. — Можно подключаться и к одному и тому же объекту, тогда можно использовать один и тот же код для прошивки всех плат без изменений, однако следите, чтобы в таком случае платы не подключались к одному и тому же объекту одновременно, иначе случится коллизия.

Configure the Tasmota software

You can use a tool like fing or your wireless router to find the IP-address of your WeMos device.

The MAC-address starts with:

  • 5C:CF:7F for the WeMos D1 mini and
  • 60:01:94 for the WeMos D1 mini Pro

Open a browser and go to the IP-address of your WeMos device. You should be greeted with the familiar Tasmota configuration screen.

Set the device to «WeMos D1 mini» in the Configuration and save the configuration.
The device will reset, just wait for it to return.

WeMos pins vs ESP8266 pins

The WeMos boards have a different pin layout than the ESP8266 layout used in the Tasmota software. The table below shows the correlation:

WeMos Pin Function ESP-8266 Pin
TX TXD TXD
RX RXD RXD
A0 Analog input, max 3.3V input A0
D0 IO GPIO16
D1 IO, SCL GPIO5
D2 IO, SDA GPIO4
D3 IO, 10k Pull-up GPIO0
D4 IO, 10k Pull-up, BUILTIN_LED GPIO2
D5 IO, SCK GPIO14
D6 IO, MISO GPIO12
D7 IO, MOSI GPIO13
D8 IO, 10k Pull-down, SS GPIO15
G Ground GND
5V 5V
3V3 3.3V 3.3V
RST Reset RST

WeMos DHT11 Shield

To configure the DHT11 shield we return to the Configuration screen. The DHT11 uses D4 on the WeMos and therefore GPIO2 on the ESP8266.

Set GPIO2 to DHT11 like below:

After saving the configuration and the required reset we should see the following screen:

WeMos Relay and Button Shield

To configure the Relay and Button shield go to the Configuration screen. The Relay uses D1 on the WeMos and therefore GPIO5 on the ESP8266. The Button uses D3 on the WeMos, GPIO0 on the ESP8266.

Set GPIO5 to Relay and the GPIO0 to the Button:

Both the webinterface and the button can now be used to toggle the relais on and off.

Настройка среды программирования Arduino IDE

По умолчанию среда IDE настроена только на AVR-платы. Для платформ, представленных ниже, необходимо добавить в менеджере плат дополнительную поддержку.

1) Открываем среду программирования Arduino IDE.

2) В пункте меню File (Файл) выбираем Preferences (Настройки). В окне Additional Boards Manager URLs вводим через запятую адреса http://arduino.esp8266.com/stable/package_esp8266com_index.json и https://dl.espressif.com/dl/package_esp32_index.json.

3) Нажимаем OK.

4) В пункте меню Tools (Инструменты) -> Board (Плата) выбираем Boards manager (Менеджер плат).

Находим в списке платформы на ESP8266 и нажимаем на кнопку Install (Установить).

6) Надпись INSTALLED сообщает, что дополнения успешно установлены.

7) Аналогичным образом устанавливаем дополнение для ESP32.

8) Теперь нам доступны к программированию платформы с модулем ESP8266 и ESP32.

9) Для подключения плат к платформе Интернета вещей используем библиотеку EspMQTTClient. Чтобы ее установить, в пункте меню Tools (Инструменты) выбираем Manage Libraries (Управлять библиотеками). Находим и устанавливаем библиотеку EspMQTTClient. Может появиться сообщение об установке дополнительных библиотек. Выбираем “Install all”.

Примечание — Также для работы с платами понадобится установить драйверы CH340 (WeMos и Goouuu) и CP2102 (для остальных). Их отсутствие повлияет на то, найдет ли Arduino IDE COM-порт, к которому подключена плата.

Прошивка WeMos, примеры скетчей

Мигание светодиодами

Сам скетч выглядит следующим образом:


int inputPin = D4; // подключение кнопки в контактам D4 и GND. Можно выбрать любой пин на плате

int val = 1; // включение/выключение хранения значения

void setup() {

pinMode(BUILTIN_LED, OUTPUT); // подключение светодиода, перевод в режим OUTPUT

pinMode(inputPin, INPUT); // включение пина для входных данных

}

void loop() {

val = digitalRead(inputPin); // чтение входных данных

digitalWrite(BUILTIN_LED, val); // включение/выключение светодиода по нажатию кнопки

}

Если все выполнено правильно, нужно нажать кнопку, и светодиод загорится. При повторном нажатии потухнет.

Для автоматического мигания светодиода интервалом в две секунды используется следующий код:


void setup() {

pinMode(3, OUTPUT); // инициализация контакта GPIO3 с подключенным светодиодом

}

void loop() {

digitalWrite(2, HIGH);   // светодиод загорается

delay(2000);              // ожидание в течение двух секунд

digitalWrite(2, LOW);    // светодиод гаснет

delay(2000);              // ожидание в течение двух секунд

}

WeMos и подключение к WiFi для передачи данных на удаленный сервер

В примере будет рассмотрен скетч для создания веб-сервера, благодаря которому можно управлять различными устройствами – лампами, реле, светодиодами и другими.  Для работы нужно установить библиотеку ESP8266WiFi.

Фрагменты скетча:


const char* ssid = "****"; //требуется записать имя точки доступа, к которой будет произведено подключение

const char* password = "****"; //введение пароля точки доступа, который должен содержать не менее восьми символов

WiFiServer server(80);  //создание сервера на 80 порту

WiFi.begin(ssid, password); // подключение к заданной выше точке доступа, ее имя и пароль

pinMode(3, OUTPUT);   //присоединение к пину GPIO3 и земле

while (WiFi.status() != WL_CONNECTED) //показывает статус подключения, WL_CONNECTED указывает на установку соединения;

Serial.println(WiFi.localIP()); //получение IP адреса. Его нужно ввести в строку адреса в браузере для получения доступа к управлению устройством

Serial.println(WiFi.macAddress()); //получение MAC адреса

Serial.println(WiFi.SSID()); //получение имени сети, к которой подключился WeMos

WiFiClient client = server.available(); //проверяет, подключен ли клиент

Serial.println("client");

while(!client.available()) //ожидание отправки данных от клиента

String req = client.readStringUntil('\r');

Serial.println(req);

client.flush(); //Чтение первой строки запроса

Создание точки доступа на WeMos

В данном примере модуль WeMos будет сконфигурирован в качестве самостоятельной точки доступа.

Создание точки доступа выполняется по следующему алгоритму:

  • Подключение модуля;
  • Запуск среды разработки Arduino IDE;
  • Выбор порта, частоты, размера флэш-памяти;
  • Запись с коде программы имени сети и создание пароля;
  • Компиляция и загрузка скетча;
  • Установить скорость 115200;
  • Должно произойти подключение к сети, будет получен IP и выведен в терминал;
  • Для проверки можно ввести в адресной строке в браузере IP/gpio/1, если все работает корректно, должен загореться светодиод на плате.

Фрагменты программы:


const char *ssid = «****»; //в этой строке нужно задать имя создаваемой сети

const char *password = «»; //указывается пароль сети, если не указывать пароль, то сеть будет открыта

При создании пароля важно помнить, что он должен состоять не менее чем из восьми знаков

WiFiServer server(80);

WiFi.softAP(ssid, password); //создание точки доступа с именем и паролем, которые указывались выше. Если пароль не указывался, softAP(ssid, password) меняется на softAP(ssid)

IPAddress myIP = WiFi.softAPIP(); //получение адреса IP

Serial.print(«AP IP address: «); //вывод полученного адреса в терминал

server.begin(); // запуск сервера

Распиновка Mini-USB

Разъемы Mini-A и Mini-B появились на рынке в 2000 году, использовали стандарт USB 2.0. К сегодняшнему дню мало используются из-за появления более совершенных модификаций. Им на смену пришли микросоединители и модели ЮСБ типа C. В разъемах мини используется 4 экранированных провода и ID-функция. 2 провода используют для питания: питающий +5 В и заземление GND. 2 провода для приема и отправки дифференциальных сигналов данных, обозначаются D+ и D-pin. Data+ и Data- сигналы передаются по витой паре. D+ и D-работают всегда вместе, они не являются отдельными симплексными соединениями.

В USB-разъемах используется 2 вида кабелей:

  • экранированный, 28 AWG витая, мощность 28 AWG или 20 AWG без скрутки;
  • неэкранированный, 28 AWG без скрутки, мощность 28 AWG или 20 AWG без скрутки.

Длина кабеля зависит от мощности:

  • 28 — 0,81 м;
  • 26 — 1,31 м;
  • 24 — 2,08 м;
  • 22 — 3,33 м;
  • 20 — 5 м.

Многие производители цифровой техники разрабатывают и комплектуют свою продукцию разъемами другой конфигурации. Это может вызвать сложности с зарядкой мобильного телефона или других аппаратов.

Watch this video on YouTube

Распиновка витой пары или как обжать разъём сетевого интернет кабеля?

Как подключить розетку фаркопа к автомобилю: схема розетки прицепа

Какого цвета и как обозначаются провода ноля, фазы и земли в электрике?

Как подключить сетевую интернет розетку RJ-45 — схема распиновки

Как подключить кабель от компьютера или ноутбука к телевизору?

Как самостоятельно подключить электроплиту?

Область применения

С появлением микроконтроллеров WeMos стало намного проще заниматься программированием приборов. Плата занимает центральное место в комплексе программ и аппаратных составляющих. Ее можно назвать электронным конструктором, удобной платформой для разработки устройств управления и автоматизации.

Область применения контроллеров WeMos постоянно расширяется:

  • автомобильные датчики;
  • детские игрушки;
  • зарядные устройства;
  • пульт управления для бытовой техники;
  • датчики температур, термометры;
  • робототехника;
  • спутниковые навигационные системы;
  • система для обработки и передачи данных;
  • устройства ввода.

К этому маленькому компьютеру можно подключить дополнительные составляющие: индикаторы, клавиатуру, светодиоды и другие компоненты. После подключения и написания рабочей программы микроконтроллер будет исправно функционировать. Идей для реализации множество.

Tiny RTC with EEPROM at 32 Kbps

Tiny RTC Module for Datalogger

  • Tiny RTC with EEPROM at 32 Kbps:
    • RTC on the chip DS1307. The power supply Voltage of the chip 5 V.
    • Memory EEPROM 32 Kbps (Chip AT24C32).
    • The Conclusions do not coincide with the Wemos D1 Mini, although the dimensions are compatible, so it is inconvenient to use it.
    • The RTC Module uses the I2C interface, but you cannot display the bus address on the board.
    • Module Dimensions, MM: 28×25.
    • Battery for power supply: CR2032
    • Price with delivery to Russia: 0.34 USD
    • The Module is available from a large number of vendors on Aliexpress.

The Main advantage of the board-low price and the presence of the EEPROM chip on the motherboard. In some cases, a significant capacity SD card is not needed and overpay because of this extra 300 rub do not want.

Unfortunately, the normal version of this module, which would «sit» on the connector of the DEVOPERERSKIH boards could not find.

Описание платы

Свойства arduino pro mini аналогичны, как и у платы Ардуино Уно и Нано. Их отличие заключается в невозможности прошить Pro Mini по USB-UART. Вместо этого для создания связи с компьютером используется проводник FTDI с преобразователем интерфейса или дополнительная плата Sparkfun. Также есть отличия по скорости, с которой работает чип. У arduino про мини скорость ниже, чем у Ардуино уно, но это практически не сказывается на проектах. 

Работать с Ардуино про мини нужно аккуратно. Если пользователь сожжет чип, подав на него чрезмерное напряжение, его будет невозможно вытащить и заменить. 

Разъемы не припаяны к платформе. Произвести подключение можно как через разъемы, так и навесным монтажом. Ножки можно припаять.

Существует 2 модели микроконтроллера arduino pro mini – на 3,3 В и 5 В. В первой используется тактовая частота 8 МГц, вторая работает на 16 МГц. Какая именно это модель, должно быть указано на корпусе. 

Скетч в микроконтроллер традиционно записывается через среду разработки Arduino IDE. Для загрузки кода потребуются специальные переходники. Изначально продается с уже установленной прошивкой. 

Технические характеристики микроконтроллера arduino pro mini:

  • Рабочее напряжение 3,3 В и 5 В (в зависимости от модели);
  • 14 пинов, 6 из которых используются как выводы ШИМ;
  • Постоянный ток для входа и выхода 40 мА;
  • Суммарный ток выводов – не более 200 мА;
  • 16 Кб флэш памяти, 2 Кб используются для загрузчика;
  • 1 Кб оперативной памяти;
  • 512 байт eeprom;
  • Тактовая частота – 8 МГц или 16 МГц в зависимости от модели;
  • I2c интерфейс;
  • Размеры платы 18х33 мм.

Питание можно подавать тремя способами:

  • Через переходник FTDI;
  • При подаче стабилизированного напряжения на контакт Vcc;
  • При подаче напряжения на контакт RAW.

Какие проекты можно реализовать на базе Ардуино Про Мини:

Управляемые конструкции для квадрокоптера; 

  • Таймер;
  • Устройство для анализа влажности почвы;
  • Автоматический полив растений;
  • Устройство для измерения осадков и скорости ветра;
  • Автоматизация аквариума.

И многие другие проекты для дома и дачи. 

Что куда подключать в автомагнитоле

Выходные колодки на магнитолах могут быть разными по размеру и компоновке проводов. Хорошая новость в том, что производители стараются придерживаться определённых правил в выборе цветов для каждой из систем. И этим можно воспользоваться.

Разъемы на магнитолах

Чаще всего цвета проводов на каждую из систем отводятся такие:

  • Жёлтый и красный — питание 12 вольт. Жёлтый — от аккумулятора, красный — от зажигания, это управление.
  • Белый, фиолетовый, зелёный и серый (и их варианты с чёрными или белыми полосками) — на аудиосистему.
  • Чёрный — масса.
  • Синий — антенный выход.

Цвета проводов подключения аудиосистемы могут несколько различаться. А вот на питание и массу будут именно такие цвета.

Схема штатного подключения по которой просто понять что куда надо подавать

С питанием будем разбираться дальше, а в этом разъёме поговорим о подключении аудиосистемы и антенны. С антенной всё просто — синий провод. Временно сюда можно «повесить» даже просто кусок проволоки, а можно — покупную или самодельную антенну.

Аудиосистема редко бывает сложной. Чаще всего ставят одну-две колонки. Их подключаем к любой паре проводов из перечня. Пара — это сиреневый и сиренево-черный или сиреневый с белым, например.

Основной цвет говорит о том, что этот вывод является положительным, «+». Белая или чёрная полоса говорит о том, что вывод отрицательный «-«. Это необходимо учитывать при подключении динамиков. На них обязательно будет указано плюс и минус подключения.

Один из проводов пары сажаем на один вход динамика, второй — на другой. После подачи питания в колонках появится звук.

Как лучше соединять провода

В зависимости от того, в каком состоянии вам досталась автомагнитола, она может иметь выходную колодку, а может — пучок проводов. Оба варианта пригодны к работе. Второй вариант предпочтительнее, так как проще сделать качественное соединение. Если в машине сей девайс использовать больше не планируете, колодку ISO проще обрезать. Ну, или те провода, которые понадобятся отрезать от колодки.

Соединение проводов при подключении автомагнитолы

Если решили колодку сохранить, при соединении проводники зачищаем и вставляем в гнёзда напротив проводов нужного цвета. Если выбрали вариант «провода без колодки», концы нужных проводников надо зачистить от изоляции (на 0,8-1,0 см). Затем, в процессе работы, соединяемые провода плотно скручивают. Если имеете паяльник, лучше после испытаний — когда будете уверены, что всё работает, все скрутки пропаять.

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

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) Видим появление данных на платформе.

В Китае

Ical Value

CT Output Type Rburden Rgain (for 5V) ICAL (for 5V) Rgain (for 3.3V) ICAL (for 3.3V)
SCT-013-005 Voltage None 130 kΩ 2.83 None* 5.0
SCT-013-010 Voltage None 130 kΩ 5.66 None* 10.0
SCT-013-015 Voltage None 130 kΩ 8.49 None* 15.0
SCT-013-020 Voltage None 130 kΩ 11.31 None* 20.0
SCT-013-025 Voltage None 130 kΩ 14.14 None* 25.0
SCT-013-030 Voltage None 130 kΩ 16.96 None* 30.0
SCT-013-050 Voltage None 130 kΩ 28.28 None* 50.0
SCT-013-060 Voltage None 130 kΩ 33.94 None* 60.0
         
SCT-006 Current 10 Ω 17 kΩ 11.62 28 kΩ 17.5
SCT-013-000 Current 10 Ω 40 kΩ 56.57 75 kΩ 85.71
SCT-019 Current 10 Ω 24 kΩ 116.13 40 kΩ 171.43

Заключение

Платы на базе esp8266 – лучший способ организовать работу с сетью в ваших DIY проектах. Вы можете использовать большое количество разнообразных модулей и готовых плат, но WeMos – один из самых удобных способов. Плата похожа на Arduino Uno, достаточно легко подключается к датчикам и прошивается через Arduino IDE.

Уменьшенный аналог WeMos mini вообще можно назвать уникальным устройством, т.к. в очень компактном корпусе вы получаете не только почти все удобства и возможности Arduino, но и полноценный WiFi модуль. Можно даже обойтись без монтажа – просто вставляя различные модули расширения (шилды) WeMos как в матрешке, одну в другу. А недорогая цена делает эту плату абсолютным фаворитом для тех, кто делает умные устройства с возможностью выхода в интернет.