• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

IoT Manager - сообщаем о багах

Victor

Administrator
Команда форума
ECONNRESET (Connection reset by peer)
Это известный баг, уже исправлен в бета версии 1.5.1.
В этой версии (1.5.0) все происходит слишком быстро на paho native, и с точки зрения CloudMQTT - вы спамер и он дропает соединения с вашего IP адреса своим фаерволом (а может это просто ограничение скорости работы на бесплатных аккаунтах)
Неплохо помогает перезагрузка брокера в панели управления CloudMQTT.
В бета версии 1.5.1 добавлены принудительные тормоза, чтобы этого не происходило.
 

Scorpio

New member
Попробовал новую версию. Теперь пишет в логе Connect Timed out. Думал туплю с настройками, но IoT MQTT Dashboard с теми же настройками подключается. Какие там порты надо вводить на разных движках?
 

Victor

Administrator
Команда форума
Какие там порты надо вводить на разных движках?
paho native - порт самый первый из списка, т.е. тот же, что вы указываете на устройствах
на остальных - WebSockets SSL (TLS), т.е. последний из списка (ну и включить SSL в настройках движка)
но paho native самый быстрый.

cloudmqtt.jpg
 

Scorpio

New member
Заработала машинка. С первым портом. Надо в Help программки добавить. Спасибо. Буду дальше тестить :)
 

Mоnk

Member
Сегодня обновился ИоТманагер.
Начались странности отображения на телефоне.
Эскиз на базе второго стандартного (с гитхаба) примера.
Используется всего два пункта, остальные в ремарках.
Код:
  id    [0] = "0";      // ===== строка в менеджере
  page  [0] = "AM2302";
  descr [0] = "Температура";
  widget[0] = "small-badge";
  pin   [0] = DHT_pin;                                   // DHT22_t
  sTopic[0] = prefix + "/" + deviceID + "/DHT22_t";
  badge [0] = "\"badge\":\"badge-calm\"";                  // see http://ionicframework.com/docs/components/#colors
  style [0]   = "\"style\":\"font-size:150%;\"";

  id    [1] = "1";      // ===== строка в менеджере
  page  [1] = "AM2302";
  descr [1] = "Влажность";
  widget[1] = "small-badge";
  pin   [1] = DHT_pin;                                   // DHT22_h
  sTopic[1] = prefix + "/" + deviceID + "/DHT22_h";
  badge [1] = "\"badge\":\"badge-calm\"";                  // see http://ionicframework.com/docs/components/#colors
  style [1]   = "\"style\":\"font-size:150%;\"";
В предыдущей версии был один экран, который показывал эти два пункта.
Сейчас имею закладку "Все", и две "AM2302", которые ни чем не отличаются от "Все".
Если делать "Рефреш", добавляются еще по две закладки "AM2302".
Если перезапустить приложение, закладка "Все", и две "AM2302", которые ни чем не отличаются от "Все".

Что я делаю не так?
 

Victor

Administrator
Команда форума
Что я делаю не так?
Вы все делаете правильно, просто примеры немного устарели, а я их не обновил.
Нужно добавить [inline]pageId = 1[/inline] (регистр имеет значение) в первый и второй конфиг. [inline]pageId[/inline] всегда должен быть больше [inline]0[/inline]
 

Mоnk

Member
Да уж, подробной инструкции не хватает. И понимания, как старое на новое портировать.
Спасибо, буду пробовать.
 

Scorpio

New member
Я так понимаю, что в этих инструкциях ничего не сказано про скетч для arduino IDE. Думаю, что не все понимают, как его видоизменять под свои нужды.
 

Victor

Administrator
Команда форума
Я так понимаю, что в этих инструкциях ничего не сказано про скетч для arduino IDE. Думаю, что не все понимают, как его видоизменять под свои нужды.
Да, выяснилось что не всем под силу разобраться.
Именно поэтому сейчас в работе интеграция IoT Manager с ESPeasy (обсуждение этой прошивки здесь)
К espeasy легко подключить различные датчики не написав ни строчки кода.
IoT Manager будет перехватывать mqtt сообщения с ESPeasy по протоколу Domoticz.
Тогда вам вообще не придется писать какие-либо скетчи.
Достаточно будет один раз отправить текстовые JSON конфиги виджетов консольной утилитой на брокер.
 

Scorpio

New member
С другой стороны, arduino IDE более универсальное решение. ESP можно использовать просто в качестве последовательного порта для самодельного умного дома. У самой ESP достаточно скромные возможности, как у МК. Было бы не плохо описать API IoT Manager с другой стороны. Возможно достаточно описания формата сообщений, с примерами скетчей для разных конфигураций.
 

Victor

