[Модуль] MegaD (megad)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Контактная информация:

Re: [Модуль] MegaD (megad)

Сообщение skysilver »

Небольшие исправления модуля:
1. Восстановлен функционал конфигурирования Меги через админку модуля (не работало для новых прошивок).
2. Исправлена ошибочное значение mdid, когда значение не указано в Меге.
3. Исправлена ошибка отображения GSM, когда gsm не указан в Меге.
4. Исправлено чтение и отображение конфига Меги.
5. Добавлена поддержка порта NC.
6. Убрано удаление сразу всех записей по порту. Теперь удаляет строго по одному.
7. Добавлено деление на 100 значений, которые приходят от Меги в некоторых случаях умноженными на 100.
Вложения
majordomo-megad.zip
(52.35 КБ) 317 скачиваний
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
webms
Сообщения: 498
Зарегистрирован: Чт дек 15, 2016 3:13 am

Re: [Модуль] MegaD (megad)

Сообщение webms »

Добавьте пожалуйста в модуль поддержку MegaD-2W
m_n_a
Сообщения: 1
Зарегистрирован: Вс май 16, 2021 10:46 pm

Re: [Модуль] MegaD (megad)

Сообщение m_n_a »

directman66 писал(а): Чт июл 18, 2019 12:53 pm Прошивкой контроллера megad-2561 предусмотрен режим GSM сигнализации https://www.ab-log.ru/smart-house/ethernet/megad-2561.
(См. раздел MegaD-2561 в качестве GSM-сигнализации и SMS-шлюза)

Добавлен виртуальный GPIO 100 для управления этим режимом работы. Настройка появлятеся, если выставить галочку GSM.

Доступно управление режимом охраны из меню модуля и привязкой виртуального порта 100 (alarm) к любому объекту свойства status. Можно использовать Простое устройство "Реле/выключатель".

В дальнешем планируется уговорить Андрея научить прошивку передавать GET запрос серверу, после чего помимо звонка или смс, можно будет настраивать любые автоматизации с использованием сервера.
Добрый день!
Андрей недавно научил прошивку передавать GET-запросы серверу а так же отправлять через запрос от сервера любое СМС-сообщение на любой номер. Ограничение есть только по символам: кириллицу нельзя использовать в тексте.
Вот обновленное описание работы с GSM-модемом: https://ab-log.ru/page.php?Cat=110&ID=1 ... m#conf-gsm
Будут ли реализованы планы по переделке модуля MegaD в связи с появившимися новыми возможностями?
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Контактная информация:

Re: [Модуль] MegaD (megad)

Сообщение skysilver »

m_n_a писал(а): Пн май 17, 2021 12:29 pm Андрей недавно научил прошивку передавать GET-запросы серверу а так же отправлять через запрос от сервера любое СМС-сообщение на любой номер. Ограничение есть только по символам: кириллицу нельзя использовать в тексте.
Вот обновленное описание работы с GSM-модемом: https://ab-log.ru/page.php?Cat=110&ID=1 ... m#conf-gsm
Будут ли реализованы планы по переделке модуля MegaD в связи с появившимися новыми возможностями?
Я могу взяться за доработку, если кто-нибудь спонсирует покупку GSM-модуля в исполнении на DIN-рейку (GSM-UPS).
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
SmoKE_xDDD
Сообщения: 816
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Откуда: Нижний Новгород

Re: [Модуль] MegaD (megad)

Сообщение SmoKE_xDDD »

Если у кого датчики BMx280, которые отдают: температуру/влажность/давление в формате: temp:28.28/press:743.12/hum:31.610
Модуль сейчас получает только температуру и влажность.
Открываем:
/var/www/html/modules/megad/readvalues.inc.php
Ищем похожий и меняем:

Код: Выделить всё

if (preg_match_all('/(temp|hum|press):([\-\d\.]+)/', $states[$i], $m)) {
        $totalm = count($m[1]);
		
        for ($im = 0; $im < $totalm; $im++) {
			//debmes($m[1][$im]);
			
            if ($m[1][$im] == 'temp') {
                $cmd = array('NUM' => $i, 'VALUE' => $m[2][$im], 'COMMAND' => 'temperature', 'INDEX' => $im);
                $commands[] = $cmd;
                $matched = 1;
            } else if($m[1][$im] == 'press') {
                $cmd = array('NUM' => $i, 'VALUE' => $m[2][$im], 'COMMAND' => 'press', 'INDEX' => $im);
                $commands[] = $cmd;
                $matched = 1;
            } else {
                $cmd = array('NUM' => $i, 'VALUE' => $m[2][$im], 'COMMAND' => 'humidity', 'INDEX' => $im);
                $commands[] = $cmd;
                $matched = 1;
            }
        }
    }
