Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

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

Тема в разделе "IoT Manager – мобильное приложение", создана пользователем Victor, 13 фев 2016.

Метки:
  1. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    я попробую оба сделать (проблема только со временем) - посмотрим что будет удобнее
     
  2. Mоnk

    Mоnk Читатель

    Сообщения:
    130
    Симпатии:
    8
    Да, постановка вопроса не корректная.
    Давайте так: (раскрыть)
    Можно ли кусок кода
    Код (C):
    1. void pubStatus(String t, String payload)
    2. {
    3.     if (client.publish(t + "/status", payload))
    4.     {
    5.        Serial.println("Publish new status for " + t + ", value: " + payload);
    6.     }
    7.     else
    8.     {
    9.        Serial.println("Publish new status for " + t + " FAIL!");
    10.     }
    11.   delay(PUB_DELAY);
    12. }
    переписать так:
    Код (C):
    1. void pubStatus(String t, String payload)
    2. {
    3.     client.publish(t + "/status", payload)
    4.   delay(PUB_DELAY);
    5. }
    А вот этот
    Код (C):
    1. void pubConfig()
    2. {
    3.   needPubConfig = false;
    4.   bool success;
    5.  
    6.   for (int i = 0; i < nWidgets; i = i + 1)
    7.   {
    8.     success = client.publish(MQTT::Publish(prefix + "/" + deviceId + "/config", thing_config[i]).set_qos(1));
    9.     if (success)
    10.     {
    11.       Serial.println("Publish config: Success (" + thing_config[i] + ")");
    12.     }
    13.     else
    14.     {
    15.       Serial.println("Publish config FAIL! ("    + thing_config[i] + ")");
    16.     }
    17.  
    18.     delay(PUB_DELAY);
    19.     pubStatus(sTopic[i], stat[i]);
    20.  
    21.   }
    22.   yield();
    23. }
    вот так:
    Код (C):
    1. void pubConfig()
    2. {
    3.   needPubConfig = false;
    4.  
    5.   for (int i = 0; i < nWidgets; i = i + 1)
    6.   {
    7.     client.publish(MQTT::Publish(prefix + "/" + deviceId + "/config", thing_config[i]).set_qos(1));
    8.    
    9.     delay(PUB_DELAY);
    10.     pubStatus(sTopic[i], stat[i]);
    11.  
    12.   }
    13.   yield();
    14. }
     
  3. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    Как я понял, вы просто убрали не нужные вам Serial.println - конечно так можно
     
  4. Mоnk

    Mоnk Читатель

    Сообщения:
    130
    Симпатии:
    8
    Очередное недопонимание в перемешку с кривизной рук.
    Попробовал во втором примере убрать иконку в соответствии с описанием на Виджет toggle · IoT Manager.
    Кусок кода (раскрыть)
    Код (C):
    1. String iconStyle    [nWidgets];
    2.  
    3. void initVar()
    4. {
    5.   id        [0] = "3";      // ===== строка в менеджере
    6.   page      [0] = room;
    7.   pageId    [0] = 2;        // ===== закладка в менеджере
    8.   descr     [0] = "Свет";
    9.   widget    [0] = "toggle";
    10.   pin       [0] = 12;       // ===== Свет
    11.   defaultVal[0] = OFF;
    12.   inverted  [0] = true;
    13.   sTopic    [0] = prefix + "/" + deviceId + "/light0";
    14.   color     [0] = "\"color\":\"green\"";               // black, blue, green, orange, red, white, yellow (off - grey)
    15.   iconStyle [0] = "\"display\":\"none\"";
    16.  
    17. thing_config[0] = "{\"id\":\"" + id[0] + "\",\"page\":\"" + page[0] + "\",\"pageId\":\"" + pageId[0] + "\",\"descr\":\"" + descr[0] + "\",\"widget\":\"" + widget[0] + "\",\"topic\":\"" + sTopic[0] + "\"," + color[0] + "," + iconStyle[0] + "}";   // Свет On/Off
    Иконка слева не пропадает.
    Что я делаю не так?
     
    Последнее редактирование: 16 ноя 2016
  5. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    нужен валидный JSON и
    вместо iconStyle [0]="\"display\":\"none\"";
    нужно iconStyle [0]="\"iconStyle\":\"display:none\"";
    может и еще что-то есть - очень уж не люблю я кавычки высчитывать :) - именно поэтому предлагаю вам посмотреть пример в platformio - там конфиги виджетов в отдельных файлах - так намного проще (смотрите папку prebuild) или для Arduino IDE - в этом простом примере реализован такой же механизм
     
  6. Mоnk

    Mоnk Читатель

    Сообщения:
    130
    Симпатии:
    8
    Ура! Заработало!
    Очень уж тяжко переходить на новую "платформу", тем более, когда устройство уже работает.
    Сейчас уже "рюшечки" пошли. Кстати, а можно все же сделать при наличии нескольких закладок в менеджере автоматическое центрирование выбранной? Или хотя бы не использовать зону закладок для функции "рефреш". Дрожащий палец так и норовит при боковом сдвиге закладок привести систему в состояние "рефреш".
     
  7. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    рефреш отключается в настройках
     
  8. Mоnk

    Mоnk Читатель

    Сообщения:
    130
    Симпатии:
    8
    Как вариант...
    Придется изучать.
     
  9. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Добрый день. Понимаю что заняты и все такое, но уделите немножко времени. Заранее спасибо.

    В примере "heater" все компилируется но в Manager IoT ничего не отображается кроме надписи HEATER , причем выше галочек состояния соединения с интернетом и брокером. Датчик температуры не подключен и платка ESP8266-12e.
    Почему?

    И скрипт gen_h.bat выполняется с ошибкой, не подскажите что не так?
    [​IMG]
    [​IMG]
     
  10. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    а папка prebuild/temp у вас создалась? там файлы есть?

    попробуйте вручную запустить gen_h.bat
    проверьте дату/время файлов в lib/widgets
     
  11. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Да, и там создался только line_01.j c массивом и пустой line_01.h
     
  12. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    вручную запускал (скриншот выше), файлы в папке lib не обновляются.
     
  13. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    Попробуйте exe утилиты из папки bin скопировать куда-нибудь, куда PATH у вас прописан.
    Например c:\MinGW32 или вообще в C:\Windows
     
  14. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Опа, а папки bin то и нет. Проверьте на GitHub-e плиз.
     
  15. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    сорри, добавил
    там zip архив с необходимыми утилитами
     
    rv9Yw нравится это.
  16. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Спасибо..
    Я там тему создавал про "range" & "small-badge", будет время обратите внимание.
     
  17. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    да, я уже читал. Это одни из первых виджетов. Их надо бы переработать как с toggle я сделал, а тогда уже и документацию сделать, а на старые смысла нет - там много чего измениться может
     
    rv9Yw нравится это.
  18. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Понятно, ну тогда ждем. Пока не буду их использовать.
     
  19. rv9Yw

    rv9Yw Новичок

    Сообщения:
    20
    Симпатии:
    1
    Еще заметил, в файле platformio.ini

    libdeps-dir = "lib"

    должно относится к секции [platformio] как ниже
    Код (Text):
    1. [platformio]
    2. env_default = esp12e
    3. home-dir = %HOMEPATH%\.platformio
    4. src_dir = heater
    5. libdeps-dir = .piolibdeps
    6. lib_dir = lib
    7. envs_dir = .pioenvs
    но и там Builder его исключает как неизвестный. Похоже недоработка у ребят.. Надо отрепортить будет.
     
  20. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.212
    Симпатии:
    387
    да, верно. Но эта строчка вообще не нужна - без нее должно собираться без проблем
     

Поделиться этой страницей