Страница 3 из 5

MQTT

Добавлено: 20.06.2017{, 11:04}
Слимпер
Anydy писал(а):Я думаю что обычным способом добавить библиотеку в блок не получится. В Arduino IDE нужно в ядро добавлять....Так что нет смысла в блоке ее добавлять...
Тогда надо в описании блока указать адрес ссылки где написано, что и как надо дела.

MQTT

Добавлено: 20.06.2017{, 11:06}
Tehnik053
А какую плату выбирать при создании проекта? И я так понимаю номера входов выходов нужно смотреть по даташиту ЕСП? Т.е. Какой вход соответствует тому или иному GPIO ? Простите за дурацкие вопросы.

MQTT

Добавлено: 20.06.2017{, 11:28}
Anydy
Слимпер писал(а):правили только главный блок секции Declare и Setup
Вроде да, только там))

Добавлено (20.06.2017, 11:28)
---------------------------------------------
Слимпер писал(а):Тогда надо в описании блока указать адрес ссылки где написано, что и как надо делать
В общем не сложно, вот например статья
но ссылку может придется указать по IP адресу а не по домену - вот так : http://104.131.82.128/stable/package_es ... index.json
Tehnik053 писал(а):А какую плату выбирать при создании проекта? И я так понимаю номера входов выходов нужно смотреть по даташиту ЕСП? Т.е. Какой вход соответствует тому или иному GPIO ?
Выше ссылка как добавить плату, GPIO да, по даташиту смотреть, зависит от модели ESP, кстати в модели 07 выводы 4 и 5 перепутаны.

MQTT

Добавлено: 20.06.2017{, 13:59}
Слимпер
Anydy писал(а):В общем не сложно, вот например статья
Вот еще статью нашел Arduino IDE для ESP8266

MQTT

Добавлено: 20.06.2017{, 14:11}
starshoy81
Слимпер, в главном блоке, в описании надо лишний текст про адреса перенести в блок w5100. Еще один момент: при полном указании данных сети для эзернет шилда, мой роутер (tp-link 3420) его не подключает. Подключается только, если оставить инициализацию мак адреса, т.е. получение адресов по DHCP.

MQTT

Добавлено: 20.06.2017{, 14:15}
Anydy
Да, на этом сайте много полезной информации по ESP8266, на Гике сегодня статья про ESP32 появилась, хотя я думаю будет лучше и дешевле использовать STM32 + ESP8266 мостом!
За 200 -250р имеем кучу интерфейсов, кучу GPIO, часы на борту, 12-битный АЦП, USB без всяких там дополнительных программаторов, ну про частоту ядра и обьем памяти не буду говорить....
Добавляем ESP8266 любую и радуемся!

MQTT

Добавлено: 20.06.2017{, 14:51}
Слимпер
starshoy81 писал(а):Слимпер, в главном блоке, в описании надо лишний текст про адреса перенести в блок w5100. Еще один момент: при полном указании данных сети для эзернет шилда, мой роутер (tp-link 3420) его не подключает. Подключается только, если оставить инициализацию мак адреса, т.е. получение адресов по DHCP.
Перенес описание. Спасибо за замечание
Добавил выбор получения IP Адреса по DHCP
Исправил ошибку в блоке MQTT ESP8266
Вот обновленная версия

MQTT

Добавлено: 20.06.2017{, 15:46}
starshoy81
Слимпер, Anydy, еще вопрос - что заливать в есп? Esp-link или АТ прошивку?

MQTT

Добавлено: 20.06.2017{, 21:35}
Anydy
starshoy81 писал(а):что заливать в есп? Esp-link или АТ прошивку?
я еще не смотрел что Слимпер наваял, скорее всего заливать весь код в ESP

MQTT

Добавлено: 20.06.2017{, 21:48}
starshoy81
Anydy, код там универсальный. Сама есп как отдельный контроллер имеет смысл только если собирать данные с модбас устройств или в виде удаленного датчика. Поэтому интересно использовать есп как шлюз в сеть. Например используя библиотеку el-client в ардуине в связке с есп прошитой esp-link.

MQTT

Добавлено: 21.06.2017{, 07:50}
Слимпер
Anydy писал(а):я еще не смотрел что Слимпер наваял, скорее всего заливать весь код в ESP
Да именно так, я просто перенес в блок то, сделали Anydy, Stranick.
starshoy81 писал(а):Сама есп как отдельный контроллер имеет смысл только если собирать данные с модбас устройств или в виде удаленного датчика. Поэтому интересно использовать есп как шлюз в сеть. Например используя библиотеку el-client в ардуине в связке с есп прошитой esp-link.
Ну может и так, но в эти дебри я пока не лазил. Так что комментировать не могу.

MQTT

Добавлено: 21.06.2017{, 13:36}
starshoy81
Слимпер писал(а):Да именно так, я просто перенес в блок то, сделали Anydy, Stranick.
Ага, значит внимание всем использующим блок есп - данный код заливать в ЕСП! Пины есп смотреть в даташите.

MQTT

Добавлено: 21.06.2017{, 19:24}
Слимпер
Так снова обновленная версия
Добавил в описание
starshoy81 писал(а):Ага, значит внимание всем использующим блок есп - данный код заливать в ЕСП! Пины есп смотреть в даташите.
 
