Wifi esp8266 – новый шаг в проектировании домашних устройств с беспроводным интерфейсом

esp8266 – Сообщество разработчиков

Краткая пошаговая инструкция в форме презентации по созданию за один вечер собственного мобильного приложения дополненной реальности (AR — Augmented Reality), взаимодействующее с ESP8266 или другими вашими DIY устройствами. Открытый и простой исходный код — 8 килобайт JavaScript и всего 45 строк кода в Arduino IDE для ESP8266. Попробуйте пример на GooglePlay. Все ссылки на используемые инструменты и библиотеки на последней странице презентации.

Загрузите специальный графический маркер и откройте его на полный экран монитора или распечатайте на обычном принтере, затем запустите приложение и наведите камеру на изображение маркера.

Приложение распознает маркер и отобразит кнопку, которую можно нажать.

Действие по нажатию кнопки задается в исходном коде приложения, но в качестве примера предоставляется код для включения/выключения светодиода на ESP8266.

4refr0nt

Купить ESP8266 в розницу по разумной цене

В преддверии наступающего Нового Года пора подумать об иллюминации праздника и, конечно же, своими руками. Наилучший кандидат для этого — светодиоды WS2812. Подробностей и внутренне устройство не привожу, потому как пытливые легко погуглят. Даю инструкцию в несколько кликов с тремя проводками. И даже скотч или синяя изолента не понадобятся.

Читать далее

Это пошаговое руководство с большим количеством скриншотов рассчитано, в первую очередь на тех, кто только начинает знакомится с электроникой, либо не использовал EasyEDA ранее, однако, надеюсь, что и профи смогут почерпнуть что-то полезное.

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

Читать далее

Недавно Espressif анонсировала новый чип ESP32, который позволяет использовать Wi-Fi и Bluetooth через SPI/SDIO или I²C/UART интерфейсы. Чип готов к работе и автономно с помощью встроенного ПО и под управлением внешнего контроллера.

ESP32 разработан специально для мобильной электроники, интернета вещей, поэтому особое внимание уделено энергопотреблению.

Espressif ESP32

Отличительные особенности

  • поддержка Bluetooth и Wi-Fi
  • увеличенная скорость Wi-Fi: 802.11 b/g/n до 150 Мбит/с
  • Мощный процессор: двухъядерный Xtensa LX6 около 400DMIPS, до 600DMIPS при напряжении ядра 1.2 В
  • Большое число поддерживаемых интерфейсов: 4х SPI, 32х GPIO, 2х UART, 16 каналов ADC, 2 канала DAC, сенсорный датчик и датчик температуры
  • 2 системных сторожевых таймера (Watchdog) и часы реального времени
  • Широкий диапазон рабочих температур: -40°C…+125°C.

Чтобы получить образцы чипа для тестирования, пожалуйста, отправьте нам заявку на info@euroml.ru или позвоните по телефону 8 800 555 7576 (звонок по России бесплатный), В Украине, Запорожье: Тел./факс: +380 (61) 213-41-77, info@euroml.com.ua

компания «ЕвроМобайл», www.euromobile.ru

Сервис RemoteXY позволяет создавать графические интерфейсы для управления микроконтроллерными устройствами с мобильного приложения. Что бы создать интерфейс, необходимо его сконструировать в редакторе на сайте remotexy.

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

Для подключения к контроллеру устанавливаем мобильное приложение RemoteXY на смартфон/планшет. Вся прелесть в том, что код графического интерфейса хранится в микроконтроллере.

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

Желание управлять всем в своем доме или квартире есть у многих наших читателей и часть из них уже преуспела в этом деле, но эта статья больше для тех, кто не успел закупиться по нормальному курсу и теперь кусает локти. Я расскажу как можно недорого поставить брокер mosquitto буквально «рядом с вашим роутером» с поддержкой WebSockets для управления вашими устройствами из IoT Manager. Читать далее

IoT Manager может обмениваться командами и данными с любыми устройствами, поддерживающими MQTT. Я продемонстрирую вам взаимодействие с ESP8266, причем сразу с двумя модулями. В этот раз я не буду поднимать локальный MQTT брокер (в одной из предыдущих статей мы поднимали mosquito на OpenWRT), а воспользуемся бесплатным аккаунтом (до 10 клиентов) CloudMQTT.com. Подробности под катом.

Читать далее

Источник: https://esp8266.ru/

Обзор WiFi-модуля для самоделок и «умного дома» ESP8266

ESP8266 «Witty Cloud» — самый удачный на данный момент WiFi-модуль для самоделок и «умного дома»

Разные варианты реализации модуля ESP8266 обозревались тут не раз, и заслуженно. Этот мелкий, с монету, чип с WiF на борту может работать и точкой доступа, и клиентом и программируется как угодно — и продаётся за считанные доллары.

Не успели мы привыкнуть к мысли, что всякие интересные поделки можно сделать на грошовой Arduino, Attiny или STM — как и устройства с WiFi и мощными процессорами на 80 мегагерц стали им конкурентами по цене. (Чёрт, у меня процессор в первом собственном компьютере был немногим быстрее, какой же я старый).

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

За что мы «любим» разные варианты ESP8266:

  • Они питаются от 3.3 вольт, а не от более привычных пяти
  • Им в пике надо ток до 320mA, что не под силу обычным преобразователям USB-TTL
  • Шаг между выходами платы обычно составляет не стандартные 2,54 мм, а 2 мм ровно — что делает пайку затейливым приключением
  • Есть только одна версия платы с шагом между контактами 2,54 мм («ESP8266-01»), но у неё минимум полезных контактов
  • В режим программирования чип переводится замыканием контактов, что требовало сноровки. Либо припаивания кнопки
  • С Reset та же беда — либо отключать питание, либо кнопку паять

И тут китайпром выдал «ESP8266-12E» под названием «Witty Cloud»:

Плата представляет собой «бутерброд» из двух. На верхнем слое (слева на обоих фото) сам чип ESP8266, под ним — разъём питания MicroUSB и регулятор напряжения AMS1117-3.3, задача которого — превратить 5 вольт в 3.3. По datasheet регулятору по зубам токи до 0.8А, так что для питания чипа этого хватает с лихвой. Там же — кнопка Reset для перезагрузки.

Чтобы было чем занять пустующие углы платы, китаец впихнул туда RGB LED и фоторезистор, о них — позже.

На нижнем слое «бутерброда» (на фото справа) расположился полноценный MicroUSB, чип CH340G и кнопки «Flash» (режим прошивки) и «Reset».

«Бутербродность» даёт бoльшую свободу действий. Вы можете подключить «бутерброд» к компьютеру в нижний (полноценный) разъём USB, перепрограммировать его — и затем встроить в вашу поделку только верхнюю часть, сэкономив на размерах корпуса.

Более того, низ «бутерброда» можно использовать для программирования самодельных модулей. Я сам паял завалявшиеся модули ESP8266-12 и ESP8266-07 на не очень удачные платы-адаптеры за $2,22 и приделывал «на соплях» регуляторы AMS1117 — оба работали безо всяких проблем и оказались стопроцентно совместимы по разъёмам и кнопкам:

Ладно, хватит нахваливать модуль, давайте сделаем что-нибудь полезное.

