Плагин MegaD



  • @artem521:

    @homa:

    @artem521:

    Спасибо большое 🙂 жаль что пока megad 2561 не умеет самостоятельно( автономно ) исполнять сценарии по i2c, хотел совершенно отдельно повешать мегу и датчик t6703 с парой твердотельных реле, буду еще одну малинку вешать значит с IH на борту 🙂

    Кстати, у меня t6703 висит на одной земле с электромагнитным реле. При включении реле в некоторых случаях (1-2 раза в день) датчик вылетал в ошибку - показывал 65535, при еще 2-3 щелчках реле датчик приходил в себя. Чтобы такого не было поставил параллельно реле диод в противоход. Видимо при срабатывании якоря обратные токи сбивают датчик с толку)

    Спасибо за информацию о ранее выявленном баге:) Кстате по питанию, действительно к этому датчику применяются жесткие требования. при 4, 3 вольтах датчик так же вылетает в ошибку, при стабильных 5 вольтах после проводов непосредственно на самом датчике все отрабатывает хорошо.



  • @Alex_Jet:

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

    Разработчик решил эту проблему. В последних версиях при обновлении прошивки в MegaD ее выходы в iH не включаются все подряд, как было ранее. После обычной перезагрузки (через настройки, кнопкой, по питанию или при самопроизвольной перезагрузке) iH восстанавливает ранее включенные выходы.



  • Помогите разобраться: есть кнопка в туалете присоединена в меге 1, пин 1, к этой меге присоединена лампочка в туалете на 15 пин, это все работает (при одинарном клике) но когда я попробовал добавить расширение для двойного клика (многокомандная кнопка) то двойной клик не работает (вентилятор присоединен к меге 2, пин 20), подскажите что я делаю не так, надо ли что то прописать в самой меге?



  • @amgstone:

    Помогите разобраться: есть кнопка в туалете присоединена в меге 1, пин 1, к этой меге присоединена лампочка в туалете на 15 пин, это все работает (при одинарном клике) но когда я попробовал добавить расширение для двойного клика то двойной клик не работает (вентилятор присоединен к меге 2, пин 20), подскажите что я делаю не так, надо ли что то прописать в самой меге?

    На скриншотах невозможно что-либо разглядеть. Пишите ваши настройки в виде текста, что ли 🙂

    В целом, если нужно выдать команду на другую мегу, "Передать в ответ" не работает, конечно.

    Итак,

    • прописываем входящее сообщение с мега 1: /megad?pt=1&click=2

    • "Передать в ответ" не заполняем

    Дальше есть два варианта:

    1. Использовать пункт "Выполнить запрос, в т.ч. на другой MegaD"

    Там ввести, например 192.168.0.222/%pwd%/?cmd=20:2, где 192.168.0.222 - адрес мега 2

    Но у этого варианта есть минус - нужно будет опрашивать порт 20 на второй меге, чтобы считать состояние вентилятора для индикации в системе. Поэтому, если нужна обратная связь с вентилятором, лучше использовать второй вариант:

    2. Просто запустить сценарий, в котором переключать этот вентилятор

    Сценарий выбирается из списка сценариев.

    Чтобы сценарий туда попал, у него не должно быть триггеров.

    Можно сделать блок-схему из одной команды - переключать вентилятор.



  • @intrapro:

    2. Просто запустить сценарий, в котором переключать этот вентилятор

    Сценарий выбирается из списка сценариев.

    Чтобы сценарий туда попал, у него не должно быть триггеров.

    Можно сделать блок-схему из одной команды - переключать вентилятор.

    можно более подробно это визуализировать, нужна обратная связь.



  • @amgstone:

    @intrapro:

    2. Просто запустить сценарий, в котором переключать этот вентилятор

    Сценарий выбирается из списка сценариев.

    Чтобы сценарий туда попал, у него не должно быть триггеров.

    Можно сделать блок-схему из одной команды - переключать вентилятор.

    можно более подробно это визуализировать, нужна обратная связь.

    1. Сделать сценарий с одним единственным зеленым блоком в котором переключается вентилятор:
    scen701.jpg
    2. В плагине MegaD в Расширениях канала:
    scen702.jpg



  • тут все прекрасно написали, но есть ещо один вопрос, так мне долгим нажатием выключить вентилятор и свет когда 2 устройства находятся на разных мегах?



  • @amgstone:

    тут все прекрасно написали, но есть ещо один вопрос, так мне долгим нажатием выключить вентилятор и свет когда 2 устройства находятся на разных мегах?

    Что конкретно вам не понятно?



  • @intrapro:

    @amgstone:

    тут все прекрасно написали, но есть ещо один вопрос, так мне долгим нажатием выключить вентилятор и свет когда 2 устройства находятся на разных мегах?

    Что конкретно вам не понятно?

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

    как в меге должно прописано, если их 3: megad_1.php,megad_.php,megad_3.php или просто в 3 мег одинаково megad



  • @amgstone:

    @intrapro:

    @amgstone:

    тут все прекрасно написали, но есть ещо один вопрос, так мне долгим нажатием выключить вентилятор и свет когда 2 устройства находятся на разных мегах?

    Что конкретно вам не понятно?

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

    Расширение всегда там, откуда приходит входящее сообщение, то есть кнопка, которую нажимают

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



  • @amgstone:

    как в меге должно прописано, если их 3: megad_1.php,megad_.php,megad_3.php или просто в 3 мег одинаково megad

    Script в настройках MegaD - это то, что будет подставлено перед знаком вопроса, когда MegaD передает сообщение (при нажатии кнопки, сработке датчика)

    /megad_1.php?pt=1 - для 1

    /megad_3.php?pt=1 - для 3

    Можете нажать на кнопку и посмотреть в отладчике

    Чтобы входящее сообщение в Расширении обработалось, оно должно совпадать с тем, что отправляет MegaD. Если напишете просто megad - работать не будет 😞



  • @intrapro:

    @amgstone:

    как в меге должно прописано, если их 3: megad_1.php,megad_.php,megad_3.php или просто в 3 мег одинаково megad

    Script в настройках MegaD - это то, что будет подставлено перед знаком вопроса, когда MegaD передает сообщение (при нажатии кнопки, сработке датчика)

    /megad_1.php?pt=1 - для 1

    /megad_3.php?pt=1 - для 3

    Можете нажать на кнопку и посмотреть в отладчике

    Чтобы входящее сообщение в Расширении обработалось, оно должно совпадать с тем, что отправляет MegaD. Если напишете просто megad - работать не будет 😞

    тойсть если у меня в отладчике пишет megad1,megad2,megad3 то мне так и вписывать в Script без .php?



  • В расширении должно быть прописано так, как прописано в поле Script

    Вот у вас на скриншоте в поле Script написано: megad_1.php

    Точно так надо писать и в Расширении.



  • Доброго времени суток!

    Возник вопрос по работе плагина с расширителем портов MCP23017.

    Повесил данный девайс на 32-33 порты MegaD.
    Maga p32.png
    Mega p32 ext.png
    Прописал каналы по аналогии с другими портами.
    каналы MegaD.png
    Проверил отладку. Мега по честному отдаёт состояния всех 16 портов.
    отладка.png
    Но устройства DD1 и DD2 на мнемосхеме, не реагируют на изменения состояния портов 32_1, 32_2.

    В какую сторону копать ? 😢



  • @MAMOHT:

    Доброго времени суток!

    Возник вопрос по работе плагина с расширителем портов MCP23017.

    Повесил данный девайс на 32-33 порты MegaD.

    Прописал каналы по аналогии с другими портами.

    Проверил отладку. Мега по честному отдаёт состояния всех 16 портов.

    Но устройства DD1 и DD2 на мнемосхеме, не реагируют на изменения состояния портов 32_1, 32_2.

    В какую сторону копать ? 😢

    Добрый день!

    Получается, данная возможность пока не реализована: в ответ на cmd=get для составных каналов ожидаются данные, разделенные /

    temp:10.75/press:728/hum:19.477  или 10.75/728/19.477
    
    

    Здесь подканалы разделены символом ";"

    Добавим, не проблема. А внутри запроса cmd=all как это работает? Покажите, пожалуйста, ответ на запрос cmd=all. Там видимо пусто для 32 порта?



  • @intrapro:

    @MAMOHT:

    В какую сторону копать ? 😢

    Добрый день!

    Получается, данная возможность пока не реализована: в ответ на cmd=get для составных каналов ожидаются данные, разделенные /

    > temp:10.75/press:728/hum:19.477  или 10.75/728/19.477
    > 
    

    Здесь подканалы разделены символом ";"

    Добавим, не проблема. А внутри запроса cmd=all как это работает? Покажите, пожалуйста, ответ на запрос cmd=all. Там видимо пусто для 32 порта?

    Ну, как то так.
    MegaD p32 cmd=all.png
    MegaD cmd=all.png



  • @MAMOHT:

    Ну, как то так.

    Да, вижу, пишет MCP. Спасибо 🙂



  • @MAMOHT:

    Но устройства DD1 и DD2 на мнемосхеме, не реагируют на изменения состояния портов 32_1, 32_2.

    Баг конечно правильный отметили. Но в разрезе "сработки" входов расширителя (без принудительного опроса состояния всех портов MCP) необходимо IntA/IntB подключить к порту MegaD и прописать его в настройках MCP, а в расширениях плагина MegaD прописать для каждого порта:

    /megad.php?pt=32&ext0=1         32_0=ON
    /megad.php?pt=32&ext0=0         32_0=OFF
    
    

    intrapro, ведь так (32_0=ON) состояние канала установится в iH уже сейчас? Единственное что будет, если сработает одновременно два канала расширителя и MegaD пришлет ?pt=32&ext0=1&ext1=1???

    И, да, подключив MCP к MegaD обнаружил интересную вещь, которой раньше не было - пока к порту расширителя, у которого в плагине стоит время опроса, но не привязано ни одно устройство плагин не опрашивает этот порт! Как только привязываю к порту устройство, так плагин начинает опрашивать порт. Чтобы было понятнее - вот так плагин не опрашивает порт, на котором висит MCP:
    MegaD_MCP_No_GET.png



  • @Alex_Jet:

    @MAMOHT:

    Но устройства DD1 и DD2 на мнемосхеме, не реагируют на изменения состояния портов 32_1, 32_2.

    Баг конечно правильный отметили. Но в разрезе "сработки" входов расширителя (без принудительного опроса состояния всех портов MCP) необходимо IntA/IntB подключить к порту MegaD и прописать его в настройках MCP, а в расширениях плагина MegaD прописать для каждого порта:

    То есть, берём либо IntA, либо IntB ? Цепляем на свободный порт Меги и пишем его здесь:
    MCP23017_INT.png



  • @MAMOHT:

    То есть, берём либо IntA, либо IntB ? Цепляем на свободный порт Меги и пишем его здесь:

    MCP23017_INT.png

    Оба берем и цепляем на вход MegaD. Почитайте тут - https://www.ab-log.ru/smart-house/ethernet/megad-2561


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