Отправка данных показания датчика DHT11 из Arduino в ESP8266
- Войдите на сайт для отправки комментариев
Привет всем!
Подскажите пожалуйста пример.
К arduino mega подключён датчик влажности и температуры DHT11. Как отправить показания этого датчика в ESP8266 с дальнейшим отображением в WEB сервере ума не приложу.....
На ESP8266 при стандартной АТ прошивке работает. Но мне так не подходит. Т.к. веб страница с оверДОХРЕНА показаний датчиков, концевиков и кнопок много занимает места, и в мегу не вмещается.
Поэтому хочу использовать ресурсы ESP8266 и настраивать её в Arduino IDE.
Т.е. мега работает с датчиками, концевиками, и реле. Еспеха это всё отображает и отправляет команды меге например включить тёплый пол.
ESP8266 получилось настроить отправив команду для меги например: включить реле тёплого пола.
А вот передать показания датчика температуры из меги в есп у меня траблы.....
Вот как отправляете команду "включить реле теплого пола" точно так же отправляете обратно показания датчика.
в мегу не вмещается.
Ахренеть!
Это в меге
Это в ESP8266
Грёбаный рободин :((
Действительно, что выкинуть на помойку и использовать эзернет :(
и что тут в мегу не вмещается?
Насчет "выкинуть на помойку" - сдается мне, что "дело не в бобине" :)
Управление светом. Полив растений. Управление Тёплым полом. Управление увлажнителем. Управление жалюзи......... Дальше продолжать?
Я привёл пример как управлять реле. А мне нужно показания датчиков из меги в есп передать, и хз как.
Управление светом. Полив растений. Управление Тёплым полом. Управление увлажнителем. Управление жалюзи......... Дальше продолжать?
уверен, что написано это у вас неэффективно. В приведенном примере кода сразу вижу, что вы используете класс Стринг и константные строки в оперативке. Дальше продолжать? :)
Так что этот список - ни о чем. Может он и в Нану вошел бы, а может его просто надо разложить по пяти отдельным МК.
Serial3.write()
Вы меня не поняли.
Не хватает памяти у меги когда есп прошита в стандартную AT прошивку. Т.к. помимо обработки алгоритма работы ещё и HTML страница сжирают всю память меги, когда у есп отведено 8 мегабайт (хоть опой жуй), а на стандартной прошивке, есть подозрения, что память эта в простое, вот и пытаюсь её использовать.
И щас пытаюсь есп саму программировать в среде Arduino IDE. И не хватает знаний и понятий, как передать значение датчика температуры из Arduino mega в ESP8266.
а есп будет читать данные как Serial.available(). ???
Не понимаю. мега порт 3, есп порт только 1. Монитор порта с компьютера тоже порт 1.
Жесть какая-то...
У меги 4ре аппаратных сериала. Судя по вашим кускам кода сериал3 меги соединен с сериал есп. С меги шлете с сериала3 в есп принимаете на сериале.
а есп будет читать данные как Serial.available(). ???
Не понимаю. мега порт 3, есп порт только 1. Монитор порта с компьютера тоже порт 1.
Жесть какая-то...
В чём жесть-то? У Вашей ESP есть последовательный порт. Его можно подключить к компу, можно к меге. Но, разумеется, не одновременно.
Я правильно понимаю, что у Вас девайс - ардуино мега и esp "в одном флаконе"?
Совершенно верно.....
В общем, не выходит каменный цветок. Не обновляет свои переменные esp :(
в мегу не вмещается.
.......
Управление светом. Полив растений. Управление Тёплым полом. Управление увлажнителем. Управление жалюзи......... Дальше продолжать?
Давайте я продолжу ...
Не, ну если у Вас там не web страница, а целый порносайт, то тогда, конечно :)
Всё верно!
При добавлении очередной кнопки, веб сервер перестаёт отвечать.
Поэтому я наигрался с АТ командами. И хочу прошить в Arduino IDE эту бедную ESP8266
В общем, не выходит каменный цветок. Не обновляет свои переменные esp :(
Так а Вы для этого что-нибудь написали? Вот совсем свежая тема про обмен данными между двумя ардуинами: Проблема передачи по серийному порту между двумя ардуино Почитайте, вдруг поможет...
При добавлении очередной кнопки, веб сервер перестаёт отвечать.
Поэтому я наигрался с АТ командами. И хочу прошить в Arduino IDE эту бедную ESP8266
да с чего вы взяли. что вам это поможет? Если при добавлении очередной кнопки сервер перестает отвечать - надо долбить сервер, AT-прошивка-то чем виновата?
Понимаете, что я до вас пытаюсь донести? - нет? По тем вопросам. что вы задаете - видно что ваш уровень программирования не слишком высок. И коли это так - то надо разбираться с теми ошибками. что вы, очевидно, насажали в коде своей HTML-страницы - а не прыгать от одной прошивки к другой. Нет такой прошивки. на которой не нужно разбираться в алгоритмах и языках программирования. В вашем случае правильнее добить ту конфигурацию, в которой вы уже начали что-то создавать.
Ой я вас умоляю. Эту АТ прошивку юзаю от безысходности. Достаточно несколько раз нажать клавишу f5 и всё, веб сервер завис. Только перезагрузка её спасает. Я делаю вывод, что плата не исправна.
На Гиктаймсе про этот девайс статья была. Обзор и пример сервера. Посмотрите, может оттуда что подчерпнёте.
Достаточно несколько раз нажать клавишу f5 и всё, веб сервер завис. Только перезагрузка её спасает. Я делаю вывод, что плата не исправна.
С чего делается такой вывод? Почем не "код кривой"?
Да простейший веб сервер с включением светодиода. клавишу f5 f5 f5. И всё, веб сервер упал.... АТ прошивка видимо кривая. И ниче с ней не сделаешь.....
Поэтому пытаюсь перейти в среду arduino ide. Данных багов и зависаний тут не наблюдается, а тут грабли такие в виде труднопонятного кода общения по serial.
Учитывая, что нигде нет ни одного рабочего примера подключённых датчиков к меге уно или нано и выводом их на есп, видимо буду первопроходцем.
А если задать вопрос: "ребят, подключён датчик температуры ds18b20 к arduino mega. Как передать показания на esp8266 в веб сервер". Начинают кукарекать, зачем тебе мега, сделай всё на есп..... в общем как обычно, объясняют пол дня какой я идиот)
P.s. я не программист. Простите.
Я джва года этого ждал! Наконец-то кто-то разберется с этим чертовым веб-сервером на ESP!
И что труднопонятного в Serial.write и Serial.read? Serial3.write и Serial3.read? Ссылку на тему давали выше. Обыснаясвязь сеииал с сериал, ничего ноаого тут нет.
Я джва года этого ждал! Наконец-то кто-то разберется с этим чертовым веб-сервером на ESP!
Щас набигут разбиратели!
P.s. я не программист.
посмотрите библиотеку EasyTransfer вроде как облегчает делать обмен по сериал
Огромное спасибо ДРУЖИЩЕ!
зная эту информацию, создал в flprog и посмотрел на обмен. И ура!!!!
ESP8266 теперь работает полноценно, без китайской прошивки. С 8 мгб памтью на борту (хоть порно сайт на ней пиши).
УРААААААА грёбаный wemos побеждён!
Всем спасибо!!!!!!
Можно удалять свой профиль тут, чтоб не террорезировать народ.
Огромное спасибо ДРУЖИЩЕ!
зная эту информацию, создал в flprog и посмотрел на обмен. И ура!!!!
ESP8266 теперь работает
который раз поражаюсь, на какой ерунде можно встать в тупик...
Вс-таки я не педагог - я не в состоянии поставить себя на место новичка... хотя сам таким же был. наверно.
LoveDream - тем не менее учите программирование, на кривых костылях flprog далеко не уйти
Господа, ай нид ю хелп ) Сломал голову
У меня nrfnrf24l01 подключена к Меге (получает данные по каналу). Далее необходимо эти данные отправить с Меги на ESP8266 ESP-01, которая в свою очередь отправит данные на брокер (с брокером все ок, данные отправляются. в примерах скетча этой части не будет)
Не могу получить данные на ESP8266 по Serial. Перепробовал уже много вариантов. Ниже крайняя не рабочая версия...
Подскажите, что не так? Подправьте код плз :)
Мега (тут все вроде норм работает)
ESP8266
В мониторе порта ESP полученных NRF данных не вижу :(
На ESP RX TX пробовал и 2, 7 и 3, 5 безрезультатно. Подключение через конвектор логических уровней или делитель на резисторах не помогла, значит что-то с кодом не то :(
вы читаете из Сериал. даже не проверяя. есть ли там что-то. Ну и вообще в коде напихано куча лишнего.
Лишнее уберу. По поводу проверки.
Проверку на ESP пока убрал, что бы монитор показывал все, что есть... Потом добавлю.
У Мега в сериале есть данные. Они выводятся, тут все ок. Или я в чем-то не прав? :)
Не получается отправить их на ESP (или считать их).
Может поможете кусочком кода для ESP? :)
Может поможете кусочком кода для ESP? :)
нет никакого специального "кода для ЕСП", сериал что на Меге, что на ЕСП работает одинаково. Могу вам выложить свою библиотеку для передачи двоичных данных по Сериал. надо?
Да, буду благодарен!
Хорошо, ближе к вечеру
два файла, пложить в директорию скетча
UARTTransfer.h
UARTTransfer.cpp
Пример использования
пример наваял прямо сходу, проверить не на чем, извиняйте за возможные опечатки
b707 Спасибо тебе огромное!
b707 Спасибо тебе огромное!
так работает или нет?
Пробую...
Мега залилась, затык в ESP
Сейчас ESP ругается на boolean в файле UARTTransfer.cpp
---
UARTTransfer.cpp:11:10: error: prototype for 'boolean UARTTransfer::receiveData()' does not match any in class 'UARTTransfer'
boolean UARTTransfer::receiveData() {
^
In file included from sketch\UARTTransfer.cpp:1:0:
UARTTransfer.h:21:10: error: candidate is: bool UARTTransfer::receiveData()
bool receiveData();
---
Если заменить на bool UARTTransfer::receiveData() то заливает, но результат ноль
Проверил на связке двух ардуин (отправка с Меги на Нано) все работает. Продолжаем мучать ESP )) Пороюсь в закромах, может другую серию ESP найду
Проверил на связке двух ардуин (отправка с Меги на Нано) все работает. Продолжаем мучать ESP )) Пороюсь в закромах, может другую серию ESP найду
У меня этот код работает именно на ЕСП. Ошибки с bool - boolean нет
И еще имейте в виду, что одни и те же модели ЕСП бывают с разным кварцем, например ЕСП-01 бывает с кварцем на 26 и на 40 МГц. Если в настройках поставить неправильную частоту - практически все будет работать, кроме Сериал. Проверьте, просто в Монитор порта ваша Есп что-нибудь выводит?
Сама ESP работает, но вот с получением по сериал что-то глухо..... Сейчас 40МГц, 26 нет в меню... ХЗ... И как на зло осталось только две ESP-01...
Сама ESP работает, но вот с получением по сериал что-то глухо..... Сейчас 40МГц, 26 нет в меню...
В чем выражается. что "сама ЕСП работает" ? Если просто подключить ЕСП к USB и вывести в сериал что-то типа "Hello world" - в Мониторе порта это видно?
И то. что в меню нет 26 Мгц - это очень странно, должно быть.
по поводу кварца
На этой картинке кварц - небольшой серый прямоугольник под словом "Cloud". В лупу на нем можно прочитать цифры 26 или 40. Посмотрите на своей плате - если там 26, а в настройках 40 - сериал работать не будет
"Если просто подключить ЕСП к USB и вывести в сериал что-то типа "Hello world" - в Мониторе порта это видно?"
Да, работает.
"Посмотрите на своей плате - если там 26, а в настройках 40 - сериал работать не будет"
Таки 26
"И то. что в меню нет 26 Мгц - это очень странно, должно быть.
Спасибо! Обновил библиотеку появилось 26... Но пока не помогло )))) Отрыл таки ESP-07 результат тот же.
Я явно что-то делаю не так ... Надо сделать перерыв на сегодня...
b707 пока безрезультатно... и частоту менял ... и так... и эдак... Видимо где-то что-то я не то делаю, но не могу понять.
Вопрос (что не так с ESP в ниже приведенном варианте?)!
Мега (данные получаю и они уходят через 11 пин, тут все гуд)
Нано
Все работает и на Нано (Pin 9) данные получены.
А вот если то же засунуть в ESP
данных нет :(
RX,TX местами не перепутали?
Нет, не перепутал. Для чистоты эксперимента менял местами. И пины менял.
Либо библа не рабочая, либо с пинами, что-то не то.