Плагин MegaD



  • Участник @intrapro написал в Плагин MegaD:

    Вот это не понятно. То есть в устройство данные приходят, а в каналах не отображаются?

    Да, именно так. Включаю канал, но 1 в столбце не появляется (появится только если переключиться на Отладчик/Расширения/Манифест и обратно на Каналы). Выключаю - то же самое, но при этом когда выключено отображается "-".
    Раз все снова будет переписываться (не знал о ваших дальнейших планах по плагинам, ожидаю только пятерку), то можем это считать не критичным багом.



  • @Alex_Jet Тогда как второй вопрос. Как можно по нажатию кнопки добавлять или убавлять температуру как на картинке выше? Нет ли у вас примера?



  • @cd1room, читаем тут. Надо сделать кнопку (button) в веб-интерфейсе, чтобы при нажатии на нее срабатывал выбранный сценарий с параметрами, например, {"ip":"192.168.11.11","act":"up"}

    Создать сценарий с таким кодом (не проверял, написал только что):

    script({
      //Параметры управления
      unit: "megad1",
      port: 24,
      temp: 20,
      max: 50,
      min: 10,
      step: 1,
    
      start(param) {
        const obj = JSON.parse(param);
           
        //Формирование команд управления
        if(obj.ip == "192.168.11.11") {
          if(obj.act == "up") {
            if(this.temp < this.max) this.temp = this.temp + this.step;
            else this.temp = this.max;
          }
          if(obj.act == "down") {
           if(this.temp > this.min) this.temp = this.temp - this.step;
           else this.temp = this.min;
          }
        }
    
        //Отправка команды плагину HTTP
        this.SendCommandToMegaD();
      },
      
      SendCommandToMegaD() {
        this.pluginCommand({unit: this.unit, command: "/sec/?pt=" +this.port+ "&misc=" +this.temp});
      }
    });
    


  • Здравствуйте. Подскажите пожалуйста как в IH настроить megad2561 с электросчетчиком по rs485 если следовать этой статье https://ab-log.ru/smart-house/ethernet/megad-rs485​ . За ранее большое спасибо!



  • @artem521, думаю все просто - из сценария соответствующему плагину нужно подать две команды - /?uart_tx=0103000C0001&mode=rs485 и /?uart_rx=1&mode=rs485 (скорее всего с небольшой паузой).
    Чтобы по последней команде получить ответ от контроллера нужно использовать то, что разработчики описали ТУТ - см. "// Анализируем body ...."



  • Участник @Alex_Jet написал в Плагин MegaD:

    @artem521, думаю все просто - из сценария соответствующему плагину нужно подать две команды - /?uart_tx=0103000C0001&mode=rs485 и /?uart_rx=1&mode=rs485 (скорее всего с небольшой паузой).
    Чтобы по последней команде получить ответ от контроллера нужно использовать то, что разработчики описали ТУТ - см. "// Анализируем body ...."

    Спасибо большое за информацию;)



  • Коллеги, прошу совета. Имею контроллер MegaD-2561 с установленным модулем SIM800 для использования в качестве sms-шлюза. При входящем sms запускается сценарий, в котром проверяется номер телефона и текст смс и выполняются определенные действия. Но есть проблема. В отладчике плагина в ответ на входящий запрос  /megad1?sms_phone=+79000001234&sms_text=arm пишется start scene..., затем arg {"sms_phone":" 79000001234", ...}. Т.е. при передачи параметров в сценарий вместо плюса передается пробел. Можно как-то решить эту проблему, или помогут только костыли. Типа, в сценарии обрезаем пробел с помщью функции такой-то, вручную добавляем "плюс" и т.д. Заранее спасибо



  • alt text
    подскажите причину почему intrahouse не видит статуса портов?



  • @amgstone, как будто не привязано устройство к каналу, хотя оно привязано. У меня у всех каналов (кроме DS2413), к которым привязано устройство, отображается либо 0, либо 1. А вот для DS2413 если канал выключен, то вместо 0 отображается "-".
    Попробуйте перезапустить плагин или перепривязать устройства.



  • @Alex_Jet на одной меге пересоздал устройство, делал принтскрин, помогло, у всех устройствах появился статус, но на 2 мегах там де висят вентиляторы, пересоздавал но статус "-"
    alt text



  • @amgstone, так пересоздавали или перепривязывали устройства? Мне кажестя, что достаточно будет перепривязать - отвязать и сохранить канал, снова привязать нужное устройство и сохранить.
    А вот где глюк - это, вероятно, поможет разобраться @intrapro



  • Добрый день! Для начала нужно попробовать вентилятор включить.
    Хотелось бы еще увидеть настройки канала.
    Кстати, какой порт используется? Если это обычный порт, то надо посмотреть, что приходит в cmd=all
    И учитывайте, что оперативного обновления таблички в PM нет 😞



  • @intrapro, почему нет оперативного обновления? У меня как только что-то меняется или проходит первый cmd=all, то все значения обновляются!



  • @Alex_Jet перепривязал, но ничего не помогло.
    alt text

    Включение: 11.02 19:22:37.064 IH: command [ { dn: 'VENT2', prop: 'on' } ]
    11.02 19:22:37.066 IH: send { type: 'act',
    data:
    [ { chan: '19',
    id: '19',
    set: '',
    ks: 0,
    desc: 'DO',
    weight: 1,
    reqsek: 0,
    kh: 0,
    req: '/%pwd%/?pt=%adr%&cmd=get',
    value: 1,
    script: '',
    restore: true,
    usescript: '',
    nofb: false,
    command: 'on' } ] }

    Выключение: 11.02 19:22:39.266 IH: command [ { dn: 'VENT2', prop: 'off' } ]
    11.02 19:22:39.267 IH: send { type: 'act',
    data:
    [ { chan: '19',
    id: '19',
    set: '',
    ks: 0,
    desc: 'DO',
    weight: 1,
    reqsek: 0,
    kh: 0,
    req: '/%pwd%/?pt=%adr%&cmd=get',
    value: 0,
    script: '',
    restore: true,
    usescript: '',
    nofb: false,
    command: 'off' } ] }


Log in to reply