Administrator
Команда форума
С другой стороны, arduino IDE более универсальное решение
От него никто и не планирует отказываться - просто понижаем порог скилла для вхождения в тему :)
Возможно достаточно описания формата сообщений, с примерами скетчей для разных конфигураций.
Есть примеры на python - монитор Raspbery Pi, platformio. Даже на bash люди прислали :)
GitHub - 4refr0nt/iot-manager-demo: Demo sketches for IoT Manager https://play.google.com/store/apps/details?id=ru.esp8266.iotmanager
 

Mоnk

Member
Что-то сломалось...
m21.cloudmqtt.com
Перестали отправляться данные с простейшего DHT-22. ЕСП-шка по ватчдогу перезагружается. Считывает данные от двух до пяти раз и виснет. И так по кругу. Вчера еще все работало.
Думал косяк. Включил другую, с другим навороченным проектом. На ЖК экран выводит все данные, часики тикают. Потом замирают. Перезагрузка. На телефоне видны все виджеты, но без данных, и не управляются ни выключатели, ни регуляторы.
 

Mоnk

Member
Похоже что ЕСПшка.
Залил "чистый" второй пример, прогрузилось все в телефоне. В какой-то момент обмена данными опять висяк, перезагруз.
MQTT client started.
Free heap = 33256
Connecting via WiFi to Pandora...

WiFi connect: Success
IP address: 192.168.1.21
Connecting to MQTT server ...
Connect to MQTT server: Success
Publish config: Success ({"id":"0","page":"Bedroom","descr":"Bedroom light-0","widget":"toggle","topic":"/Eagle-owl/DHT-22/light0","color":"red"})
Publish config: Success ({"id":"1","page":"Bedroom","descr":"Bedroom light-1","widget":"toggle","topic":"/Eagle-owl/DHT-22/light1","color":"white"})
Publish config: Success ({"id":"2","page":"Bedroom","descr":"Bedroom light-2","widget":"toggle","topic":"/Eagle-owl/DHT-22/light2","color":"yellow"})
Publish config: Success ({"id":"3","page":"Bedroom","descr":"ADC","widget":"small-badge","topic":"/Eagle-owl/DHT-22/ADC","badge":"badge-calm","style":"font-size:150%;"})
Publish config: Success ({"id":"4","page":"Bedroom","descr":"KEY","widget":"power-button","topic":"/Eagle-owl/DHT-22/light4","style":"font-size:150%;"})
Publish config: Success ({"id":"5","page":"Bedroom","descr":"Bedroom RED","widget":"range","topic":"/Eagle-owl/DHT-22/red","style":"range-assertive","badge":"badge-assertive"})
Publish config: Success ({"id":"6","page":"Bedroom","descr":"Bedroom GREEN","widget":"range","topic":"/Eagle-owl/DHT-22/green","style":"range-balanced","badge":"badge-balanced"})
Publish config: Success ({"id":"7","page":"Bedroom","descr":"Bedroom BLUE","widget":"range","topic":"/Eagle-owl/DHT-22/blue","style":"range-calm","badge":"badge-calm"})
Publish config: Success
Publish new status for /Eagle-owl/DHT-22/light0, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light1, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light2, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/ADC, value: {"status":"56"}
Publish new status for /Eagle-owl/DHT-22/light4, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/red, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/green, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/blue, value: {"status":"0"}

Запускаю на телефоне манагер...............

