Плагин MegaD



  • @amgstone:

    Подскажите как в IH создать канал для выключателя, для примера выключатель на 1 канале, лампочка на 15 канале, пробую ничего не получается, помогите. хочу использовать IH без помощи megad.

    Нужно написать сценарий:

    если выключатель вкл, то включить лампочку

    если выключатель выкл, то выключить лампочку

    если выключатель кнопочный, то использовать toggle



  • @homa:

    @amgstone:

    Подскажите как в IH создать канал для выключателя, для примера выключатель на 1 канале, лампочка на 15 канале, пробую ничего не получается, помогите. хочу использовать IH без помощи megad.

    Нужно написать сценарий:

    если выключатель вкл, то включить лампочку

    если выключатель выкл, то выключить лампочку

    если выключатель кнопочный, то использовать toggle

    а можно с принтскринами а то уже 3 день мучаюсь



  • @amgstone:

    а можно с принтскринами а то уже 3 день мучаюсь

    А чего мучаться-то? Информации в инете уже полно. Не тут, так на других форумах. Надо учиться искать информацию, анализировать и пробовать. Вам надо в расширениях плагина MegaD прописать несколько строк для выключателей подключенных к соответствующим входам MegaD - там же установить каким выходом будете управлять и сообщать системе что будет меняться. Вот, например, тут я подобное делал: https://www.ab-log.ru/forum/viewtopic.php?f=1&t=652&start=280#p35032

    Блин, ну реально вскипятили. Неужели трудно 20 страниц этой темы почитать??? Все есть! Вот еще мой пример: https://frm.intrahouse.ru/viewtopic.php?f=18&t=5312&start=140#p8737

    Если уж из этого не понятно, то платите деньги специалистам, а сами заканчивайте с умным домом.



  • @amgstone:

    а можно с принтскринами а то уже 3 день мучаюсь

    В документации по плагину MegaD https://ih-systems.com/ru/product/plugin-megad/ есть описание по сработке геркона:
    scen501.jpg
    В Вашем случае вместо геркона будет кнопка.

    Передать в ответ 15:2 - будет toggle

    Установить состояние канала 15=TOGGLE

    На самой меге:

    1.Прописать адрес сервера intraHouse

    2.Прописать имя скрипта такое же, как в запросе (например на скриншоте - megad)

    3.Настроить порт 1 в режим P, чтобы он отправлял только при нажатии



  • @Erik:

    Соберите на столе схему, с тем же контроллером и тем же датчиком, без вашей системы проводов.

    Если проблему повторить не сможете - она в проводах.

    Собрал схему, которая была реализована в реале когда контроллер перезагружался (был добавлен DHT22). Единственное - нет "земляной петли", которая есть на моей схеме, нет больших длин витухи до герметичных DS18B20 (подсоединены своими проводами) и нет доп. подтяжки (резисторы на 4,7кОм). Прошивка fw: 4.26b1, конфигурацию сделал вручную по образу и подобию рабочей MegaD.

    Итог - сегодня контроллер перезагрузился, проработав около 8,5 дней… Поскольку лог не писал, то на каком месте споткнулся - вопрос. Надо обновить прошивку до последней и начать писать дамп или лог. Вероятно, Андрей не хочет ждать 8-10 дней чтобы воспроизвести ситуацию.



  • Еще бы лог с ИБП добавить, вдруг его скачек напряжения сбивает.



  • Если контроллер выдает в качестве температуры string "NA" (DS18B20) или совсем ничего (пустая страничка device list для шины 1W), как в системе можно настроить отображение ошибки на устройстве?



  • @Alex_Jet:

    Если контроллер выдает в качестве температуры string "NA" (DS18B20) или совсем ничего (пустая страничка device list для шины 1W), как в системе можно настроить отображение ошибки на устройстве?

    "Установить ошибку если нет данных в течение (сек)" не работает?



  • @intrapro:

    @Alex_Jet:

    Если контроллер выдает в качестве температуры string "NA" (DS18B20) или совсем ничего (пустая страничка device list для шины 1W), как в системе можно настроить отображение ошибки на устройстве?

    "Установить ошибку если нет данных в течение (сек)" не работает?

    Да, действительно работает! У меня галочки стояли, но время было 0. Теперь все отображается. А можно пример сценария - если "Device timeout error", то послать сообщение по telegram.



  • @Alex_Jet:

    А можно пример сценария - если "Device timeout error", то послать сообщение по telegram.

    1. Можно так:
    scen110.jpg
    2. Лучше так:
    scen111.jpg
    Здесь запускаем таймер. И если ошибка еще присутствует отсылаем сообщение.

    3. Но еще лучше, сделать мультисценарий



  • @intrahouse:

    @Alex_Jet:

    А можно пример сценария - если "Device timeout error", то послать сообщение по telegram.

    1. Можно так:

    scen110.jpg

    2. Лучше так:

    scen111.jpg

    Здесь запускаем таймер. И если ошибка еще присутствует отсылаем сообщение.

    3. Но еще лучше, сделать мультисценарий

    Спасибо конечно за вариант с "блокли". Но интересует больше мультисценарий. В API есть две команды x.error и x.isError(). Вот какую для чего использовать? И как правильно прописывать в startOnChange - startOnChanged(sensor, sensor.isChanged("error"))? Чтобы не делать 5 итераций…для подбора нужной.



  • Сделать блоки, переключиться на отображение сценария, посмотреть синтаксис?



  • А у аналогового актуатора "установить ошибку, если нет данных в течении __ сек" можно, а в блоках состояния "ошибка" у него нет.



  • @Alex_Jet:

    Но интересует больше мультисценарий. В API есть две команды x.error и x.isError(). Вот какую для чего использовать? И как правильно прописывать в startOnChange - startOnChanged(sensor, sensor.isChanged("error"))? Чтобы не делать 5 итераций…для подбора нужной.

    Мыслите абсолютно верно

    Но конструкция startOnChanged(sensor, sensor.isChanged("error")) не работает 😞

    Вот рабочий вариант

    /** 
    * @name Ошибка датчика 
    * @desc  
    * @version 4  
    */
    
    const sensor = Device("SensorA","Датчик "); 
    
    startOnChange(sensor); 
    
    script({
        start() {
            if (this.isChanged(sensor, "err")) {
              if (sensor.isError()) {
                this.log(sensor.fullName +'. Ошибка! '+sensor.error));
              } else {
                this.log(sensor.fullName +' ОK. Значение '+sensor.value);
              }
            }
        } 
    });
    
    

    this.isChanged(sensor, "err") - этот сценарий (this) был вызван, потому что изменилось свойство "err" устройства sensor

    Обратите внимание, здесь err, а не error.

    sensor.isError() - это метод - возвращает true/false

    sensor.error - это свойство (без скобок) - возвращает саму ошибку

    Результат в отладчике:

    log: Датчик температуры 1этаж/Холл. Ошибка! Device timeout error!
    
    


  • @intrapro:

    Мыслите абсолютно верно

    Но конструкция startOnChanged(sensor, sensor.isChanged("error")) не работает 😞

    Вот рабочий вариант

    > /** 
    > * @name Ошибка датчика 
    > * @desc  
    > * @version 4  
    > */
    > 
    > const sensor = Device("SensorA","Датчик "); 
    > 
    > startOnChange(sensor); 
    > 
    > script({
    >     start() {
    >         if (this.isChanged(sensor, "err")) {
    >           if (sensor.isError()) {
    >             this.log(sensor.fullName +'. Ошибка! '+sensor.error));
    >           } else {
    >             this.log(sensor.fullName +' ОK. Значение '+sensor.value);
    >           }
    >         }
    >     } 
    > });
    > 
    

    this.isChanged(sensor, "err") - этот сценарий (this) был вызван, потому что изменилось свойство "err" устройства sensor

    Обратите внимание, здесь err, а не error.

    sensor.isError() - это метод - возвращает true/false

    sensor.error - это свойство (без скобок) - возвращает саму ошибку

    Результат в отладчике:

    > log: Датчик температуры 1этаж/Холл. Ошибка! Device timeout error!
    > 
    

    Если sensor.error равен 1, что это значит? Почему-то по части температурных датчиков вылазит "… Ошибка: 1". Такое ощущение, что выход из диапазона? Можно вместо 1, по аналогии с "Device timeout error!" как-то передавать значения типа "Device Value below limit" или "Device Value above limit"?



  • @Alex_Jet:

    Если sensor.error равен 1, что это значит? Почему-то по части температурных датчиков вылазит "… Ошибка: 1". Такое ощущение, что выход из диапазона? Можно вместо 1, по аналогии с "Device timeout error!" как-то передавать значения типа "Device Value below limit" или "Device Value above limit"?

    Да, Вы правы, это выход из диапазона. Не найдено текстовое сообщение для ошибки, поэтому число :oops: Поправим



  • @intrapro:

    @Alex_Jet:

    Если sensor.error равен 1, что это значит? Почему-то по части температурных датчиков вылазит "… Ошибка: 1". Такое ощущение, что выход из диапазона? Можно вместо 1, по аналогии с "Device timeout error!" как-то передавать значения типа "Device Value below limit" или "Device Value above limit"?

    Да, Вы правы, это выход из диапазона. Не найдено текстовое сообщение для ошибки, поэтому число :oops: Поправим

    Что-то как-то неадекватно работает. Посмотрю конечно по журналу устройства какие были значения, но пока корреляции просто нет!



  • @Alex_Jet:

    Что-то как-то неадекватно работает. Посмотрю конечно по журналу устройства какие были значения, но пока корреляции просто нет!

    В чем неадекватность - ошибки быть не должно? Или диагностика неверная?



  • Беда с восстановлением выходов. Такое ощущение, что где-то в плагине есть проблема.

    Условия - все устройства, привязанные к выходам MegaD выключены. Выходы на MegaD выключены. Перепрошиваю MegaD со стиранием eeprom и загрузкой конфигурации - вдруг все ее выходы, к которым привязаны устройства в УД (ничего не привязано только к порту 22), оказываются включенными. Поймал отладчиком все что происходит в момент загрузки новой прошивки и конфигурации:

    14.03 15:42:31.668 megad4: 192.168.11.24 => localhost:11024 HTTP GET /mod_megad.php?st=1
    14.03 15:42:31.669 megad4: 192.168.11.24 <= localhost:11024 
    14.03 15:42:31.669 megad4: { type: 'startscene',
      id: 'MegaD_ST_to_Log',
      arg: '{"dev":"MegaD-2561-24 (Котельная)"}' }
    14.03 15:42:31.670 IH: startscene MegaD_ST_to_Log
    14.03 15:42:31.771 megad4: 
    14.03 15:42:31.772 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cf=7&stime=15:42:31:4
    14.03 15:42:31.876 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:31.878 megad4:  body: [Back](/sec/?cf=1)
    
    <form action="/sec/">Cur time: 15:42:31 [4]
    Set time: 
    SCL:  SDA: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    </form>
    
    14.03 15:42:31.878 IH: get []
    14.03 15:42:31.879 IH: set {}
    14.03 15:42:31.972 megad4: 
    14.03 15:42:31.973 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=all
    14.03 15:42:32.085 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.086 megad4:  body: OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;OFF;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;ON;OFF;OFF;OFF;OFF;OFF;OFF;ON;ON
    14.03 15:42:32.087 IH: get [{"id":"8","value":"0"},{"id":"15","value":"1"},{"id":"16","value":"1"},{"id":"17","value":"1"},{"id":"18","value":"1"},{"id":"19","value":"1"},{"id":"20","value":"1"},{"id":"21","value":"1"},{"id":"23","value":"1"},{"id":"24","value":"1"},{"id":"25","value":"1"},{"id":"26","value":"1"},{"id":"27","value":"1"},{"id":"28","value":"1"},{"id":"30","value":"0"}]
    14.03 15:42:32.088 IH: set {"SLEAKAGE1_02":{"dval":"0","err":0},"LAMP1_11":{"dval":"1","err":0},"PUMP_WATER2":{"dval":"1","err":0},"PUMP5":{"dval":"1","err":0},"PUMP3":{"dval":"1","err":0},"PUMP1":{"dval":"1","err":0},"PUMP4":{"dval":"1","err":0},"PUMP2":{"dval":"1","err":0},"ACTOR_WATER1":{"dval":"1","err":0},"VALVE_WATER1":{"dval":"1","err":0},"ACTOR_WATER2":{"dval":"1","err":0},"ACTOR_WATER3":{"dval":"1","err":0},"ACTOR_HEATING_SYS_01":{"dval":"1","err":0},"ACTOR_HEATING_SYS_02":{"dval":"1","err":0},"ST_HEATING_SYS_00":{"aval":"0","err":0}}
    14.03 15:42:32.173 megad4: 
    14.03 15:42:32.174 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=30&cmd=get
    14.03 15:42:32.181 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.181 megad4:  body: OFF
    14.03 15:42:32.182 IH: get [{"id":"30","value":"0"}]
    14.03 15:42:32.182 IH: set {"ST_HEATING_SYS_00":{"aval":"0","err":0}}
    14.03 15:42:32.375 megad4: 
    14.03 15:42:32.376 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=31&cmd=list
    14.03 15:42:32.383 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.384 megad4:  body: [Back](/sec)
    P31/OFF
    
    <form action="/sec/">Type <select name="pty"><option value="255" selected="">NC</option><option value="0">In</option><option value="1">Out</option><option value="3">DSen</option><option value="4">I2C</option></select>
    </form>
    
    14.03 15:42:32.577 megad4: 
    14.03 15:42:32.577 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280&i2c_par=1
    14.03 15:42:32.593 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.594 megad4:  body: 10.00
    14.03 15:42:32.594 IH: get [{"id":"34_1","value":"10"}]
    14.03 15:42:32.594 IH: set {"STEMP4_01":{"aval":"10","err":0}}
    14.03 15:42:32.778 megad4: 
    14.03 15:42:32.778 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280&i2c_par=2
    14.03 15:42:32.794 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.795 megad4:  body: 0.00
    14.03 15:42:32.795 IH: get [{"id":"34_2","value":"0"}]
    14.03 15:42:32.796 IH: set {"SHUMIDITY4_01":{"aval":"0","err":0}}
    14.03 15:42:32.978 megad4: 
    14.03 15:42:32.979 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280
    14.03 15:42:32.995 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:32.995 megad4:  body: 553.89
    14.03 15:42:32.996 IH: get [{"id":"34_3","value":"553.89"}]
    14.03 15:42:32.996 IH: set {"SPRESSURE4_01":{"aval":"553.89","err":0}}
    14.03 15:42:36.782 megad4: 192.168.11.24 => localhost:11024 HTTP GET /mod_megad.php?st=1
    14.03 15:42:36.783 megad4: 192.168.11.24 <= localhost:11024 
    14.03 15:42:36.784 megad4: { type: 'startscene',
      id: 'MegaD_ST_to_Log',
      arg: '{"dev":"MegaD-2561-24 (Котельная)"}' }
    14.03 15:42:36.784 IH: startscene MegaD_ST_to_Log
    14.03 15:42:36.796 megad4: 
    14.03 15:42:36.796 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cf=7&stime=15:42:36:4
    14.03 15:42:36.803 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:36.803 megad4:  body: [Back](/sec/?cf=1)
    
    <form action="/sec/">Cur time: 15:42:36 [4]
    Set time: 
    SCL:  SDA: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    </form>
    
    14.03 15:42:36.804 IH: get []
    14.03 15:42:36.804 IH: set {}
    14.03 15:42:36.990 megad4: 
    14.03 15:42:36.991 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=15:1
    14.03 15:42:36.996 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:36.997 megad4:  body: Done
    14.03 15:42:36.997 IH: get [{"id":"15","value":1}]
    14.03 15:42:36.998 IH: set {"LAMP1_11":{"dval":1,"err":0}}
    14.03 15:42:37.191 megad4: 
    14.03 15:42:37.192 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=16:1
    14.03 15:42:37.198 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:37.199 megad4:  body: Done
    14.03 15:42:37.199 IH: get [{"id":"16","value":1}]
    14.03 15:42:37.200 IH: set {"PUMP_WATER2":{"dval":1,"err":0}}
    14.03 15:42:37.393 megad4: 
    14.03 15:42:37.393 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=17:1
    14.03 15:42:37.400 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:37.401 megad4:  body: Done
    14.03 15:42:37.401 IH: get [{"id":"17","value":1}]
    14.03 15:42:37.401 IH: set {"PUMP5":{"dval":1,"err":0}}
    14.03 15:42:37.594 megad4: 
    14.03 15:42:37.595 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=18:1
    14.03 15:42:37.600 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:37.601 megad4:  body: Done
    14.03 15:42:37.601 IH: get [{"id":"18","value":1}]
    14.03 15:42:37.602 IH: set {"PUMP3":{"dval":1,"err":0}}
    14.03 15:42:37.796 megad4: 
    14.03 15:42:37.796 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=19:1
    14.03 15:42:37.803 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:37.803 megad4:  body: Done
    14.03 15:42:37.804 IH: get [{"id":"19","value":1}]
    14.03 15:42:37.804 IH: set {"PUMP1":{"dval":1,"err":0}}
    14.03 15:42:37.996 megad4: 
    14.03 15:42:37.997 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=20:1
    14.03 15:42:38.003 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:38.004 megad4:  body: Done
    14.03 15:42:38.004 IH: get [{"id":"20","value":1}]
    14.03 15:42:38.004 IH: set {"PUMP4":{"dval":1,"err":0}}
    14.03 15:42:38.197 megad4: 
    14.03 15:42:38.198 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=21:1
    14.03 15:42:38.399 megad4: 
    14.03 15:42:38.399 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=23:1
    14.03 15:42:38.599 megad4: 
    14.03 15:42:38.600 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=24:1
    14.03 15:42:38.686 megad4: 192.168.11.24 => localhost:11024 HTTP GET /mod_megad.php?st=1
    14.03 15:42:38.687 megad4: 192.168.11.24 <= localhost:11024 
    14.03 15:42:38.688 megad4: { type: 'startscene',
      id: 'MegaD_ST_to_Log',
      arg: '{"dev":"MegaD-2561-24 (Котельная)"}' }
    14.03 15:42:38.689 IH: startscene MegaD_ST_to_Log
    14.03 15:42:38.800 megad4: 
    14.03 15:42:38.801 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cf=7&stime=15:42:38:4
    14.03 15:42:38.813 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:38.814 megad4:  body: [Back](/sec/?cf=1)
    
    <form action="/sec/">Cur time: 15:42:38 [4]
    Set time: 
    SCL:  SDA: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    T:  Act: 
    </form>
    
    14.03 15:42:38.814 IH: get []
    14.03 15:42:38.815 IH: set {}
    14.03 15:42:38.960 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:38.961 megad4:  body: Done
    14.03 15:42:38.961 IH: get [{"id":"24","value":1}]
    14.03 15:42:38.961 IH: set {"VALVE_WATER1":{"dval":1,"err":0}}
    14.03 15:42:39.001 megad4: 
    14.03 15:42:39.002 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=15:1
    14.03 15:42:39.008 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.009 megad4:  body: Done
    14.03 15:42:39.009 IH: get [{"id":"15","value":1}]
    14.03 15:42:39.010 IH: set {"LAMP1_11":{"dval":1,"err":0}}
    14.03 15:42:39.201 megad4: 
    14.03 15:42:39.202 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=16:1
    14.03 15:42:39.203 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.203 megad4:  body: Done
    14.03 15:42:39.204 IH: get [{"id":"21","value":1}]
    14.03 15:42:39.205 IH: set {"PUMP2":{"dval":1,"err":0}}
    14.03 15:42:39.210 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.211 megad4:  body: Done
    14.03 15:42:39.211 IH: get [{"id":"16","value":1}]
    14.03 15:42:39.211 IH: set {"PUMP_WATER2":{"dval":1,"err":0}}
    14.03 15:42:39.402 megad4: 
    14.03 15:42:39.402 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=17:1
    14.03 15:42:39.412 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.413 megad4:  body: Done
    14.03 15:42:39.414 IH: get [{"id":"17","value":1}]
    14.03 15:42:39.414 IH: set {"PUMP5":{"dval":1,"err":0}}
    14.03 15:42:39.517 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.517 megad4:  body: Done
    14.03 15:42:39.517 IH: get [{"id":"23","value":1}]
    14.03 15:42:39.518 IH: set {"ACTOR_WATER1":{"dval":1,"err":0}}
    14.03 15:42:39.607 megad4: 
    14.03 15:42:39.607 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=18:1
    14.03 15:42:39.613 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.614 megad4:  body: Done
    14.03 15:42:39.614 IH: get [{"id":"18","value":1}]
    14.03 15:42:39.614 IH: set {"PUMP3":{"dval":1,"err":0}}
    14.03 15:42:39.808 megad4: 
    14.03 15:42:39.809 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=19:1
    14.03 15:42:39.815 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:39.815 megad4:  body: Done
    14.03 15:42:39.816 IH: get [{"id":"19","value":1}]
    14.03 15:42:39.816 IH: set {"PUMP1":{"dval":1,"err":0}}
    14.03 15:42:40.009 megad4: 
    14.03 15:42:40.009 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=20:1
    14.03 15:42:40.015 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:40.016 megad4:  body: Done
    14.03 15:42:40.016 IH: get [{"id":"20","value":1}]
    14.03 15:42:40.016 IH: set {"PUMP4":{"dval":1,"err":0}}
    14.03 15:42:40.209 megad4: 
    14.03 15:42:40.210 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=21:1
    14.03 15:42:40.215 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:40.216 megad4:  body: Done
    14.03 15:42:40.216 IH: get [{"id":"21","value":1}]
    14.03 15:42:40.217 IH: set {"PUMP2":{"dval":1,"err":0}}
    14.03 15:42:40.411 megad4: 
    14.03 15:42:40.411 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=23:1
    14.03 15:42:40.417 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:40.418 megad4:  body: Done
    14.03 15:42:40.418 IH: get [{"id":"23","value":1}]
    14.03 15:42:40.418 IH: set {"ACTOR_WATER1":{"dval":1,"err":0}}
    14.03 15:42:40.611 megad4: 
    14.03 15:42:40.612 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=24:1
    14.03 15:42:40.618 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:40.619 megad4:  body: Done
    14.03 15:42:40.619 IH: get [{"id":"24","value":1}]
    14.03 15:42:40.620 IH: set {"VALVE_WATER1":{"dval":1,"err":0}}
    14.03 15:42:40.812 megad4: 
    14.03 15:42:40.813 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=25:1
    14.03 15:42:40.819 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:40.819 megad4:  body: Done
    14.03 15:42:40.820 IH: get [{"id":"25","value":1}]
    14.03 15:42:40.820 IH: set {"ACTOR_WATER2":{"dval":1,"err":0}}
    14.03 15:42:41.013 megad4: 
    14.03 15:42:41.013 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=26:1
    14.03 15:42:41.020 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:41.021 megad4:  body: Done
    14.03 15:42:41.021 IH: get [{"id":"26","value":1}]
    14.03 15:42:41.022 IH: set {"ACTOR_WATER3":{"dval":1,"err":0}}
    14.03 15:42:41.215 megad4: 
    14.03 15:42:41.215 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=27:1
    14.03 15:42:41.221 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:41.222 megad4:  body: Done
    14.03 15:42:41.222 IH: get [{"id":"27","value":1}]
    14.03 15:42:41.223 IH: set {"ACTOR_HEATING_SYS_01":{"dval":1,"err":0}}
    14.03 15:42:41.415 megad4: 
    14.03 15:42:41.416 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=28:1
    14.03 15:42:41.422 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:41.423 megad4:  body: Done
    14.03 15:42:41.423 IH: get [{"id":"28","value":1}]
    14.03 15:42:41.424 IH: set {"ACTOR_HEATING_SYS_02":{"dval":1,"err":0}}
    14.03 15:42:41.617 megad4: 
    14.03 15:42:41.617 megad4: localhost => 192.168.11.24 HTTP GET /sec/?cmd=all
    14.03 15:42:41.817 megad4: 
    14.03 15:42:41.818 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=30&cmd=get
    14.03 15:42:41.834 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:41.835 megad4:  body: temp:NA
    14.03 15:42:42.018 megad4: 
    14.03 15:42:42.019 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=31&cmd=list
    14.03 15:42:42.101 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:42.102 megad4:  body: e46477910b02:31.00;666877911402:31.18;35e977910902:29.50
    14.03 15:42:42.103 IH: get [{"id":"31_e46477910b02","value":"31.00"},{"id":"31_666877911402","value":"31.18"},{"id":"31_35e977910902","value":"29.50"}]
    14.03 15:42:42.103 IH: set {"ST_HEATING_SYS_02":{"aval":"31.00","err":0},"ST_HEATING_SYS_03":{"aval":"31.18","err":0},"ST_HEATING_SYS_01":{"aval":"29.50","err":0}}
    14.03 15:42:42.219 megad4: 
    14.03 15:42:42.219 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280&i2c_par=1
    14.03 15:42:42.236 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:42.237 megad4:  body: 15.90
    14.03 15:42:42.237 IH: get [{"id":"34_1","value":"15.9"}]
    14.03 15:42:42.238 IH: set {"STEMP4_01":{"aval":"15.9","err":0}}
    14.03 15:42:42.420 megad4: 
    14.03 15:42:42.421 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280&i2c_par=2
    14.03 15:42:42.438 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:42.439 megad4:  body: 58.06
    14.03 15:42:42.439 IH: get [{"id":"34_2","value":"58.06"}]
    14.03 15:42:42.440 IH: set {"SHUMIDITY4_01":{"aval":"58.06","err":0}}
    14.03 15:42:42.622 megad4: 
    14.03 15:42:42.622 megad4: localhost => 192.168.11.24 HTTP GET /sec/?pt=34/?pt=34&scl=35&i2c_dev=bmx280
    14.03 15:42:42.639 megad4: localhost <= 192.168.11.24  response: statusCode=200 contentType = text/html
    14.03 15:42:42.639 megad4:  body: 752.66
    14.03 15:42:42.640 IH: get [{"id":"34_3","value":"752.66"}]
    14.03 15:42:42.640 IH: set {"SPRESSURE4_01":{"aval":"752.66","err":0}}
    
    

    PS: проанализировал. Проблема возникает в тот момент когда сетевые настройки в контроллер загружены, а конфигурация - нет. При этом в этот момент iH "читает" состояние портов и устанавливает состояние устройств. А после заливки конфига MegaD снова говорит st=1 и iH честно восстанавливает состояние выходов!!!



  • Я так и не понял :?

    Вопросы к плагину есть?


Авторизуйтесь, чтобы ответить