[Модуль] MQTT (mqtt)
Модератор: immortal
Re: [Модуль] MQTT (mqtt)
Да вот в том-то и дело, что с недавнего времени заметил, что MQTT работает прекрасно, а параметры ThisComputer.cycle_mqttRun и ThisComputer.cycle_mqttControl просто пустые!
Кажется после какого-то обновления модуля MQTT... но могу ошибаться.
Кажется после какого-то обновления модуля MQTT... но могу ошибаться.
- Вложения
-
- mqtt_control.jpg (67.14 КБ) 5229 просмотров
Re: [Модуль] MQTT (mqtt)
Доброго дня, уважаемые форумчане. помогите пожалуйста разобраться с работой MQTT.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
Re: [Модуль] MQTT (mqtt)
Сперва надо найти причину - почему 1 прилетает из брокера. Если из брокера прилетело - значит ему кто то отправил. Либо прошивку добавить, смотреть где косяк, либо мд, если сам же МД это засыпает.Serega66 писал(а): Вт апр 02, 2019 4:14 pm Доброго дня, уважаемые форумчане. помогите пожалуйста разобраться с работой MQTT.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
Re: [Модуль] MQTT (mqtt)
Ну хз...в цикле по идее прописано setglobal вроде. Должно записываться.hc2hunter писал(а): Вт апр 02, 2019 3:07 pm Да вот в том-то и дело, что с недавнего времени заметил, что MQTT работает прекрасно, а параметры ThisComputer.cycle_mqttRun и ThisComputer.cycle_mqttControl просто пустые!
Кажется после какого-то обновления модуля MQTT... но могу ошибаться.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Re: [Модуль] MQTT (mqtt)
Спасибо за оперативный ответ. А как можно это проверить. и как из брокера удалить неиспользуемую строкуnick7zmail писал(а): Вт апр 02, 2019 6:07 pmСперва надо найти причину - почему 1 прилетает из брокера. Если из брокера прилетело - значит ему кто то отправил. Либо прошивку добавить, смотреть где косяк, либо мд, если сам же МД это засыпает.Serega66 писал(а): Вт апр 02, 2019 4:14 pm Доброго дня, уважаемые форумчане. помогите пожалуйста разобраться с работой MQTT.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
- Вложения
-
- MQTT.jpg (115.35 КБ) 5189 просмотров
Re: [Модуль] MQTT (mqtt)
Вообщем не выдержал, решил протестировать библиотеку phpMQTT с примерами из GITа.rzag писал(а): Вс мар 31, 2019 8:11 pmСпасибо, но все равно не пойму, зачем создавать два подключения, отдельно для публикации и отдельно для подписки.Aven писал(а): Вс мар 31, 2019 8:05 pm для Publish используется отдельное подключение, а не существующее которое прослушивает подписки
Они не создают конфликт для брокера ?
Как раньше писал - рвется соеденение, сразу после публикации - это особенности библиотеки phpmqtt ?
Напоминаю, что проблема в том, что mjd разрывает соеденение, которое слушает мои топики с других устройств при этом в момент переподключения теряется инфо для mjd:
Client m (#5ca260cdbfc9f) has exceeded timeout, disconnecting.
1554154305: Socket error on client m (#5ca260cdbfc9f), disconnecting.
Запускаю скрипт подписки с примера из GITa - и ни одного разрыва - все четко принимается!!!!!
Получается, что зря грешил на библиотеку.
Выходит проблема на стороне mjd
Сам скрипт:
<?php
require("/var/www/lib/mqtt/phpMQTT.php");
$server = "192.168.1.40"; // change if necessary
$port = 1883; // change if necessary
$username = ""; // set your username
$password = ""; // set your password
$client_id = "phpMQTT-subscriber"; // make sure this is unique for connecting t$
$mqtt = new phpMQTT($server, $port, $client_id);
if(!$mqtt->connect(true, NULL, $username, $password)) {
exit(1);
}
$topics['#'] = array("qos" => 0, "function" => "procmsg");
$mqtt->subscribe($topics, 0);
while($mqtt->proc()){
}
$mqtt->close();
function procmsg($topic, $msg){
echo "Msg Recieved: " . date("r") . "\n";
echo "Topic: {$topic}\n\n";
echo "\t$msg\n\n";
}
?>
- nightwind
- Сообщения: 332
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Контактная информация:
Re: [Модуль] MQTT (mqtt)
для начала - ты наступаешь на те же грабли, что и большинство. у тебя и статус и команда - это одно и то же. по нажатию выключателя должна отправляться команда на включение, и если она успешна - придти статус 1. а вдруг она не выполнится, а у тебя в мажоре уже статус 1 от выключателя выставился.Serega66 писал(а): Вт апр 02, 2019 7:58 pmСпасибо за оперативный ответ. А как можно это проверить. и как из брокера удалить неиспользуемую строкуnick7zmail писал(а): Вт апр 02, 2019 6:07 pmСперва надо найти причину - почему 1 прилетает из брокера. Если из брокера прилетело - значит ему кто то отправил. Либо прошивку добавить, смотреть где косяк, либо мд, если сам же МД это засыпает.Serega66 писал(а): Вт апр 02, 2019 4:14 pm Доброго дня, уважаемые форумчане. помогите пожалуйста разобраться с работой MQTT.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
2. смотри retained флаги. сообщение с таким флагом висит вечно, и после дисконнекта-коннекта прилетает заново.
Re: [Модуль] MQTT (mqtt)
Уважаемый nightwind а можно чуть по подробней, вашу мысль я уловил(сначала команда на исполнение потом подтверждение о выполнении ) но я не программист. подскажите как в MQTT отправить retained флаг можно где нибудь пример кода подсмотреть. в ардуине у меня так и прописано а вот с МД я тормозnightwind писал(а): Вт апр 02, 2019 9:44 pmдля начала - ты наступаешь на те же грабли, что и большинство. у тебя и статус и команда - это одно и то же. по нажатию выключателя должна отправляться команда на включение, и если она успешна - придти статус 1. а вдруг она не выполнится, а у тебя в мажоре уже статус 1 от выключателя выставился.Serega66 писал(а): Вт апр 02, 2019 7:58 pmСпасибо за оперативный ответ. А как можно это проверить. и как из брокера удалить неиспользуемую строкуnick7zmail писал(а): Вт апр 02, 2019 6:07 pmСперва надо найти причину - почему 1 прилетает из брокера. Если из брокера прилетело - значит ему кто то отправил. Либо прошивку добавить, смотреть где косяк, либо мд, если сам же МД это засыпает.Serega66 писал(а): Вт апр 02, 2019 4:14 pm Доброго дня, уважаемые форумчане. помогите пожалуйста разобраться с работой MQTT.
Я прикрутил ардуино с релюшками для управления освещением тех самых свитчей которые
уже предустановлены в МД и используют простые устройства и модуль MQTT. МД установлен на малине.
после экспериментов с ардуиной в брокере осталась строка которую я не могу удалить, после удаления
она появляется снова.
и второй вопрос я сделал пять свитчей и периодически самопроизвольно включаются выключатели
которые еще не прикручены к ардуине но самое поршивое что один из трех которые уже подключены тоже
периодически включается сам. Включение происходит из за того что из брокера в ардуину и в МД
прилетает (1) хотя должен быть (0). подскажите как найти причину произвольного включения.
2. смотри retained флаги. сообщение с таким флагом висит вечно, и после дисконнекта-коннекта прилетает заново.
- nightwind
- Сообщения: 332
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Контактная информация:
Re: [Модуль] MQTT (mqtt)
В модуле, там где ты привязыаешь объекты к топикам, есть флаг Retained. его лучше вообще не использовать, кроме специфических ситуаций.
- nightwind
- Сообщения: 332
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Контактная информация:
Re: [Модуль] MQTT (mqtt)
тут писал, многа букоффSerega66 писал(а): Вт апр 02, 2019 10:11 pm (сначала команда на исполнение потом подтверждение о выполнении )