Подключеие MQTT Windows

Проблемы/вопросы, связанные с запуском под различными платформами и конфигурациями.

Модератор: immortal

alex32
Сообщения: 29
Зарегистрирован: Чт мар 30, 2017 4:14 pm
Благодарил (а): 7 раз
Поблагодарили: 0

Re: Подключеие MQTT Windows

Сообщение alex32 » Вт апр 04, 2017 11:29 am

нашел рабочий скетч. переделал под себя. 2 реле управляются, но не понимаю что происходит при старте меги.
Start...
IP: 10.3.1.194
Connect to MQTT-broker... Failed, rc=-2 try again in 10 seconds
Connect to MQTT-broker... Failed, rc=-2 try again in 10 seconds
Connect to MQTT-broker... Failed, rc=-2 try again in 10 seconds
Connect to MQTT-broker... success

-------
New callback of MQTT-broker
home/data/status/rele2 0 //почему только одно реле2? где второе?
-------

т.е. только одно rele2 переключается в исходную позицию -выключается (оба переключателя можордомо выключены). rele3 остается включенным.
и вообще как при старте меги сделать так, чтоб реле сами не включались?
Вложения
mqtt_publish_in_callback_rele2_rele3.rar
(2.13 КБ) 219 скачиваний
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключеие MQTT Windows

Сообщение nick7zmail » Ср апр 05, 2017 2:24 pm

Вопрос по MQTT...давно спросить хотел...
Если я к примеру хочу раз в минуту скидывать показания датчика...пишу скетч с delay(60000); mqtt насильно отключает клиента...как поддерживать конект, ничего не присылая при этом?? И возможно ли это вообще? Или нужно обязательно слать что нить раз секунд в 15?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
alex32
Сообщения: 29
Зарегистрирован: Чт мар 30, 2017 4:14 pm
Благодарил (а): 7 раз
Поблагодарили: 0

Re: Подключеие MQTT Windows

Сообщение alex32 » Ср апр 05, 2017 4:33 pm

последнюю функцию посмотрите

if (!client.connected()) {//Если соединение MQTT неактивно, то пытаемся установить его и опубликовать/подписаться
Serial.print("Connect to MQTT-broker... ");
if (client.connect("Mega2560")) { //Подключаемся и публикуемся/подписываемся
Serial.println("success");
client.publish("home/data/status/sensor/temp", char_temp); //отправляем в Брокер значения
client.publish("home/data/status/sensor/hum", char_hum);
// client.publish("home/data/status/rele2_2", String(strPayload).c_str());
client.subscribe("home/data/status/rele2");//Подписываемся на переключатель MajorDoMo
client.subscribe("home/data/status/rele3");//Подписываемся на переключатель MajorDoMo
} else {
Serial.print("Failed, rc=");//Если не подключились, ждем 10 секунд и пытаемся снова
Serial.print(client.state());
Serial.println(" try again in 10 seconds");
delay (10000);
}
}

else {
if(millis() > (last_time + send_interval*1000)) {//Если соединение активно, то отправляем данные на сервер с заданным интервалом времени
last_time = millis();
// if (DHT.read22(DHT22_PIN)==DHTLIB_OK) {
client.publish("home/data/status/sensor/temp", char_temp); //отправляем в Брокер значения
client.publish("home/data/status/sensor/hum", char_hum);
// client.publish("home/data/status/rele2_2", String(strPayload).c_str());
// }
}
}
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключеие MQTT Windows

Сообщение nick7zmail » Ср апр 05, 2017 4:51 pm

Не...это понятно...если отвалился - восстанавливаем подключение...а как сделать чтоб не отваливался то?? Если я, например подписан на топик (помимо отправки данных раз в минуту) - если клиент отвалился, топик не дойдет до него, действие не отработается.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
alex32
Сообщения: 29
Зарегистрирован: Чт мар 30, 2017 4:14 pm
Благодарил (а): 7 раз
Поблагодарили: 0

Re: Подключеие MQTT Windows

