• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Arduino библиотеки esp8266

anakod

Moderator
Команда форума
Не знаю в чем причина, но одновременно два порта (программный и аппаратный) в цикле не живут.
Можно обратно уменьшить второй буфер который не подсоединен к ESP (если увеличивали), может быть памяти не хватает, ее довольно мало в запасе остается.
Вероятно в этом :)
 

Jon

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

anakod

Moderator
Команда форума
Видимо сборка запроса к сервису в виде строки заняла слишком много памяти и вместе с буферами необходимыми для портов им уже не хватило места в памяти. Соответственно без дополнительных портов место освобождается, альтернативный вариант - избегать формирования длинных строк, если сервис поддерживает отправку запроса по частям.
 

Jon

Member
Эксперименты с двумя портами прекратил. Думаю что программный порт все же капризная штука и для полноценной работы он не годиться.
На форуме Ардуины запостил полноценный скетч по отправке данных на НародныМонитор с применением только аппаратного порта: http://arduino.ru/forum/apparatnye-...odelites-vpechatleniyami?page=8#comment-99628
 

alexandrv

New member
Я в программировании ARDUINO новичок. Вы мне не подскажете как в вашем скетче "SimpleWebServer" добавить отображение на странице, данных с датчика DHC11?
 

assad77

New member
библиотека поддерживает только отправление строк.
ntp клиент на таком не напишешь :(
 

GFX

New member
Добрый день. Кроме ардуины библиотек оберток нет на чистые pic или avr?
 

JustACat

Moderator
Команда форума
GFX, эм, можно взять обертку для Ардуино и подправить в ней часть, которая отвечает за прием-отправку данных в UART. По идее остальное должно работать... Ну может еще пара каких мелочей.
Ардуино же и есть AVR, только что библиотек наворочено сверху, но в работе с ESP кроме общения с UART ничего вроде и не нужно.
 

Jon

Member
Пытаюсь запустить на сервере скрипт вот таким образом:
Код:
ESP8266proClient con(wifi, printResponse);
con.connectTcp("192.168.1.48", 80);
con.send("GET / HTTP/1.0\r\ /objects/?script=ESP8266 \r\n\r\n");
con.waitResponse();
con.close();
Передача проходит, но скрипт не запускается. Что я тут накосячил?
 
Я в программировании ARDUINO новичок. Вы мне не подскажете как в вашем скетче "SimpleWebServer" добавить отображение на странице, данных с датчика DHC11?
Вот вам в помощь https://yadi.sk/d/unCNzn5PfYJZD правда на ds18b20,но с легкостью можно и dht22 прикрутить.Работает без каких либо библиотек
 

anakod

Moderator
Команда форума
Jon, по-моему у Вас в середине пропущена \n (только слеш остался).
А вообще переходите на разработку прямо под ESP без Ардуино. Ресурсов больше, возможностей больше, работать не менее удобно если один раз среду настроить.
 

Jon

Member
Все эти проекты только пока умеют лампочками мыргать. Полноценную замену сетевому шилду пока никто не написал.
 

Gres

New member
Всем привет! Подскажите пожалуйста.
Модуль ESP8266-01, прошивки пробовал разные но остановился на AT22SDK100-2015-03-20-boot1.3b.bin(взял тут, но имя ее не верно, если зашить показывает версию 1.2), прошивка работает нормально. Пробобовал AT22SDK100-2015-03-20-boot1.2.bin(показывает версию 1.3b, видимо попутаны названия), виснет она после ребута, вернее виснет uart у нее, приходитмя разрывать конект и соединять вновь. Но это все предисловие, суть далее:
Модуль вожу в режим точеи доступа или смешанный, настраиваю мультиподключение.
АТ командой поднимаю TCP сервер, IP стандартный 192.168.4.1, порт 80.
Конекчусь к точке, не важно открытая или с шифрованием, пробовал по разному.
Открываю любой браузер, пробовал разные и пытаюсь войти на сервер.
Модуль получает запрос клиента, в ответ передаю ответ сервера на отправку данных, указываю ID и длину передаваемых данных, после появления приглашения, отправляю строку HTML кода, всего 114 символов. Практически мгновенно получаю ответ модуля о успешной отправке.
Не зависимо отправляю данные с дуни или просто с переходника USB-UART, данные отображаются в браузере примерно через 2-3 минуты, то есть он все это время крутит и пытается отобразить страничку. Скорость передачи UART 115200. В чем засада? Так и должно быть? Так медленно передаются данные по воздуху?
Скорость WiFi соединения от 1 до 54мбит, модуль рядом с ноутом.
 

anakod

Moderator
Команда форума
1. Думаю браузер ждет пока соединение будет разорвано чтобы отобразить станицу. Попробуйте разорвать его явно.
2. Не используйте AT прошивку. Любой альтернативный вариант, как правило, будет лучше.
 

Elik

New member
Добрый день. Я использую пример webserver с вашей библиотеки, версия прошивки esp v19, помимо настройки и отображения присвоенного IP, вроде все работает без обновления на версию v20 (с простыми примерами страница открывается). Не обновляю на v20 и далее, так как почему то все остальные по дефолту работают на скорости 57600, что передает в сериал монитор не правильные символы одновременно с правильными, не знаю в чем может быть проблема, в общем остановился на родной прошивке модуля ESP8266 v19.

1) Вопрос в следующем, как я понял вебсервер умеет отправлять ограниченный код страницы клиенту, даже если скетч еще имеет место в памяти. В моем коде страница имеет много кода HTML, но почему то не весь код отправляыется в браузер по запросу. В чем заключается лимит и как его расширить?