На странице продавца рекламируется какой-то SDK и даже какое-то китайское «облако» для устройств на базе ESP8266 и Android, правда информации о них на английском (почти) нет. Раз так, махнём на них, запустим Arduino IDE 1.6 и полезем в настройки.

В окно «Additional URLs» вставим строку

Код:
http://arduino.esp8266.com/package_esp8266com_index.json

Затем откроем «Boards manager» и введём в строку поиска «ESP8266». Нажмём Install и приготовимся ждать, пока скачается аж 130 мегабайт пакетов:

Подключим «бутерброд» к компьютеру в нижний (полноценный) разъём MicroUSB. Windows должна определить конвертер USB-TTL «CH340G» и присвоить ему виртуальный порт. Именно этот порт мы и укажем в настройках Arduino IDE. Остальные настройки такие:

Закинем в память элементарный код

Код:
#include const char* ssid = “??? имя вашей точки WiFi ???”; const char* password = “??? пароль ???”; WiFiServer server(80); void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print(“.”); } server.begin(); Serial.print(“IP-адрес нашего модуля: “); Serial.println(WiFi.localIP()); } void loop() { WiFiClient client = server.available(); if (!client) { return; } while(!client.available()){ delay(1); } client.flush(); String s = “HTTP/1.1 200 OKrnContent-Type: text/plainrnrnhello from esp8266!n”; client.print(s); delay(1); }

Обратите внимание — в процессе прошивки кнопку Flash жать не нужно — плата обо всём позаботится сама.

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

Либо с помощь Arduino serial monitor (скорость порта — 115200), либо в вебинтерфейсе роутера подсматриваем IP-адрес, который заполучил в домашней WiFi-сети наш ESP8266. Открываем этот адрес в браузере компьютера или телефона:

Наше устройство подключилось к домашней сети, подняло веб-сервер и нам отвечает.

Убедились в работоспособности устройства? Едем дальше.

Для того, чтобы оно сгодилось на что-то полезное в быту, интересно «подружить» его, например, с реле. Правда, классические реле на 5 вольт по определению отпадают — слишком велик риск, что напряжения 3.3 вольта не хватит, чтобы электромагнит смог сдёрнуть якорь. Поэтому берём твердотельное реле Omron за $1.90. По даташиту имеющегося у нас напряжения ему хватит для чёткого срабатывания:

Подключаем «плюс» и «минус» к контактам VCC и GND верхнего слоя «бутерброда», а третий, сигнальный, провод — к, например, контакту GPIO 2. В качестве программы можно взять скетч WiFiWebServer, который прилагается к библиотеке Ардуино.

Я для теста взял простую галогеновую лампочку на 20Вт и вдоволь ей «нащёлкался»:

Срабатывание происходит за долю секунды после подачи команды. Чтобы проверить надёжность, я вставил в код простенький счётчик и набросал простой bat-файл, который с паузой в секунду включал и выключал лампочку.

До кучи открыл пару дополнительных окон, из которых начал бомбардировать IP-адрес модуля бесконечной командой ping. Через несколько часов счётчик включений-выключений превысил 19 тыс.

, но всё работало — что вселяет некоторую уверенность в надёжности устройства.

Если вы дочитали досюда, но в голове крутится мысль «что-то это всё сложно», у меня для вас заготовлено приятное

Помните, я упоминал, что китайский производитель «на сдачу» поставил на плату RGB-светодиод и фоторезистор? С ними можно поэкспериментировать, даже если у вас нет никаких иных датчиков и прочей периферии.

В этом варианте сделать над собой усилие и запустить Arduino IDE вам потребуется ровно один раз.

  • Откройте www.blynk.cc/getting-started/
  • Скачайте оттуда мобильное приложение (есть как под Андроид, так и под Айфон)
  • Запустите приложение и получите свой уникальный ключ («token»). Его можно не переписывать, а одним нажатием кнопки отправить себе на почту.
  • Установите в Arduino IDE библиотеку github.com/blynkkk
  • Из меню File — Examples — Blynk — Boards and Shilelds откройте пример «ESP8266 standalone»
  • В пример впишите (а) название вашей сети (б) пароль от неё и (в) ключик, который вы получили от приложения на Email
  • Залейте код в ESP8266
  • Всё, можете выключать компьютер, он вам больше не понадобится. Всё остальное мы будем делать в приложении.

Экран приложения — это пустое поле, на котором можно, как на приборной доске, разместить элементы. Для начала попробуйте «zeRGBa» и «gauge»:

В настройках «зебры» укажите, что трёхцветный светодиод на плате подключён к пинам 12 (зелёный), 13 (синий) и 15 (красный):

В настройках «gauge» укажите, что фоторезистор на плате подключён к аналоговому входу «adc0»:

Активируйте то, что вы наваяли, нажав на кнопку в правом верхнем углу. Вы увидите, что жёлтый индикатор меняет показания в зависимости от освещённости, а RGB LED на «бутерброде» меняет цвет, когда вы тыкаете по «зебре»:

Практика показала, что эта штуковина очень нравится детям. Одно дело — играть на планшете в чужие игры, другое — это сделать и раскрасить «пульт» самому и управлять чем-то осязаемым.

Достаточно взять на себя подготовительную часть в Arduino, а затем показать, как этим пользоваться, выдать несколько светодиодов, кнопок или деталек типа аналогового датчика температуры LM35 — у вас немедленно отберут «игрушку» и чадо будет занято надолго. За уши не оторвёте, проверено.

Для быстрого создания прототипов Blynk также оказался очень удобен — проще набросать кнопки и переключатели там, чем городить собственный вебинтерфейс. Сэкономленное время можно с большей пользой потратить на сборку очередной поделки.

Резюме

По цене немногим выше 200 рублей вы получаете очень мощное и вполне самостоятельное устройство, на котором можно программировать всякие полезности для дома — и управлять ими по WiFi.

«Бутерброд» оказался на диво удачным. Он менее чем на доллар дороже «голого» ESP8266-12, но экономит вам кучу времени и хлопот. Ворох проводов и макетка — не нужны.

Ход с предустановкой на плату LED и фотодатчика — очень удачный. Даже если у вас кроме модуля и кабеля MicroUSB ничего нет, вы всё равно можете хоть что-то для начала испробовать и получить удовольствие от покупки. Если они не нужны на готовом изделии — просто отпаяйте или срежьте.

По такой цене «бутерброд» — явный конкурент Arduino Nano, и делает очень ненужными модули Bluetooth (типа HC-05) и тем более — радиомодули NRF24L01+.

Ссылка на магазин:

Проверенный магазин…>>>

17.07.2016, 15:32

Источник: http://picofarad.ru/obzor-wifi-modulya-dlya-samodelok-i-umnogo-doma-esp8266/

Универсальный IoT контроллер на базе ESP8266

На данный момент контроллер выполнен на односторонней печатной плате. Питание можно подавать от любого источника +5V (разъем USB).

Поддерживаемые датчики и дисплеи

  • DHT11/DHT22 (влажность)
  • 1-Wire DS18B20 (температура)
  • I2C LM75 (температура)
  • I2C DS1621 (температура)
  • I2C BMP085/BMP180 (температура+давление)
  • I2C BH1750 (освещённость)
  • I2C INA219 (ток и напряжение для слаботочных цепей)
  • I2C AM2313 (температура+влажность), в процессе
  • I2C конвертор для дисплеев 1602, 1604, 2004

