В связи с выходом крупного обновления 5.9.х, приглашаем вас принять участие в вебинаре 09.06.2022 в 15:00. Участвовать

Плагин MQTT



  • 13.01 18:18:45.166 mqttclient1: Packet receive. cmd: publish

    13.01 18:18:45.167 mqttclient1: GET: tele/sonoff/STATE {"Time":"2019-01-13T17:18:44","Uptime":"0T03:38:26","Vcc":2.823,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    13.01 18:18:45.167 IH: get [{"id":"2","topic":"tele/sonoff/STATE","value":"{"Time":"2019-01-13T17:18:44","Uptime":"0T03:38:26","Vcc":2.823,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}"}]

    13.01 18:18:45.168 IH: set {"SOCKET1":{"dval":"ON","err":0}}

    13.01 18:18:45.220 mqttclient1: Packet receive. cmd: publish

    13.01 18:18:45.221 mqttclient1: GET: tele/sonoff/SENSOR {"Time":"2019-01-13T17:18:44","AM2301":{"Temperature":36.9,"Humidity":17.7},"TempUnit":"C"}

    13.01 18:18:45.221 IH: get [{"id":"1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:18:44","AM2301":{"Temperature":36.9,"Humidity":17.7},"TempUnit":"C"}"},{"id":"H1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:18:44","AM2301":{"Temperature":36.9,"Humidity":17.7},"TempUnit":"C"}"}]

    13.01 18:18:45.222 IH: set {"STEMP1":{"aval":36.9,"err":0},"SHUMIDITY1":{"aval":17.7,"err":0}}

    13.01 18:18:55.166 mqttclient1: Packet receive. cmd: publish

    13.01 18:18:55.167 mqttclient1: GET: tele/sonoff/STATE {"Time":"2019-01-13T17:18:54","Uptime":"0T03:38:36","Vcc":2.822,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    13.01 18:18:55.168 IH: get [{"id":"2","topic":"tele/sonoff/STATE","value":"{"Time":"2019-01-13T17:18:54","Uptime":"0T03:38:36","Vcc":2.822,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}"}]

    13.01 18:18:55.168 IH: set {"SOCKET1":{"dval":"ON","err":0}}

    13.01 18:18:55.218 mqttclient1: Packet receive. cmd: publish

    13.01 18:18:55.219 mqttclient1: GET: tele/sonoff/SENSOR {"Time":"2019-01-13T17:18:54","AM2301":{"Temperature":37.0,"Humidity":17.8},"TempUnit":"C"}

    13.01 18:18:55.219 IH: get [{"id":"1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:18:54","AM2301":{"Temperature":37.0,"Humidity":17.8},"TempUnit":"C"}"},{"id":"H1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:18:54","AM2301":{"Temperature":37.0,"Humidity":17.8},"TempUnit":"C"}"}]

    13.01 18:18:55.220 IH: set {"STEMP1":{"aval":37,"err":0},"SHUMIDITY1":{"aval":17.8,"err":0}}

    13.01 18:19:04.986 mqttclient1: Packet send. cmd:pingreq

    13.01 18:19:04.987 mqttclient1: Packet receive. cmd: pingresp

    13.01 18:19:05.167 mqttclient1: Packet receive. cmd: publish

    13.01 18:19:05.167 mqttclient1: GET: tele/sonoff/STATE {"Time":"2019-01-13T17:19:04","Uptime":"0T03:38:46","Vcc":2.827,"POWER1":"OFF","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    13.01 18:19:05.168 IH: get [{"id":"2","topic":"tele/sonoff/STATE","value":"{"Time":"2019-01-13T17:19:04","Uptime":"0T03:38:46","Vcc":2.827,"POWER1":"OFF","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}"}]

    13.01 18:19:05.168 IH: set {"SOCKET1":{"dval":"OFF","err":0}}

    13.01 18:19:05.172 mqttclient1: Packet receive. cmd: publish

    13.01 18:19:05.173 mqttclient1: GET: tele/sonoff/SENSOR {"Time":"2019-01-13T17:19:04","AM2301":{"Temperature":36.9,"Humidity":18.1},"TempUnit":"C"}

    13.01 18:19:05.174 IH: get [{"id":"1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:19:04","AM2301":{"Temperature":36.9,"Humidity":18.1},"TempUnit":"C"}"},{"id":"H1","topic":"tele/sonoff/SENSOR","value":"{"Time":"2019-01-13T17:19:04","AM2301":{"Temperature":36.9,"Humidity":18.1},"TempUnit":"C"}"}]

    13.01 18:19:05.174 IH: set {"STEMP1":{"aval":36.9,"err":0},"SHUMIDITY1":{"aval":18.1,"err":0}}



  • Сделайте формулу расчета входного значения:

    (JSON.parse(value).POWER1 == 'ON') ? 1 :0



  • Хз.Реле ожило,но переключается не всегда с первого раза и с такими тормозами,что просто ужас.Консоль тасмоты-

    18:17:11 MQT: stat/sonoff/RESULT = {"POWER1":"OFF"}

    18:17:11 MQT: stat/sonoff/POWER1 = OFF

    18:17:19 MQT: tele/sonoff/STATE = {"Time":"2019-01-13T18:17:19","Uptime":"0T00:03:12","Vcc":2.822,"POWER1":"OFF","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    18:17:19 MQT: tele/sonoff/SENSOR = {"Time":"2019-01-13T18:17:19","AM2301":{"Temperature":26.8,"Humidity":26.6},"TempUnit":"C"}

    18:17:25 MQT: stat/sonoff/RESULT = {"POWER1":"ON"}

    18:17:25 MQT: stat/sonoff/POWER1 = ON

    18:17:29 MQT: tele/sonoff/STATE = {"Time":"2019-01-13T18:17:29","Uptime":"0T00:03:22","Vcc":2.826,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    18:17:29 MQT: tele/sonoff/SENSOR = {"Time":"2019-01-13T18:17:29","AM2301":{"Temperature":26.8,"Humidity":26.7},"TempUnit":"C"}

    18:17:40 MQT: tele/sonoff/STATE = {"Time":"2019-01-13T18:17:40","Uptime":"0T00:03:33","Vcc":2.822,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    18:17:40 MQT: tele/sonoff/SENSOR = {"Time":"2019-01-13T18:17:40","AM2301":{"Temperature":26.8,"Humidity":26.7},"TempUnit":"C"}

    18:17:46 MQT: stat/sonoff/RESULT = {"POWER1":"OFF"}

    18:17:46 MQT: stat/sonoff/POWER1 = OFF

    18:17:50 MQT: tele/sonoff/STATE = {"Time":"2019-01-13T18:17:50","Uptime":"0T00:03:43","Vcc":2.822,"POWER1":"OFF","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    18:17:50 MQT: tele/sonoff/SENSOR = {"Time":"2019-01-13T18:17:50","AM2301":{"Temperature":26.7,"Humidity":26.7},"TempUnit":"C"}

    18:18:04 MQT: stat/sonoff/RESULT = {"POWER1":"ON"}

    18:18:04 MQT: stat/sonoff/POWER1 = ON

    18:18:05 MQT: tele/sonoff/STATE = {"Time":"2019-01-13T18:18:05","Uptime":"0T00:03:58","Vcc":2.824,"POWER1":"ON","POWER2":"ON","Wifi":{"AP":1,"SSId":"DIR","BSSId":"90:94:E4:F3:C1:F4","Channel":1,"RSSI":100}}

    18:18:05 MQT: tele/sonoff/SENSOR = {"Time":"2019-01-13T18:18:05","AM2301":{"Temperature":26.7,"Humidity":26.9},"TempUnit":"C"}



  • Вообщем помучался я с этой тасмотой и забросил.Находил инфу,что тасмота не всегда корректно работает с mqtt.Но кучка esp не дает покоя.Может сделаете плагин под эту прошивку-https://ab-log.ru/forum/viewtopic.php?f=1&t=1130 :roll:



  • @art:

    Вообщем помучался я с этой тасмотой и забросил.Находил инфу,что тасмота не всегда корректно работает с mqtt.Но кучка esp не дает покоя.Может сделаете плагин под эту прошивку-https://ab-log.ru/forum/viewtopic.php?f=1&t=1130

    Судя по сообщениям на форуме этот проект уже не поддерживается. Делать плагин не имеет смысла.

    Да и девайса такого у нас нет.



  • Делайте как на мегад, у меня все работает.



  • Т.е. использовать плагин от Меги?



  • Да



  • Доброго времени суток.Не получается настроить mqtt на esp,с прошивкой espeasy r120. В отладчике mqtt клиента в IH пишет-

    packet send.cmd subscribe

    packet receive.cmd suback

    packet send.cmd pinqresp

    packet receive.cmd pinqresp

    Что это?

    И еще вопрос откуда берутся формулы расчета входного значения?
    S90507-203309.jpg
    S90507-203325(1).jpg
    S90507-203334.jpg
    S90507-203342.jpg
    S90507-203346.jpg



  • Еще
    S90507-203358.jpg
    S90507-203405.jpg



  • Вот так топики в интре
    Screenshot.png



  • @art:

    Доброго времени суток.Не получается настроить mqtt на esp,с прошивкой espeasy r120. В отладчике mqtt клиента в IH пишет-

    packet send.cmd subscribe

    packet receive.cmd suback

    packet send.cmd pinqresp

    packet receive.cmd pinqresp

    Что это?

    И еще вопрос откуда берутся формулы расчета входного значения?

    Добрый день.

    Сообщения в отладчике говорят, что брокер из IH доступен (пингуется), подписка выполнена

    Но по подписке видимо ничего не приходит. Нужно убедиться, что топик верный

    Для этого можно посмотреть, что присылает девайс на брокер.

    Если у Вас mosquitto, то можно сделать так:

    Остановить службу

    sudo service mosquitto stop
    
    

    И запустить mosquitto в консоли:

    mosquitto -v
    
    

    Вот что получаем например от реле shelly

    pi@ihserver:/opt $ mosquitto -v
    1557329387: mosquitto version 1.6.2 starting
    1557329387: Using default config.
    1557329387: Opening ipv4 listen socket on port 1883.
    1557329387: Opening ipv6 listen socket on port 1883.
    1557329387: New connection from 127.0.0.1 on port 1883.
    1557329387: New client connected from 127.0.0.1 as mqttjs_c5143dac (p2, c1, k60, u'login').   // это подключился плагин
    1557329387: Sending CONNACK to mqttjs_c5143dac (0, 0)
    1557329387: Received SUBSCRIBE from mqttjs_c5143dac . // Плагин подписался 
    1557329387: 	shellies/shelly1-12BAAE/relay/0 (QoS 0) . // Это топик
    1557329387: mqttjs_c5143dac 0 shellies/shelly1-12BAAE/relay/0
    1557329387: Sending SUBACK to mqttjs_c5143dac
    1557329394: New connection from 192.168.0.131 on port 1883\. //Это подключился девайс - shelly
    1557329394: New client connected from 192.168.0.131 as shelly1-12BAAE (p2, c1, k60).
    1557329394: Sending CONNACK to shelly1-12BAAE (0, 0)
    1557329394: Received PUBLISH from shelly1-12BAAE (d0, q0, r0, m0, 'shellies/shelly1-12BAAE/relay/0', ... (2 bytes)) 
            // Девайс публикует топик, на который мы подписались. значения здесь не видно, но размер 2 байта - то есть это просто значение  
    1557329424: Sending PUBLISH to mqttjs_c5143dac (d0, q0, r0, m0, 'shellies/shelly1-12BAAE/relay/0', ... (2 bytes)) .  
            // Брокер перенаправляет сообщение на плагин в IH 
    
    
    

    Кстати, почему вы ожидаете значение в JSON? Для начала уберите формулу JSON.parse в настройке канала



  • Про json я вообще не в курсе.Какую мне прошивку для esp использовать чтоб все работало?А то мне mqtt уже снится.



  • 1.jpeg
    2.jpeg
    Правильно укажи топик : у меня это название уст-ва из Unit Name:, затем devices Name, затем Values



  • Огромное спасибо!Все заработало!



  • Нужна помощь с прошивкой Tasmota,а именно управлять реле.

    Есть два реле,управляются топиками cmnd/sonoff/power 1 on и cmnd/sonoff/power 1 off(cmnd/sonoff/power 2 off и cmnd/sonoff/power 2 on).Если отправлять через консоль тасмоты,то реле вкл и откл.Но через IH никак.

    Спасибо
    Screenshot (3).png
    Screenshot (4).png
    Screenshot (5).png
    Screenshot (6).png



  • @art:

    Нужна помощь с прошивкой Tasmota,а именно управлять реле.

    Есть два реле,управляются топиками cmnd/sonoff/power 1 on и cmnd/sonoff/power 1 off(cmnd/sonoff/power 2 off и cmnd/sonoff/power 2 on).Если отправлять через консоль тасмоты,то реле вкл и откл.Но через IH никак.

    Спасибо

    Добрый день.

    На вкладке Канал нужно прописать топик получения состояния, а не управления: stat/sonoff/POWER2, а не cmnd/sonoff/power2

    Этот топик публикует ON/OFF, поэтому на вкладке Обработка - Формула входного значения - нужно ввести (value == 'ON')?1:0



  • Спасибо,все получилось!



  • Всем привет. Я только начинаю разбираться с MQTT, установил брокер на роутер, через плагин для хрома (MQTT LENS) подключается отлично, в консоли вижу подключение. А через IntraHouse не хочет, висит табличка STOP. Указан адрес роутера и порт 1883.

    Как понять, в чем проблема?



  • @gewer, добрый день!
    Нужно смотреть отладчик плагина, что выдается при запуске плагина. А какой брокер Вы установили? Мы обычно используем mosquitto.


Log in to reply