Будет отдавать так:
Безымянный.png
Безымянный.png (6.53 КБ) 8256 просмотров
yden
Сообщения: 141
Зарегистрирован: Пн авг 22, 2016 10:03 am

Re: [Модуль] MegaD (megad)

Сообщение yden »

Добрый.
Плиз подскажите пожалуйста.
У меня модули меги питаются от своего БП + ипб. Сетевое хозяйство от другого ипб. Свитч, соединяющий меги и сервер, секунд 15 стартует после включения. Сервер мдм стоит на ноуте + свой ипб - долгая автономность.
Ситуация: света долго нет. ИПБ мег и коммутатора уже в ауте, сервер еще работает. Дали свет, меги стартуют быстрее коммутатора и остаются без сети. Естественно, все ранее включенные релейные выходы выключены. Коммутатор заработал, но меги от мдм не получают команду на восстановление состояний портов. Приходится вручную передергивать порты.
Хотелось бы автоматизации: 5 порт меги включен, в модуле мегаД на мдм этот факт зафиксирован. Отключаем мегу, включаем ее. Порт 5 выключен. Модуль мегаД видит или разницу в состоянии порта на меге и в модуле, или видит что мега в сети появилась - восстанавливает состояние портов.
Может я что-то не догоняю?
благодарю
Dasisfakt
Сообщения: 29
Зарегистрирован: Вт авг 06, 2019 5:48 pm

Re: [Модуль] MegaD (megad)

Сообщение Dasisfakt »

Доброе утро, добрый день, добрый вечер. Подскажите по alive. Есть датчик дыма подключенный к меге, соответственно каждый час или день дома не случается пожар, соответственно .status всегда =0. Из-за продолжительных отсутствий изменений показаний, датчик считается недоступным, т.е. alive=0. Как определить доступен порт меги или нет, в который подключен датчик?
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: [Модуль] MegaD (megad)

Сообщение Chainik »

Код: Выделить всё

$state = file_get_contents("http://192.168.0.14/sec/?pt=3&cmd=get");
$stateOff = substr($state,0,3);
$stateOn = substr($state,0,2);
if ($stateOff == "OFF" || $stateOn == "ON") {
say("Датчик дыма доступен");
} else {
say("Датчик дыма НЕДОСТУПЕН");
}
А вообще, если не пользоваться ПУ, то и проблем со встроенной в ПУ логикой не будет.
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: [Модуль] MegaD (megad)

Сообщение Chainik »

Может кто в курсе, почему модуль в редакции от skysilver не реагирует при переключении входа расширителя портов MegaD-16I-XT?
Хотя в модуль параметр "ext" при этом прилетает (Request: /megad.php?pt=32&ext9=0&cnt=46 (192.168.1.14)
22:25:43 0.95547100 found by ip 15
22:25:43 0.95547100 Result: d
)
Может, конечно, реакция заключается в отправке команды "d", но такая команда расширителями не поддерживается.
А вот почему не происходит запуска связанного метода, вот в этом вопрос...


UPD. "Если бы губы Никанора Ивановича да приставить к носу Ивана Кузьмича..."
Короче говоря, удалось получить правильную реакцию на переключение входов расширителя. Для этого пришлось заменить файл "megad.class.php" на версию от марта-апреля 2020 г.
Gutsu Dmitriy
Сообщения: 26
Зарегистрирован: Вс янв 21, 2018 11:12 pm

Re: [Модуль] MegaD (megad)

Сообщение Gutsu Dmitriy »

Добрый вечер , как избавится от /ajax/megad.html?op= , с помощью контролера 2561 реализованы термостаты теплых полов , и получается термостат включает теплый пол так как температура ниже нормы а /ajax/megad.html?op= его выключает с разным интервалом , как то я находил этот ajax через File Manager и удалил все что с ним связано и все стало хорошо , но после переноса системы и обновления модуля, это жесть опять вернулась и не могу теперь ее найти и удалить и избавится от этой проблемы
Ответить