Поддерживаемые сервисы

Возможные варианты использования

  • Домашняя метеостанция – атмосферное давление, влажность, температура в доме и на улице
  • Управление насосом в отопительной системе (Heatpump monitor)
  • Управление системой получения и накопления солнечной энергии (Solar Monitoring)
  • Контроль расхода электроэнергии (Electricity monitor)

Стартовая страница модуля

Разработка нового дизайна страниц модуля (прототип)

Благодарности

  • Автору уникальной прошивки для ESP8266
  • Автору первоклассного сервиса Народный Мониторинг
  • eeyura – за помощь в разработке первых макетов и схем печатной платы для ESP8266
  • sergg – за помощь в изготовлении печатных плат ESP8266 для проекта Homes-Smart
  • neorender – за помощь в отрисовке наглядных и красивых схем для начинающих

Правила хорошего тона

При включении отправки данных на сервис ThingSpeak, пожалуйста установите теги “homes-smart” и “esp8266” в своем канале. Это очень поможет разработчикам ПО. После активации тегов, вы можете проверить наличие своего устройства в группе Homes-Smart

Виды прошивок

FlyMon DMS – система мониторинга

Отправка данных на Народный Мониторинг

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

С 07.01.2015 набор-конструктор “Homes-Smart 01” официально представлен в разделе hardware на сайте narodmon.ru

Отправка данных на ThingSpeak

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

  • field1 => DHT1 / AM2321 temp
  • field2 => DHT1 / AM2321 humidity
  • field3 => BMP temp
  • field4 => BMP pressure
  • field5 => DHT2 temp
  • field6 => DHT2 humidity
  • field7 => DS18B20 / LM75 temp
  • field8 => BH1750 light

Подключение датчиков к модулю ESP-01

Расширенный вариант, схема кликабельна.

Плата для базовых экспериментов – Homes-Smart-01

На первом варианте платы (размер 30×75 мм) размещены :

  • Модуль ESP-01 (основной)
  • Модуль BMP180 (датчик температуры и давления)
  • Модуль BH17150 (датчик освещенности)
  • Преобразователь DC/DC 5V/3,3V LD1117
  • Датчик температуры LM75 или DS1621
  • Клеммы для подключения внешнего датчика DS18B20
  • Кнопка перевода модуля ESP в режим прошивки
  • Гребёнка для подключения датчиков, дисплеев, устройств и ПК для прошивки

Добавлено описание и номиналы деталей, перемычки выделены синим цветом.

Рисунок печатной платы ver.0.1.1 в формате Sprint Layout доступен по данной ссылке .

Добавлен второй вариант печатной платы.

Рисунок печатной платы ver.0.1.2 в формате Sprint Layout доступен по данной ссылке .

Фото сборки первых тестовых плат Homes-Smart-01

Подключение модуля к ПК

Источники питания

Ссылки

Источник: https://zftlab.org/pages/2014110100.html

Сеть из модулей ESP8266. Основа IoT. Шаг №58

Всем привет. Сегодня мы с Вами продолжим тему Интернета вещей, а именно основу создания сети устройств для взаимодействия, используя модуль WiFi ESP8266, с которым мы познакомились в прошлой статье. Где рассмотрели его подключение, характеристики, команды и многое другое.

Сегодня мы попробуем связать два модуля, образовав при этом небольшую сеть. Разберем каким образом они подключаются друг к другу, принцип работы, последовательность команд. Ну и конечно же все это реализуем на небольшом примере.  На рисунке ниже приблизительная схема, которую мы попробуем реализовать. Два модуля М1 и М2, сервер и клиент.

На рисунке также представлено два варианта точки доступа, первый – точка доступа непосредственно сам модуль, второй роутер. Также браузер на ПК по схеме также обращается к модулю в качестве еще одного клиента (этот пример мы разбирали в прошлой статье). Ниже модулей расписаны основные команды. Итак, поехали.

Используем макетную плату из предыдущей статьи, добавим к ней еще один модуль. На рисунке ниже модель устройства.

Один модуль у нас подключен к мк, который и будет управлять модулем (чему мы научились в прошлой статье), второй подключим к терминалу. В идеале конечно иметь два переходника usb-uart для наладки, но довольствуемся тем, что имеем.

Итак основной принцип, заключается в том что на одном из датчиков должен крутится сервер, а остальные клиенты. Судя по описанию модуль может обслуживать пять радиоканалов, т.е. пять клиентов. Значит модуль который подключен к мк, будет клиентом, второй сервером. Скажем так, применим статические настройки.

Но как Вы понимаете используя мк и динамическую настройку модуля клиент/сервер мы можем в любой момент менять топологию сети. Все зависит от полета фантазии))). Итак вернемся к нашей макетке. Рассмотрим команды (первый рисунок в статье).

Первое что мы сделаем — это настроим работу модуля, а именно настроим его в совмещенном режиме т.е. как точка доступа, так и станция командой AT+CWMODE=3 (разбирали в прошлой статье). Не забудем передернуть модуль, чтоб настройка вступила в силу.

Причем, настроим модуль один раз, так как команда сохраняется в памяти. Теперь нам необходимо узнать настройки для точки доступа и IP адрес следующими командами соответственно. Значение IP-адреса:

AT+CIFSR

+CIFSR:APIP,”192.168.4.1″
+CIFSR:APMAC,”1a:fe:34:cf:45:a5″
+CIFSR:STAIP,”192.168.1.35″   По этому адресу к этому модулю будут обращаться клиенты.  +CIFSR:STAMAC,”18:fe:34:cf:45:a5″

OK

Узнаем данные точки доступа на модуле. Также с помощью данной команды можно произвести конфигурацию: имя точки, пароль, номер канала, шифрование доступа.

AT+CWSAP?

+CWSAP:”ESP_CF45A5″,”«,1,0    (0 — без пароля)
OK Все полученные данные занесем в другой модуль, который будет выступать клиентом. Теперь выполним последовательность команд, причем их придется выполнять каждый раз после сброса или включения:

AT+CIPMODE=0

AT+CIPMUX=1
AT+CIPSERVER=1   Порт не указываем по умолчанию 333. Мы их рассмотрели в предыдущей записи. Все сервер запущен. Все перейдем к модулю c микроконтроллером. Здесь также настроим изначально совмещенный режим и точку доступа на модуль на котором подняли сервер и порт.

AT+CWMODE=3

AT+CWJAP=»ESP_CF45A5″,”«
И еще одно теперь на модуле, на котором вращается сервер, можем просмотреть IP станции, подключенной к ESP8266 в режиме softAP.
AT+CWLIF
192.168.4.2,18:fe:34:d1:b9:c9
OK

Ниже измененный кусок программы, которую я выложил архивом в прошлой статье. Здесь производим настройку модуля на работу клиентом и в бесконечном цикле отправляем данные на сервер. На скриншоте ниже прием данных модулем (+IPD,0,2:22), а также передача данных по открытому радиоканалу, в данном случае 0, модулю-клиенту (AT+CIPSEND=0,3 OK > 233).