Get data from subscribed topic /Eagle-owl => HELLO
Get data from subscribed topic /Eagle-owl/ids => 42c86535-382e-4364-8613-2d8a2f7b3b08
Get data from subscribed topic /Eagle-owl => DHT-22
Publish config: Success ({"id":"0","page":"Bedroom","descr":"Bedroom light-0","widget":"toggle","topic":"/Eagle-owl/DHT-22/light0","color":"red"})
Publish config: Success ({"id":"1","page":"Bedroom","descr":"Bedroom light-1","widget":"toggle","topic":"/Eagle-owl/DHT-22/light1","color":"white"})
Publish config: Success ({"id":"2","page":"Bedroom","descr":"Bedroom light-2","widget":"toggle","topic":"/Eagle-owl/DHT-22/light2","color":"yellow"})
Publish config: Success ({"id":"3","page":"Bedroom","descr":"ADC","widget":"small-badge","topic":"/Eagle-owl/DHT-22/ADC","badge":"badge-calm","style":"font-size:150%;"})
Publish config: Success ({"id":"4","page":"Bedroom","descr":"KEY","widget":"power-button","topic":"/Eagle-owl/DHT-22/light4","style":"font-size:150%;"})
Publish config: Success ({"id":"5","page":"Bedroom","descr":"Bedroom RED","widget":"range","topic":"/Eagle-owl/DHT-22/red","style":"range-assertive","badge":"badge-assertive"})
Publish config: Success ({"id":"6","page":"Bedroom","descr":"Bedroom GREEN","widget":"range","topic":"/Eagle-owl/DHT-22/green","style":"range-balanced","badge":"badge-balanced"})
Publish config: Success ({"id":"7","page":"Bedroom","descr":"Bedroom BLUE","widget":"range","topic":"/Eagle-owl/DHT-22/blue","style":"range-calm","badge":"badge-calm"})
Publish config: Success
Publish new status for /Eagle-owl/DHT-22/light0, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light1, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light2, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/ADC, value: {"status":"56"}
Publish new status for /Eagle-owl/DHT-22/light4, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/red, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/green, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/blue, value: {"status":"0"}
Get data from subscribed topic /Eagle-owl => HELLO
Get data from subscribed topic /Eagle-owl/ids => 42c86535-382e-4364-8613-2d8a2f7b3b08
Get data from subscribed topic /Eagle-owl => DHT-22
Publish config: Success ({"id":"0","page":"Bedroom","descr":"Bedroom light-0","widget":"toggle","topic":"/Eagle-owl/DHT-22/light0","color":"red"})
Publish config: Success ({"id":"1","page":"Bedroom","descr":"Bedroom light-1","widget":"toggle","topic":"/Eagle-owl/DHT-22/light1","color":"white"})
Publish config: Success ({"id":"2","page":"Bedroom","descr":"Bedroom light-2","widget":"toggle","topic":"/Eagle-owl/DHT-22/light2","color":"yellow"})
Publish config: Success ({"id":"3","page":"Bedroom","descr":"ADC","widget":"small-badge","topic":"/Eagle-owl/DHT-22/ADC","badge":"badge-calm","style":"font-size:150%;"})
Publish config: Success ({"id":"4","page":"Bedroom","descr":"KEY","widget":"power-button","topic":"/Eagle-owl/DHT-22/light4","style":"font-size:150%;"})
Publish config: Success ({"id":"5","page":"Bedroom","descr":"Bedroom RED","widget":"range","topic":"/Eagle-owl/DHT-22/red","style":"range-assertive","badge":"badge-assertive"})
Publish config: Success ({"id":"6","page":"Bedroom","descr":"Bedroom GREEN","widget":"range","topic":"/Eagle-owl/DHT-22/green","style":"range-balanced","badge":"badge-balanced"})
Publish config: Success ({"id":"7","page":"Bedroom","descr":"Bedroom BLUE","widget":"range","topic":"/Eagle-owl/DHT-22/blue","style":"range-calm","badge":"badge-calm"})
Publish config: Success
Publish new status for /Eagle-owl/DHT-22/light0, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light1, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/light2, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/ADC, value: {"status":"56"}
Publish new status for /Eagle-owl/DHT-22/light4, value: {"status":"1"}
Publish new status for /Eagle-owl/DHT-22/red, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/green, value: {"status":"0"}
Publish new status for /Eagle-owl/DHT-22/blue, value: {"status":"0"}

Вот тут висяк начался.
 

Mоnk

Member
Попробовал еще два рутера, другие ЕСПэшки. Поставил 5 пример, снёс-установил заново манагера.
Помигал синей лампочкой.
Код:
Get data from subscribed topic /IoTmanager/12613271-1458400/button_on/control => 1
Publish new status to /IoTmanager/12613271-1458400/toggle/status, value: {"status":1}
Get data from subscribed topic /IoTmanager/12613271-1458400/button_off/control => 1
Publish new status to /IoTmanager/12613271-1458400/toggle/status, value: {"status":0}
Закрыл манагера, почесал репу, запустил манагера... А он мне "Брокер подключен, но данные от устройств отсутствуют..."
Рефреш и перезапуск манагера не помогают. В сериалмониторе Get data from subscribed topic /IoTmanager => HELLO не прилетает.
Только кнопка ресет на есп помогает.
И все равно через некоторое время виснет.
1475786258: Error in poll: Interrupted system call.
1475786258: Reloading config.
1475786261: Error in poll: Interrupted system call.
1475786261: mosquitto version 1.4.10 terminating
1475786261: mosquitto version 1.4.10 (build date Thu, 25 Aug 2016 15:32:03 +0100) starting
1475786261: Config loaded from /var/lib/mosquitto/13379/mosquitto.conf.
1475786261: Opening ipv4 listen socket on port 23379.
1475786261: Opening websockets listen socket on port 33379.
1475786261: Opening ipv4 listen socket on port 13379.
1475786263: New connection from "мой.внешний.ай.пи" on port 13379.
Пахо - мкутт грязный - мкутт чистый - вэбсоккет - пробовал. Те же яйца.
В качестве бреда...
Хочу попробовать вернуться на предыдущую версию манагера
 

Belerafon

New member
так и не могу разобраться в чем проблема у меня, после обновления у меня и все остальное пропало с экрана, в логах теперь все данные получает программа, а на экране пишет брокер подключени но данные от устройства отсутствуют...Может из за версии андройда глючить так? пока нет возможности на другом телефоне проверить.
 
Сверху Снизу