Пример подключения ESP8266 к PSoC 
https://nurdspace.nl/ESP8266
Форум: http://www.esp8266.com/ - все новости и подробности удобно узнавать здесь.
http://esp8266.ru/ - сайт на русском
ESP8266 Config.exe - очень удобная программа для настройки и экспериментов с модулем от AppStack
Hercules SETUP utility от hw-group.com тоже может пригодиться.
Серия заметок от Peter Scargill: ESP8266 Busy S (updated) и ниже по датам ...
Несколько ссылок на примеры применения:
Погодная станция на основе Arduino и модуля ESP8266
ESP8266 server
В статье Wifi success, for a change! описывается, как настроить прозрачный режим (transparent mode ) и возврат в режим командной строки используя стандартный для многих модемов код (+++)
Я использовал материалы этого сайта: Micro WebServer จาก ESP8266 และ Arduino
Цель проекта - создать максимально простую работающую заготовку веб сервера на ESP8266 а уж потом разбираться - что это за зверек. На данный момент все очень примитивно: минимум проверок - в основном таймауты. Просто страничка со счетчиком автообновлений.

Файл проекта для CY8CKIT-030 PSoC®3 Development Kit:
MicroWebServer.cywrk
Используется только UART, поэтому можно переделать проект под любой чип (PSoC3, PSoC4, PSoC5, PSoC5LP )
Внимание!! В программе используется поиск по набору символов в ответе модуля. К сожалению эти наборы в новых прошивках могут быть другими - вам придется их найти и заменить. Этот проект - для FW Version 0160901 В программе ошибка: ответ OK на команду AT+CWJAP="SSID","PASS"\r\n - всего лишь подтверждение её приема а не подключения к WIFI !!! Для подтверждения подключения нужно подать команду "AT+CIFSR\r\n" .( не ранее чем через 5 секунд) При удачном подключении вы получите IP, выделенное устройству, при неудаче - ERROR.
Еще два новых варианта для разных прошивок ( 0160901 и 018000902 ): WIFI_00160901.zip WIFI_018000902.zip
В разных версиях прошивок модуль выдает разные сообщения после сброса. Поэтому ищем общее для двух прошивок - фрагмент текста "eady" (Ready, ready) - он присутствует в прошивках в разных вариантах. В версии 018000902 подключение к WIFI корректно подтверждается ответом "OK" на команду AT+CWJAP="SSID","PASS"\r\n
Код проекта очень примитивен: допускается использовать только одно соединение из нескольких возможных. Поэтому устройство можно легко подвесить, например, при обращении сразу двух клиентов.
Для восстановления после зависаний предусмотрен сброс устройства при отсутствии обращения клиента более 60 секунд.
WiFi точка доступа (Access Point) на esp8266
это еще один проект - заготовка позволяющий использовать esp8266 в режиме Access Point для контроля и управления каким либо устройством.
В этом проекте можно управлять светодиодом Led4 на плате и контролировать и отображать два параметра: - текущее состояние светодиода Led4 - счетчик автообновлений web-странички устройства.

Файл проекта для CY8CKIT-030 PSoC®3 Development Kit: AP_Serwer.zip для прошивки 018000902
Для работы с устройством нужно: - подключиться к созданной им WiFi точке доступа. ( Имя: "AP_test" пароль "12345678" тип WPA-PSK) -открыть web страничкку устройства с адресом http://192.168.4.1
esp8266 допускает до 4-х одновременных подлючений, но в этом проекте допускаетя только одно. Поэтому возможны сбои в работе - esp8266 отвечает busy... и не реагирует на новые подключения. Для вывода её из зависаний предусмотрен аппаратный сброс через 180 сек молчания в сети.
__________________________________________________________________________________________________
Еще один вариант - для PSoC4: ( ESP8266 - в режиме ST )
В этом проекте добавлено:
- режим отслеживания номера соединения ( 0-4, но это мало помогло ) - WDT таймер
Сохранен и профилактический сброс каждые 30 секунд при отсутствии запроса от клиента.
И, похоже надо поставить более мощный блок питания...
Все это позволило восстанавливать возможность подключения к устройству.
Глючность текущих прошивок ESP8266 уже порядком утомила, поэтому придется пока приостановить
исследования этого девайса.