Где мы можем прописать функцию приема данных с буфера RXBuffer UART из функции сравнения данных (смотри программу). Либо же читая информацию опять же из этого буфера, сравнивать с каким либо ключом и производить управление. В самом первом рисунке в начале статьи мы указали пунктирными линиями связь модулей через роутер. Здесь в данном случае меняем точку доступа на роутер.

Прием данных происходит без изменений.

int main (void){
     // Init LED Port
     LED_DDR |= (1

Источник: http://www.ap-impulse.ru/set-iz-modulej-esp8266-osnova-iot-shag-58/

Обновление прошивки Wi-Fi модуля ESP8266

Это вторая статья автора об интегральной микросхеме ESP8266, содержащей полнофункциональный 32-битный RISC микроконтроллер и встроенную Wi-Fi схему 802.11 b/g/n. Первая статья описывала использование Arduino IDE для программирования ESP8266 и содержит важную информацию, которая здесь повторяться не будет. Если вы не читали её, то рекомендуем сделать это.

В интернете нет недостатка в информации об ESP8266; на самом деле, может быть из неё слишком много… неправильной.

Разработчики микросхемы, Espressif, по-видимому, решили не только не заниматься производством на стороне, но и избегать непосредственного участия в разработке линейки модулей ESP, которые используют микросхему ESP8266.

Вместо этого, они предлагают информацию и услуги поддержки через форум для тех, кто готов с упорством и терпением ходить по лабиринту. Добавление к путанице – это существование другого форума, который, несмотря на то, что назван esp8266.

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

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

Также иногда подозрительны “обновления” и инструменты, которые доступны в тех же источниках.

Следовательно, целью этой статьи является документирование процедуры загрузки последней доступной прошивки непосредственно от Espressif и её установка с использованием инструмента программирования, предоставляемого Espressif.

Подключение оборудования

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

На приведенной ниже схеме и фотографии показано рекомендуемое подключение; обратите внимание, что цвета проводов на схеме соответствуют цветам на фотографии.

Как вы видите, я буду обновлять прошивку на модуле ESP-01, но ти же самые соединения будут работать и с другими модулями, если используются те же входы/выходы ESP8266, как показано на схеме. Дополнительные сведения смотрите в этой статье.

Более надежная схема прошивки приведена в этой статье.

Схема подключения модуля ESP-01 к компьютеруСборка макета подключения ESP-01 к компьютеру

Программа терминала PuTTY

Когда подключение оборудования завершено, следующий шаг – включить ESP8266 и попытаться связаться с ним. Для этого требуется простая терминальная программа; мы будем использовать PuTTY, бесплатную программу, доступную здесь. Вы можете использовать другую терминальную программу, но вам придется учесть различия между ней и PuTTY.

Откройте PuTTY и нажмите на переключатель Serial. Введите номер COM порта (который должен быть меньше 10) и скорость передачи (скорее всего, это будет 115200 или 9600).

В маленьком окне Saved Sessions (Сохраненные сеансы) введите ESP8266 и нажмите кнопку Save (Сохранить). Окно PuTTY должно быть похоже на изображение ниже.

Настройка сеанса PuTTY

Нажмите кнопку Open (Открыть), после чего должно открыться окно сеанса терминала PuTTY.

Включите Caps Lock у себя на компьютере и введите AT, но не нажимайте Enter. Вы должны увидеть AT в окне терминала PuTTY. Если этого не произошло, вы, возможно, выбрали не тот COM порт или неправильную скорость передачи.

Закройте PuTTY и начните этот подраздел статье с самого начала.

Допустимые скорости передачи: 9600, 19200, 38400, 74880, 115200, 230400, 460800 и 921600; попробуйте по очереди каждую из них, пока не найдете ту, с которой всё заработает.

Когда вы увидите AT в окне терминала PuTTY, удерживая клавишу Ctrl, нажмите клавишу M, а затем J. Отпустите клавишу Ctrl. Вы должны увидеть OK в окне терминала PuTTY, как показано на рисунке ниже.

Отклик ESP8266 в окне терминала PuTTY

Обратите внимание, что если вы делаете ошибку при вводе в окне сеанса терминала, возможно, исправить эту ошибку не удастся.

Вместо того, чтобы пытаться отредактировать и исправить ошибку, часто лучше просто удерживать клавишу Ctrl и нажимать сначала клавишу M, а затем J, что сгенерирует сообщение об ошибке.

Затем вы можете начать снова и ввести правильный текст.

Когда вы увидите первое сообщение OK, это значит, что вы преодолели большое препятствие. Теперь вы знаете, что оборудование подключено правильно, модуль ESP работает, и вы правильно выбрали COM порт и скорость передачи. Закройте окно сеанса терминала PuTTY и нажмите OK, когда PuTTY спросит, уверены ли вы.

Теперь снова запустите PuTTY, выберите сохраненный сеанс ESP8266 и нажмите кнопку Load (Загрузить). Это должно поместить ранее выбранные вами настройки COM порта и скорости передачи в соответствующие окна. Нажмите Open (Открыть), и откроется новое окно сеанса терминала PuTTY.

Включите Caps Lock у себя на компьютере и введите AT, но не нажимайте Enter. Вы должны увидеть AT в окне терминала PuTTY. Введите символ +, а затем GMR. Когда вы увидите AT+GMR в окне терминала PuTTY, удерживая клавишу Ctrl, нажимите сначала клавишу M, а затем J. Отпустите клавишу Ctrl. В окне терминала PuTTY вы должны увидеть информацию о прошивке ESP8266, аналогичную показанной ниже.

Вывод информации о прошивке ESP8266 в окне терминала PuTTY

В первой строке выше вы видите команду AT+GMR, которую вы набрали. Как вы, возможно, знаете или догадались, схема команд, которую мы используем для связи с ESP8266, называется «набор AT команд», потому что все команды начинаются с букв «AT».

К сожалению, существует множество версий наборов AT команд; все они содержат некоторое количество одинаковых команд, но есть много AT команд, которые не являются стандартными для всех наборов AT команд. Даже в сообществе ESP8266 существует несколько версий.

Вторая строка указывает, что это конкретное устройство 8266 запрограммировано прошивкой, которая использует версию 0.25.0.0 AT команд. Где-то есть документ, который определяет команды, которые включены в версию 0.25.0.0, но и без этого документа вы можете использовать метод проб и ошибок для определения поддерживаемых AT команд.

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

Третья строка определяет версию программного обеспечения (SDK), которая использовалась для данного конкретного ESP8266, как версия 1.1.1. Каждый SDK также включает в себя набор AT команд, который является частью прошивки, и подходит для управления этой прошивкой. Очевидно, версия 0.25.0.

0 AT команд работает с версией 1.1.1 SDK. Но всё же нужен документ, который описывает AT версию 0.25.0.0, чтобы узнать, какие команды включены.

Существует лучший способ, описанный в следующем разделе этой статьи, но перед тем, как перейти к нему, попробуем еще одну AT команду и посмотрим, что произойдет.

Включите Caps Lock у себя на компьютере и введите AT+CWLAP. Когда вы увидите AT+CWLAP в окне терминала PuTTY, удерживая клавишу Ctrl, нажмите сначала клавишу M, а затем J. Отпустите клавишу Ctrl. Через несколько секунд окно терминала должно выглядеть так, как показано на скриншоте ниже.

Результаты вывода команды AT+CWLAP для ESP8266

AT+CWLAP заставляет ESP8266 перечислить все доступные Wi-Fi точки доступа. В приведенном выше случае были найдены две точки доступа: одна называется “ATT936”, а вторая – “tracecom 2.4”. Разумеется, ваши результаты будут отличаться и должны включать вашу собственную Wi-Fi сеть, а также сети ваших соседей.

Закройте окно сеанса терминала PuTTY и нажмите OK, когда PuTTY спросит, уверены ли вы.

ESP Flash Download Tool

Хотя это редко упоминается в интернете, Espressif, разработчики микросхемы ESP8266, создали некоторую часть программного обеспечения для обновления прошивки в своих чипах. Это ESP Flash Download Tool, и этот инструмент доступен здесь. Скачайте, разархивируйте и установите последнюю версию на вашем компьютере; на момент написания статьи это FLASH_DOWNLOAD_TOOLS_v2.4_150924.rar.

Запустите инструмент, и вы должны будете увидеть два открывшихся окна: окно графического интерфейса (GUI) с полями ввода информации и терминальное окно, в котором ведется лог выполненных действий.

Окно графического интерфейса (GUI) ESP Flash Download ToolТерминальное окно ESP Flash Download Tool

Стоит отметить несколько вещей, но нет поводов для беспокойства:

  • окно (GUI) идентифицируется как V2.3, в то время как окно журнала идентифицируется как V2.4. По-видимому, окно GUI отмечено неправильно;
  • поля выбора COM порта и скорости передачи в окне GUI могут уже содержать данные;
  • поля ввода адресов в окне GUI могут уже содержать данные;
  • окно лога уже может содержать данные.

Получение последней прошивки

У Espressif есть страница, на которой размещается последняя версия прошивки. Перейдите на страницу bbs.espressif.com, нажмите на запись SDKs в списке Downloads, а затем кликните на «latest release» в разделе Announcements. На момент написания статьи на этой странице можно было увидеть следующее:

Страница с последней версией прошивки ESP8266

Последняя версия Non-OS SDK (Software Development Kit) – это то, что нам нужно, и, похоже, что, если вы кликните на “Latest Version: 1.4.0”, то получите последнюю версию.

Но это не совсем так; обратите внимание, что имеется доступный патч, указанный как esp_iot_sdk_v1.4.1_15_10_22. Это не патч; это исправленная версия прошивки версии 1.4.0. Нам нужен он и bin файлы AT_v0.50.

Кликните по очереди на каждом из них и загрузите файлы.

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

Возможно, вы заметили, что есть раздел для скачивания документов. Все они содержат качественную информацию, но иногда существенная её часть теряется при переводе с китайского на английский. На данный момен не забудьте получить последние версии ESP8266 AT Instruction Set и Espressif IOT SDK User Manual.

Установка прошивки

Запустите ESP flash download tool и убедитесь, что ни в одном чекбоксе в левом верхнем углу окна GUI не поставлена галка. Введите COM порт, который вы используете, и скорость передачи 115200 в полях ввода в нижней части окна. Обратите внимание, что при вводе данных они записываются в окне журнала.

Подайте питание на свою сборку для программирования ESP и подключите её к компьютеру. Нажмите и удерживайте кнопку Reset, а затем нажмите и удерживайте кнопку Flash. Отпустите кнопку Reset, а затем отпустите кнопку Flash.

Нажмите кнопку START окне GUI инструмента прошивки ESP. Программа загрузки флэш-памяти должна проверить ESP8266 в вашей сборке и создать отчет, похожий на тот, что приведен ниже.

Нажмите и отпустите кнопку Reset на вашем макете, чтобы выйти из режима прошивки ESP8266 и возобновить нормальную работу.

Окно графического интерфейса ESP Flash Download Tool. Вывод информации о микросхеме ESP8266Терминальное окно ESP Flash Download Tool.

Вывод информации о микросхеме ESP8266

Обратите внимание, что теперь окно GUI содержит информацию об ESP8266, включая размер флэш-памяти (в примере 8 Мбит), тактовую частоту (в примере 26 МГц) и два MAC-адреса для чипа. Такая же информация содержится в окне журнала.

Затем кликните в окне GUI по чекбоксу с надписью “SpiAutoSet“, что заставит инструмент загрузки автоматически выбрать правильные размер флэш-памяти и тактовую частоту.

Теперь нам нужно выбрать файлы для установки в ESP8266 и установить начальный адрес памяти для каждого файла. Чтобы обновить ESP чип, необходимо правильно установить четыре файла. Откройте «Руководство пользователя Espressif IOT SDK» и найдите раздел о записи образов во флэш-память. В версии 1.4 руководства он начинается со страницы 20.

Затем найдите подраздел, который описывает версию поддерживаемую Cloud Update (FOTA), и в этом подразделе найдите таблицу о размере флэш-памяти в вашем ESP8266. В этом примере размер флэш-памяти составляет 8 Мбит, что равно 1024 килобайт, следовательно, в таблице 2 на странице 25 руководства содержится информация, необходимая для примера.

Посмотрим на рисунок ниже.

Таблица адресов флэш-памяти для загрузки файлов прошивки ESP8266

Необходимы эти четыре файла: esp_init_data_default.bin, blank.bin, boot.bin и user1.bin. Адрес, по которому должен быть установлен каждый из файлов, отображается рядом с именем файла. Первые три из необходимых файлов находятся в каталоге esp_iot_sdk_v1.4.

1_15_10_22, ранее скачанном с bbs.espressif.com, а четвертый расположен в AT_v0.50 bin files. Перейдите туда, где находятся эти загруженные файлы, и скопируйте пути к ним в поля ввода в верхней части окна GUI программы Flash Download Tool; введите правильный адрес для каждого файла в поле рядом с именем файла.

Выполните следующие шаги для каждого файла:

  • кликните внутри поля ввода “set firmware path”;
  • кликните по кнопке … справа от поля ввода;
  • перейдите к месту хранения файла и кликните по файлу. GUI автоматически введет путь к файлу в поле ввода;
  • введите правильный адрес (из таблицы) для каждого файла.

Обратите внимание, что файлы, которые должны быть загружены, могут быть не такими, как те, что указаны в таблице в этом примере, но будут близки к ним.

Теперь кликните на четыре флажка слева от имени каждого из файлов. Окно графического интерфейса программы Flash Download Tool должно быть похоже на рисунок ниже. Дважды проверьте адреса по таблице.

Настройка параметров прошивки ESP8266 в программе Flash Download Tool

На своем макете прошивки ESP нажмите и удерживайте кнопку Reset, а затем нажмите и удерживайте кнопку Flash.

Отпустите кнопку Reset, а затем отпустите кнопку Flash. Нажмите кнопку START окне GUI инструмента прошивки ESP.

Должна начаться загрузка, и её прогресс должен быть показан в окне графического интерфейса и окне журнала Flash Download Tool, как показано ниже.

Отображение процесса загрузки прошивки ESP8266 в терминальном окне Flash Download Tool

Как показано выше, успешная операция прошивки флэш-памяти приведет к тому, что все файлы будут отправлены в ESP8266, а COM порт будет закрыт.

Проверка успешности прошивки

Когда операция прошивки будет завершена, закройте программу Flash Download Tool. Снимите питание с макета программирования ESP, а затем снова подключите питание.

Снова запустите PuTTY, выберите сохраненный сеанс ESP8266 и нажмите кнопку Load (Загрузить). Это должно поместить ранее выбранные вами настройки COM порта и скорости передачи в соответствующие окна. Нажмите Open (Открыть), и откроется новое окно сеанса терминала PuTTY.

Включите Caps Lock у себя на компьютере и введите AT, но не нажимайте Enter. Вы должны увидеть AT в окне терминала PuTTY. Введите символ +, а затем GMR. Когда вы увидите AT+GMR в окне терминала PuTTY, удерживая клавишу Ctrl, нажимите сначала клавишу M, а затем J. Отпустите клавишу Ctrl. В окне терминала PuTTY вы должны увидеть информацию о прошивке ESP8266, аналогичную показанной ниже.

Вывод информации о прошивке ESP8266 в окне терминала PuTTY

Как вы можете видеть, в ESP8266 очевидно установлена новая прошивка. Она была обновлена с SDK версии 1.1.1 на SDK версии 1.4.0. Кроме того, также была установлена соответствующая версия 0.50.0.0 набора AT команд.

Закройте окно сеанса терминала PuTTY и нажмите OK, когда PuTTY спросит, уверены ли вы.

И напоследок

Пара тренировок, и весь процесс обновления прошивки займет гораздо меньшее время, чем требуется для прочтения данной статьи. Как только вы сделаете это, то будете уверены в том, что находится внутри вашего ESP8266 и сможете сосредоточиться на своем Wi-Fi проекте, вместо угадывания прошивки ESP и надежды на поддержку необходимого набора AT команд.

Оригинал статьи:

  • Charles R. Hampton. Update the Firmware in Your ESP8266 Wi-Fi Module

ESP-12E WiFi модуль (ESP8266)

WiFi модуль ESP-12E разработан компанией Ai-thinker и построен на базе процессора с ядром ESP8266, отличительной особенностью которого является наличие радиоинтерфейса WiFi. Ядро ESP8266 интегрировано в Tensilica L106 – 32-битный микроконтроллер с ультранизким энергопотреблением. Поддержка тактовых частот 80 и 160 МГц, поддержка RTOS, встроенные Wi-Fi MAC/BB/RF/PA/LNA, микрополосковая…

USB-UART конвертер USB-TTL 3.3/5В (FT232RL FTDI)

USB-UART конвертер USB-TTL на FTDI FT232RL.

USB-UART конвертер на чипе FTDI FT232RL – адаптер для для программирования отладочных плат, в том числе модулей ESP на микросхеме ESP8266, а также подключения устройств, имеющих интерфейс UART к компьютеру. Помимо стандартных линий – RX, TX, DTR, на плате в виде разъемов под пайку выведено множество дополнительных, позволяющих использовать дополнительные…

Источник: https://radioprog.ru/post/212

Обзор WiFi модуля ESP8266 ESP07

Миниатюрные WiFi модули ESP8266 довольно привлекательны для систем умного дома и домашней автоматизации. Их еще называют «убийцами NRF24L01».

Я себе заказал более поздние модификации ESP07 и ESP12, которые отличаются меньшими размерами и большим числом выведенных GPIO, что не требует «хаков» для использования в них дополнительных портов ввода/вывода.

Данный модули разработаны китайской компанией

Технические характеристики:

  • WI-FI: 802.11 b/g/n с WEP, WPA, WPA2.
  • Режимы работы: Клиент (STA), Точка доступа (AP), Клиент+Точка доступа (STA+AP).
  • Напряжение питания 1.7..3.6 В.
  • Потребляемый ток: до 215мА в зависимости от режима работы.
  • Количество GPIO: 16.
  • Flash память размером 512кб.
  • RAM данных 80 кб
  • RAM инструкций — 32 кб.

Про модификации модулей ESP8266

Заказывал я модули в январе.

Цена — $3.78, — $4.24. Покупал на премию за обзор статьи. Приехали за 31 день в запаянных пакетиках

ESP8266 ESP-07

ESP8266 ESP-12

Оживление модуля заняло довольно много времени

Для этого нужно подать на него 3.3В. Причем стабилизаторы у преобразователей USB/UART не тянут данный модуль по току, поэтому питание нужно внешнее.

Далее нужно посадить GPIO15 на землю, а CH_PD и GPIO0 подтянуть к VCC через резистор. В некоторых источниках еще указывается, что нужно подтянуть к VCC и GPIO2, но у меня все заработало и без этого.

RXD, TXD и GND подсоединяются через к компьютеру.

В результате собрал на макетке такую схему

Здесь сразу столкнулся со следующей сложностью — шаг дырочек у ESP07 — 2мм, а не 2.5 как у штырьковых разъемов, применяемых в Ардуино и прочих местах.

Пришлось к макетке паять на проволочках

Сразу вывел кнопку RESET и перемычку GPIO0 на землю, переводящую модуль в режим загрузки прошивки. А питание на модуль завел через

После этого запустил программу CollTerm и на скорости 9600 получил приглашение модуля.

Команда AT+GMR выдала 0020000904 (Версия SDK — 0020, в версия AT — 0904)

Далее побаловавшись с AT командами запустил модуль как точку доступа и подключился к своей.

Для тех, кому лень, как мне, разбираться с АТ командами, есть , позволяющая все это настроить.

Далее интересно было попробовать модуль в режиме самостоятельного контроля. Для этого решил прошить его NodeMCU со встроенным интерпретатором LUA.

Я загрузил ModeMCU с

Прошивку делал . Так как данная программа работает только с COM1-COM6, пришлось в диспетчере устройств изменить свой COM33 от USB/UART конвертера на COM6.

Далее прошивка не представляет труда: открываем порт и коннектимся. Скорость выбирается автоматически. Главное, не забыть посадить GPIO0 на землю (у меня для этого есть специальная перемычка). Скорость выбирается автоматически. Иногда коннект не устанавливался. Помогало нажатие кнопки RESET во время коннекта.

Далее выбираем файл с прошивкой

nodemcu-firmware-masterpre_buildlatestnodemcu_latest.bin

Теперь можно подключиться к модулю

В данной программе можно загружать в ESP файлы для интерпретатора LUA, выполнять как одиночные команды так и скрипты этого интерпретатора.

У меня получилось запустить модуль давления/температуры BMP180, подключенный к GPIO2 и GPIO0

Для этого я загрузил файл bmp180.lua из готовых модулей, идущих вместе с прошивкой с GITHUB

И затем файл init.lau, выполняемый при загрузке ESP8266

tmr.alarm(1, 5000, 1, function() print( ip: ,wifi.sta.getip()) bmp180 = require(“bmp180”) bmp180.init(4, 3) tmr.stop(1) — alarm stop end)

Запуск программы без задержки таймера приводил к неизменной ошибке.

После рестарата, код

bmp180.read(OSS) t = bmp180.getTemperature() p = bmp180.getPressure() — temperature in degrees Celsius and Farenheit print(“Temperature: “..(t/10)..” C”) — pressure in differents units print(“Pressure: “..(p * 75 / 10000)..” mmHg”)

Выдавал в консоль текущее давление и температуру.

А вот запустить выдачу данных параметров в режиме веб-сервера мне не удалось. Все дело в нехватки памяти. Отдельно веб сервер и BMP180 работали, а вместе вываливались в

PANIC: unprotected error in call to Lua API (error loading module bmp180 from file bmp180.lua : not enough memory)

Или просто на консоль валились обрывки кода LUA.

Модернизировать с ходу не получилось.

Дальнейший мой путь был, собирать свою прошивку на фирменном SDK, как . Но это уже другая история. Скажу только, что прошивки собираются без проблем, а вот запустить злополучный BMP180 так и не удалось.

Выводы

  • Модули ESP8266 — это очень дешевое решения для построение сети умного дома и прочей домашней автоматизации с использованием WiFi
  • Данные модули вполне годятся для замены NRF24L02 в связке с Arduino и прочими «народными» контроллерами.
  • Для работы в качестве самостоятельного контроллера ESP8266 имеет маловато ресурсов и довольно сырые прошивки
  • Программирование ESP-модулей довольно трудоемкий процесс, который может отпугнуть новичков
  • В целом ESP8266 имеют большие перспективы. Буду ждать развитие прошивок и средств разработки, а пока, буду применять их в связке с другими контроллерами (кроме )))