2) Еще вопрос, как сделать так, что бы страница хранилась в памяти СД карты, подключенной к ардуино и страница, картинки, стили и скрипты отправлялись с карты памяти используя вашу библиотеку web сервера? Я новичек, делал когда то так с использованием ethernet шилда и присоединенного к нему wifi адаптера (правда тяжелая страница занимала время для загрузки, достаточно долго). Есть ли у вас пример такого использования библиотеки?


Благодарю за подробный ответ и решение моей проблемы заранее.
 

Вложения

Привет всем. Помогите пожалуйста решить следующюю проблему залил в esp8266 стандартную прошивку из библиотеки ардуино WIFI web server. Там происходит управлением gpio отправкой запроса 192.168.1...gpio/1 на выходе ставится логическая единица или аналогично ноль. после 5-6 посылов модулю, модуль наченает зависать (отрабатывает медленно) Что посоветуете?
 

Ievgen

New member
Добрый день. Подскажите кто работал espduino?
Подключил все по мануалу. Запустил пример прописал параметры, но подключения к роутеру нет?
Нужно его как-то может предварительно настроить
 

selan61

Member
Всем привет! Подскажите пожалуйста.
Помогите решить такую проблему. На основе скетча отправки на narodmon от Jon из поста 44, собрал свой скетч отправки Si7021, BMP280, DS18B20 . Скетч от Jon основан на обертке от anakod для работы с ESP8266 под Arduino, реализующий весь основной функционал стандартной AT прошивки. Три месяца непрерывной работы устройства не вселяло никаких проблем. И вдруг перестало отправлять. Проверка эл. схемы не выявило никаких отклонений. Перезаливка различных версий скетча не помогла. Замена ESP тоже не помогла. Скетч работает ,ESP получает AT команды. Подключается к роутеру, но не может получить от него IP адрес.
ATE0
AT+RST
ATE0
ATE0
AT+CWJAP="Android","superuser"
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
AT+CIPSTA?
Хотя если эти команды набираю ручками, всё ОК.
AT version:1.2.0.0(Jul 1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
Ai-Thinker Technology Co., Ltd.
Integrated AiCloud 2.0 v0.0.0.3
Build:1.5.4.1 Jan 10 2017 18:32:04


AT+CWJAP="Android","superuser"

WIFI DISCONNECT
WIFI CONNECTED
WIFI GOT IP

OK
AT+CIPSTA?

+CIPSTA:ip:"192.168.0.71"
+CIPSTA:gateway:"192.168.0.1"
+CIPSTA:netmask:"255.255.255.0"

OK
Что могло произойти не понимаю. Почему библиотека ESP8266pro.h перестала работать.
 

Bacha

New member
Arduino-ESP8266_libs
Library that make easy to using ESP8266 Serial WiFi Module (Available only TCP now)
(This is beta version now)

ESP8266 library
When you use with UNO board, uncomment the follow line in uartWIFI.h.
#define UNO
When you use with MEGA board, uncomment the follow line in uartWIFI.h.
#define MEGA

ESP8266-Library
A library for the ESP8266 WiFi module

OCROBOT-WIFI-ESP8266-arduino-library

ESP8266

An Arduino library for the ESP8266EX chipset (WI07c module)
  1. Implement all of the WI07c module's features such as TCP/UDP server/client.
  2. Break code into classes (based on protocol and role)
  3. Inherit from Arduino base classes, such as Stream
  4. Optimize
ESP8266 network client (mqtt, restful) for Arduino
Redirecting…
tuanpmt/espduino
ESP8266 firmware SLIP Command, support mqtt, restful client
Redirecting…
tuanpmt/esp_bridge
 
Сверху Снизу