Еще по просьбе Stranick, в блок публикации добавил новый параметр.
starshoy81 писал(а):Поэтому интересно использовать есп как шлюз в сеть. Например используя библиотеку el-client в ардуине в связке с есп прошитой esp-link.
Если вы в этой теме разбираетесь, можете дать ссылки что до как. Гляну на сколько это сложно в блок добавить. 
Желательно на русском, а то инглешь только с переводчиком.

Добавлено (21.06.2017, 19:24)
---------------------------------------------
Так еще одна доработка по просьбе  Stranick

Блоки

Новые параметры
В блоке Публикации RETAIN


СпойлерПоказать
Данный флаг служит для индикации сохранения последнего принятого брокером сообщения. То есть флаг RETAIN=1 в сообщении PUBLISH от издателя сообщает брокеру о том, что сообщение по этой теме нужно сохранить и, когда новый подписчик присоединится к теме, отправить ему это сообщение.
 

В блоке Подписки  QoS подписываться на сообщения QoS 0 или QoS 1 

Если у кого будет возможность проверить, отпишетесь работают блоки после доработки или нет.

MQTT

Добавлено: 21.06.2017{, 23:32}
starshoy81
Слимпер писал(а):Если вы в этой теме разбираетесь, можете дать ссылки что до как. Гляну на сколько это сложно в блок добавить.
Я копаю по этой теме информацию, но полной картины у меня еще нет.
По
используя библиотеку el-client в ардуине в связке с есп прошитой esp-link.
я так понял, что надо в есп настроить соединение с mqtt сервером, а из ардуино гонять данные через ком порт в виде строк, причём синхронизация через компорт организована в библиотеке el-client.
Вот здесь библиотека el-client, если открыть эту страницу в браузере и перевести её, то можно разобраться, там довольно понятно и подробно описаны команды.

MQTT

Добавлено: 22.06.2017{, 08:30}
Слимпер
starshoy81 писал(а):Вот здесь библиотека el-client, если открыть эту страницу в браузере и перевести её, то можно разобраться, там довольно понятно и подробно описаны команды.
Посмотрел я эту библиотеку, в ней напрямую реализвана работа с MQTT и не используется библиотека PubSubClient, на базе которой сейчас блок работает.
Так что это будет несколько сложнее, чем я думал.
Но в принципе нет нечего не возможного. Но как я писал проверить не могу сам.
Если кто будет тестировать, то попробую написать, но  не факт что быстро, у меня и свои дела есть.

starshoy81, Если вам это тема действительно интересно, попробуйте запустить пример из библиотеки. Вот если получится тогда подумаю над тем чтобы начать разбираться с этой библиотекой.

Добавлено (22.06.2017, 08:30)
---------------------------------------------
Так, еще вопрос Всем, к Текущему функционалу нареканий нет?

Просто думал выкладывать в Блоки пользователя или нет?

MQTT

Добавлено: 22.06.2017{, 22:05}
starshoy81
Слимпер писал(а): в ней напрямую реализвана работа с MQTT и не используется библиотека PubSubClient
да я собираюсь сделать контроль своего зарядника от солнечных батарей, через подобную связку.
Слимпер писал(а):Так, еще вопрос Всем, к Текущему функционалу нареканий нет?
Если в выходные успею, перезагружу прошивку на даче с новыми блоками.

MQTT

Добавлено: 22.06.2017{, 22:59}
Anydy
Слимпер писал(а):Так, еще вопрос Всем, к Текущему функционалу нареканий нет?
Я не проверял на ESP, мне более интереснее щас отстроить связку SIM800 + MQTT + Mqttwarn... настроил, проверяю надежность...

Вы используете стандартную библиотеку для Ethernet шилд ардуино.
Может правильней использовать форк этой библиотеки для ESP8266?

MQTT

Добавлено: 23.06.2017{, 06:54}
Слимпер
Anydy писал(а):Может правильней использовать форк этой библиотеки для ESP8266?
Вот если честно не знаю, чем это будет лучше, только если более поддержка MQTT.
Но зато, что то там сильно вызов функций отличается, посмотрел примеры и даже не понял некоторые формы записи :

СпойлерПоказать
client.publish(MQTT::Publish("outTopic", "hello world qos=1")
                 .set_qos(1));
или
void callback(const MQTT::Publish& pub)
Может если это мне было действительно надо, я бы и стал разбираться, но тогда для начала надо изучать сам протокол MQTT. 

А я пока им и не пользовался не разу. (кроме тестов)

Так блок по описание библиотеки сделал блоки.

Так что пока не пойму, что это ну очень сильно надо, вряд ли буду переводить блок на другую библиотеку. И сейчас вроде работает. Лень страшная сила Изображение

MQTT

Добавлено: 23.06.2017{, 13:06}
starshoy81
Слимпер писал(а):Если у кого будет возможность проверить, отпишетесь работают блоки после доработки или нет.
Блоки эзернет и есп обязательно надо выносить на другую плату перед платой с блоком Главный. Иначе в коде объявление имени переменной MQTTclient происходит позже её инициализации. В описании блока данное действие носит рекомендательный характер.

MQTT

Добавлено: 23.06.2017{, 13:28}
Слимпер
starshoy81 писал(а):Блоки эзернет и есп обязательно надо выносить на другую плату перед платой с блоком Главный. Иначе в коде объявление имени переменной MQTTclient происходит позже её инициализации. В описании блока данное действие носит рекомендательный характер.
Не совсем так, тут почему то еще важна последовательность добавления блоков.
Если сперва вставить блок ESP (Езернет), а уже затем Главный то в коде все в порядке.