Полезные ссылки и литература

Дальнейшее развитие событий по моему использованию ESP8266 буду

Кот попался, пока возился с макрофотографиями

Оказался довольно пыльным )))

Источник: http://mysku.su/obschie/obzor-wifi-modulya-esp8266-esp07.html

Модуль ESP8266 WiFi

Модуль ESP8266 позволяет реализовать дистанционное управление микроконтроллерным устройством по WiFi. Реализована поддержка модуля всеми контроллерами Arduino. Исходный код графического интерфейса можно получить для сред разработки Arduino IDE и PLProg.

Для использования модуля ESP8266 выберите этот модуль в настройках конфигурации проекта.

В RemoteXY модуль может быть настроен для работы в двух режимах: точка доступа и клиента для подключение к существующей точке доступа.

Режим работы в качестве точки доступа (Access Point) настраивает модуль ESP8266 как точку доступа и позволяет подключиться к этой точке напрямую. Точка доступа доступна для подключения к ней со смартфона или планшета в радиусе доступности радиосигнала.

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

Для конфигурации данного режима работы в свойствах конфигурации проекта необходимо выбрать тип соединения “Wi-Fi точка доступа”.

Режим работы в качестве клиента предполагает, что ESP8266 будет автоматически подключаться к существующей Wi-Fi точке доступа, например к домашнему маршрутизатору (роутеру) или точке доступа предприятия.