Сообщение alex32 » Ср апр 05, 2017 4:58 pm

так он и не отваливается. вот сессия. если отвалится по сетевым проблемам, то заново восстановится
mosquitto.exe:14160 TCP 10.3.1.155:1883 10.3.1.194:49294 ESTABLISHED

можете подсказать как состояние цифрового выхода (реле) и входа (датчик движения например) передать в МД? не могу найти образцы. и как кнопку в МД подкрасить?
Последний раз редактировалось alex32 Ср апр 05, 2017 5:05 pm, всего редактировалось 1 раз.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключеие MQTT Windows

Сообщение nick7zmail » Ср апр 05, 2017 5:04 pm

Не...брокер то у меня висит, проблем сетевых нет...он просто отбрасывает автоматически клиента, если тот ничего не присылал в течении 25-30 секунд.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключеие MQTT Windows

Сообщение nick7zmail » Ср апр 05, 2017 7:52 pm

Чтобы было понятнее о чем речь...
МД вот кидается какими-то пингами с брокером..каждые секунд 5

Код: Выделить всё

1491410894: Sending SUBACK to MDClient
1491410899: Received PINGREQ from MDClient
1491410899: Sending PINGRESP to MDClient
1491410904: Received PINGREQ from MDClient
1491410904: Sending PINGRESP to MDClient
А вот ардуина, если ничего не скидывает более 20 сек - брокер её выкидывает просто.

Код: Выделить всё

1491411241: Client arduinoClient has exceeded timeout, disconnecting.
1491411241: Socket error on client arduinoClient, disconnecting.
Как эти пинги кинуть брокеру с ардуины?))
Уже все примеры перерыл...ничего не могу найти такого((
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
alex32
Сообщения: 29
Зарегистрирован: Чт мар 30, 2017 4:14 pm
Благодарил (а): 7 раз
Поблагодарили: 0

Re: Подключеие MQTT Windows

Сообщение alex32 » Чт апр 06, 2017 3:25 pm

Слетела у меня МД. пока пеставлял заметил эти пинги между мегой и москито )))) зато МД теперь не хочет подписываться. только рассылки делает.
1491481264: New connection from 127.0.0.1 on port 1883.
1491481264: New client connected from 127.0.0.1 as MajorDoMo MQTT Client (c1, k10).
1491481264: Sending CONNACK to MajorDoMo MQTT Client (0, 0)
1491481264: Received PUBLISH from MajorDoMo MQTT Client (d0, q0, r0, m0, 'home/data/status/rele2', ... (1 bytes))
1491481264: Sending PUBLISH to Mega2560 (d0, q0, r0, m0, 'home/data/status/rele2', ... (1 bytes))
1491481264: Received DISCONNECT from MajorDoMo MQTT Client
1491481264: Client MajorDoMo MQTT Client disconnected.
1491481273: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/sensor/temp', ... (3 bytes))
1491481273: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/sensor/hum', ... (3 bytes))
1491481273: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/flame3', ... (3 bytes))
1491481280: Received PINGREQ from Mega2560
1491481280: Sending PINGRESP to Mega2560
1491481283: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/sensor/temp', ... (3 bytes))
1491481283: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/sensor/hum', ... (3 bytes))
1491481283: Received PUBLISH from Mega2560 (d0, q0, r0, m0, 'home/data/status/flame3', ... (3 bytes))
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключеие MQTT Windows

Сообщение nick7zmail » Чт апр 06, 2017 3:52 pm

А можно скетч с пингами глянуть?))
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
alex32
Сообщения: 29
Зарегистрирован: Чт мар 30, 2017 4:14 pm
Благодарил (а): 7 раз
Поблагодарили: 0

Re: Подключеие MQTT Windows

Сообщение alex32 » Чт апр 06, 2017 3:57 pm

пинги чего?
Вложения
mqtt_publish_in_callback_rele2_rele3_temperatura_flame.rar
(2.29 КБ) 246 скачиваний
Ответить