Файл проекта для PSoC®4
PSoC4_ESP8266_ST_WDT.zip
для прошивки 018000902
Под рукой оказался бесхозный BMP085. Решил приспособить его для контроля погоды за окном. Работа ESP8266 все так же неустойчива, но для того, чтобы 2 -3 раза в день зайти на страничку устройства - вполне достаточно. Проект сделан для PSoC4. Устройство достаточно прожорливо, поэтому для его питания пришлось использовать блок питания.
Файл проекта для прошивки 018000902: SCB_BMP085_ESP8266.cywrk.zip

Но этот модуль и сам все может: Его достаточно просто использовать как одноразовый проект по принципу сделал-забыл.
Я использовал его для подключения датчиков умного дома:
-заводите аккаунт в thingspeak.com покупаете датчики -датчик BMP180 (давление и температура)
-датчик DHT11 (влажность и температура)
-датчик ds18b20 (температура) - любое количество, но учтите что у "thingspeak.com" не более 8 каналов отображения
Коротко о проекте:
1. HARD:
Поскольку это ESP-01 - добавим еще пару ног для подключения датчиков:
контакты RESET и CH_PD мне совершенно не нужны, поэтому на их место я
подключил GPIO13 и GPIO14 как на фото ниже:

2.SOFT:
Приятно, что устанавливать ничего не надо: скачал-прошил-удалил.
Я использовал:
- для заливки прошивки программу esp8266_flasher.exe отсюда - для заливки файлов проекта LuaLoader v 0.91: http://benlo.com/esp8266/
3. ФАЙЛЫ:
прошивка - с установленной NodeMcu конкретно эта: nodemcu_integer_0.9.6-dev_20150704.bin это важно, поскольку датчики, особенно DHT11 могут капризничать.
файлы проекта: meteo.zip введите свой SSID PASSWORD и API_KEY для thingspeak.com
Прошу прощения, при подготовке архива закралась ошибка:
в файле httpsender.lua вместо строки 54 API_KEY XXXXXXXXXXXXXXXX
надо добавить строку conn:connect(80,'184.106.153.149')
-Если не хотите чтобы устройство мешало вам своим постоянным присутствием в сети -
добавьте команду node.dsleep(время в мкСек) перед conn:close() в строке 61 и перемычку с 8 ножки esp8266 на пин RST для выхода из режима Deep Sleep
4. Детали:
Программы для NodeMcu пишутся на языке LUA.
С этим языком я не знаком, но мне повезло, что есть уже много проектов -
я просто переделал их под свои нужды.
Некоторые неудобства доставляет нехватка памяти, поэтому в процессе загрузки файлов
ds18b20i.lua DHT11.lua bmp180.lua их надо сразу компилировать (кнопка "compile" в LuaLoader)
появится файл с расширением .lc а файл с расширением .lua - удалять (кнопка "remove").
Много полезного можно прочитать на этой страничке: Вечный Wi-Fi логгер. Автономный датчик температуры на базе ESP8266
еще раз напомню порядок действий:
 - доработайте модуль добавив еще 2 GPIO - прошейте прошивкой nodemcu_integer_0.9.6-dev_20150704.bin не забыв подтянуть GPIO0 к GND!!! - в файлах init.lua и httpsender.lua введите свои SSID PASSWORD и API_KEY
- залейте файлы проекта в модуль(не забыв удалить ds18b20i.lua DHT11.lua и bmp180.lua после компиляции) - учтите что ds18b20 на вашей страничке на сайте thingspeak.com выстроятся по старшинству адресов.
вам придется понять кто где и подписать.
Мой вариант некоторое время можно видеть здесь: https://thingspeak.com/channels/80360
Для контроля давления и температуры вне дома я сделал Простую метеостанцию используя материалы этого сайта:
Simple wifi web server - barometer with BMP180 sensor
Подключившись к сети с именем "METEO_BMP180" по адресу 192.168.4.1 можно узнать давление и температуру.
 Архив проекта на языке LUA для прошивки NodeMcu : NodeMcu_bmp180.zip
|
|
|