При этом подключенный к Arduino модуль ESP8266 должен располагаться в физической доступности радиосигнала этой точки доступа.

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

Подключение из сети интернет возможно при правильной настройке маршрутизатора, например использование виртуального сервера. Для конфигурации данного режима работы в свойствах конфигурации проекта необходимо выбрать тип соединения “Ethernet”.

Подключение модуля ESP8266 к Arduino осуществляется через последовательный интерфейс. Можно использовать как Software Serial, так и аппаратный Hardware Serial. Вариант подключения модуля выбирается в панели настроек подключения модуля. Модуль управляется посредством AT команд.

Рекомендуется использовать самую последнюю прошивку для ESP8266. Версия AT команд должна быть не ниже v0.40. Используйте инструкцию по обновлению прошивки ESP8266.

Питание модуля можно обеспечить от встроенного источника питания 3.3В на плате Arduino. Некоторые платы, например Arduino Nano может не обеспечить достаточной мощности на выводе 3.3V, в этом случае потребуется отдельный источник питания.

Подключение через Software Serial

Позволяет подключить модуль к произвольным контактам микроконтроллера. Какие контакты использовать, необходимо указать в панели настроек подключения модуля. Так же в панели настроек указывается скорость передачи данных для порта. Модуль ESP8266 по умолчанию настроен на скорость 115200 бит/сек.

Для работы через SoftwareSerial необходимо предварительно настроить скорость передачи данных ESP8266 на более низкую скорость. Стабильная работа модуля возможна на скорости не более 19200 бит/сек. Для изменения скорости работы последовательного интерфейса модуля, необходимо его подключить к консоли для возможности выполнения AT команд.

Скорость работы модуля может быть изменена при помощи AT команды “AT+UART_DEF=19200,8,1,0,0”.

Есть некоторые ограничения на использование контакта RX для плат Arduino. Ограничения связаны с поддержкой прерываний на соответствующих контактах микроконтроллера.

  • Arduino UNO и Nano для RX нельзя использовать контакт 13(LED);
  • Arduino Mega и Mega2560 для RX можно использовать только следующие контакты: 10, 11, 12, 13, 14, 15, 50, 51, 52, 53, A8(62), A9(63), A10(64), A11(65), A12(66), A13(67), A14(68), A15(69);
  • Arduino Leonardo и Micro для RX можно использовать только следующие контакты: 8, 9, 10, 11, 14, 15, 16;

Так же при использовании SoftwareSerial вы должны принять следующие ограничения:

  • Нет возможности работы на больших скоростях передачи данных. Не рекомендуем использовать скорость соединения более 19200 бит/сек.
  • Некоторые библиотеки, которые так же используют прерывания, могут работать не корректно, или же их использование может сделать неработоспособным данный способ подключения. Например библиотека Servo будет подергивать сервоприводы.

Пример подключения модуля ESP8266 для SoftwareSerial к контактам 2(RX) и 3(TX) на рисунке. Обратите внимание, что необходимо контакты подключить перекрестием, т.е. контакт Arduino 2(RX) к контакту TX модуля, и контакт 3(TX) к контакту RX модуля.

Подключение через Hardware Serial (аппаратный)

Позволяет подключить модуль к контактам микроконтроллера, поддерживающим один из аппаратных портов последовательного интерфейса. Для разных плат Arduino это разные порты и контакты. Возможна работа на максимальной скорости соединения 115200 бит/сек.

Скорость передачи данных для Arduino указывается в панели настроек редактора. ESP8266 необходимо предварительно настроить на работу на той же скорости, что и Arduino. Настройку можно выполнить через AT команды.

Следующие последовательные порты Arduino доступны:

  • Arduino UNO и Nano: Serial (RX-0, TX-1);
  • Arduino MEGA и MEGA2560: Serial (RX-0, TX-1), Serial1 (RX-19 и TX-18), Serial2 (RX-17 и TX-16), Serial3 (RX-15 и TX-14);

Какой порт использовать, а следовательно к каким контактам следует подключать модуль, необходимо указать в панели настроек подключения модуля.

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

Хорошим решением будет использовать на платах Arduino MEGA любой порт, отличный от Serial.

Пример подключения модуля для аппаратного Serial к контактам 0(RX) и 1(TX) на рисунке. Обратите внимание, что необходимо контакты подключить перекрестием, т.е. контакт Arduino 0(RX) к контакту TX модуля, и контакт 1(TX) к контакту RX модуля.

Источник: http://remotexy.com/ru/help/esp8266/

Ссылка на основную публикацию
Adblock
detector
",css:{backgroundColor:"#000",opacity:.6}},container:{block:void 0,tpl:"
"},wrap:void 0,body:void 0,errors:{tpl:"
",autoclose_delay:2e3,ajax_unsuccessful_load:"Error"},openEffect:{type:"fade",speed:400},closeEffect:{type:"fade",speed:400},beforeOpen:n.noop,afterOpen:n.noop,beforeClose:n.noop,afterClose:n.noop,afterLoading:n.noop,afterLoadingOnShow:n.noop,errorLoading:n.noop},o=0,p=n([]),h={isEventOut:function(a,b){var c=!0;return n(a).each(function(){n(b.target).get(0)==n(this).get(0)&&(c=!1),0==n(b.target).closest("HTML",n(this).get(0)).length&&(c=!1)}),c}},q={getParentEl:function(a){var b=n(a);return b.data("arcticmodal")?b:(b=n(a).closest(".arcticmodal-container").data("arcticmodalParentEl"),!!b&&b)},transition:function(a,b,c,d){switch(d=null==d?n.noop:d,c.type){case"fade":"show"==b?a.fadeIn(c.speed,d):a.fadeOut(c.speed,d);break;case"none":"show"==b?a.show():a.hide(),d();}},prepare_body:function(a,b){n(".arcticmodal-close",a.body).unbind("click.arcticmodal").bind("click.arcticmodal",function(){return b.arcticmodal("close"),!1})},init_el:function(d,a){var b=d.data("arcticmodal");if(!b){if(b=a,o++,b.modalID=o,b.overlay.block=n(b.overlay.tpl),b.overlay.block.css(b.overlay.css),b.container.block=n(b.container.tpl),b.body=n(".arcticmodal-container_i2",b.container.block),a.clone?b.body.html(d.clone(!0)):(d.before("
"),b.body.html(d)),q.prepare_body(b,d),b.closeOnOverlayClick&&b.overlay.block.add(b.container.block).click(function(a){h.isEventOut(n(">*",b.body),a)&&d.arcticmodal("close")}),b.container.block.data("arcticmodalParentEl",d),d.data("arcticmodal",b),p=n.merge(p,d),n.proxy(e.show,d)(),"html"==b.type)return d;if(null!=b.ajax.beforeSend){var c=b.ajax.beforeSend;delete b.ajax.beforeSend}if(null!=b.ajax.success){var f=b.ajax.success;delete b.ajax.success}if(null!=b.ajax.error){var g=b.ajax.error;delete b.ajax.error}var j=n.extend(!0,{url:b.url,beforeSend:function(){null==c?b.body.html("
"):c(b,d)},success:function(c){d.trigger("afterLoading"),b.afterLoading(b,d,c),null==f?b.body.html(c):f(b,d,c),q.prepare_body(b,d),d.trigger("afterLoadingOnShow"),b.afterLoadingOnShow(b,d,c)},error:function(){d.trigger("errorLoading"),b.errorLoading(b,d),null==g?(b.body.html(b.errors.tpl),n(".arcticmodal-error",b.body).html(b.errors.ajax_unsuccessful_load),n(".arcticmodal-close",b.body).click(function(){return d.arcticmodal("close"),!1}),b.errors.autoclose_delay&&setTimeout(function(){d.arcticmodal("close")},b.errors.autoclose_delay)):g(b,d)}},b.ajax);b.ajax_request=n.ajax(j),d.data("arcticmodal",b)}},init:function(b){if(b=n.extend(!0,{},a,b),!n.isFunction(this))return this.each(function(){q.init_el(n(this),n.extend(!0,{},b))});if(null==b)return void n.error("jquery.arcticmodal: Uncorrect parameters");if(""==b.type)return void n.error("jquery.arcticmodal: Don't set parameter \"type\"");switch(b.type){case"html":if(""==b.content)return void n.error("jquery.arcticmodal: Don't set parameter \"content\"");var e=b.content;return b.content="",q.init_el(n(e),b);case"ajax":return""==b.url?void n.error("jquery.arcticmodal: Don't set parameter \"url\""):q.init_el(n("
"),b);}}},e={show:function(){var a=q.getParentEl(this);if(!1===a)return void n.error("jquery.arcticmodal: Uncorrect call");var b=a.data("arcticmodal");if(b.overlay.block.hide(),b.container.block.hide(),n("BODY").append(b.overlay.block),n("BODY").append(b.container.block),b.beforeOpen(b,a),a.trigger("beforeOpen"),"hidden"!=b.wrap.css("overflow")){b.wrap.data("arcticmodalOverflow",b.wrap.css("overflow"));var c=b.wrap.outerWidth(!0);b.wrap.css("overflow","hidden");var d=b.wrap.outerWidth(!0);d!=c&&b.wrap.css("marginRight",d-c+"px")}return p.not(a).each(function(){var a=n(this).data("arcticmodal");a.overlay.block.hide()}),q.transition(b.overlay.block,"show",1*")),b.overlay.block.remove(),b.container.block.remove(),a.data("arcticmodal",null),n(".arcticmodal-container").length||(b.wrap.data("arcticmodalOverflow")&&b.wrap.css("overflow",b.wrap.data("arcticmodalOverflow")),b.wrap.css("marginRight",0))}),"ajax"==b.type&&b.ajax_request.abort(),p=p.not(a))})},setDefault:function(b){n.extend(!0,a,b)}};n(function(){a.wrap=n(document.all&&!document.querySelector?"html":"body")}),n(document).bind("keyup.arcticmodal",function(d){var a=p.last();if(a.length){var b=a.data("arcticmodal");b.closeOnEsc&&27===d.keyCode&&a.arcticmodal("close")}}),n.arcticmodal=n.fn.arcticmodal=function(a){return e[a]?e[a].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof a&&a?void n.error("jquery.arcticmodal: Method "+a+" does not exist"):q.init.apply(this,arguments)}}(jQuery)}var debugMode="undefined"!=typeof debugFlatPM&&debugFlatPM,duplicateMode="undefined"!=typeof duplicateFlatPM&&duplicateFlatPM,countMode="undefined"!=typeof countFlatPM&&countFlatPM;document["wri"+"te"]=function(a){let b=document.createElement("div");jQuery(document.currentScript).after(b),flatPM_setHTML(b,a),jQuery(b).contents().unwrap()};function flatPM_sticky(c,d,e=0){function f(){if(null==a){let b=getComputedStyle(g,""),c="";for(let a=0;a=b.top-h?b.top-h{const d=c.split("=");return d[0]===a?decodeURIComponent(d[1]):b},""),c=""==b?void 0:b;return c}function flatPM_testCookie(){let a="test_56445";try{return localStorage.setItem(a,a),localStorage.removeItem(a),!0}catch(a){return!1}}function flatPM_grep(a,b,c){return jQuery.grep(a,(a,d)=>c?d==b:0==(d+1)%b)}function flatPM_random(a,b){return Math.floor(Math.random()*(b-a+1))+a}