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

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

Модератор: immortal

in4m
Сообщения: 15
Зарегистрирован: Сб июл 26, 2014 12:01 am
Благодарил (а): 0
Поблагодарили: 2 раза

Re: Модуль "MegaD"

Сообщение in4m » Вс сен 20, 2015 2:21 pm

Помогите умным советом: как правильно настроить датчик движения?

имеем:
* объект датчика скопированный из MotionSensor1 класса inhouseMovementSensors
* датчик движения (нормально замкнутый), подключенный к меге к 6 порту.
* Порт на меге настроенный:
P6/ON/35
Type IN
Mode R

в настройках модуля пробовал связал порт меги с объектом датчик движения (связанное свойство пробовал выставлять как status так и motionDetected)

Чую что подвох в том, что датчик движения реагирует как размыкание в статус OFF, но как исправить не пойму.
Вложения
мега1.png
Настройки порта меги
мега1.png (22.54 КБ) 11806 просмотров
мега2.png
настройки меги
мега2.png (22.59 КБ) 11806 просмотров
настройки модуля.png
настройки модуля MegaD
настройки модуля.png (28.03 КБ) 11806 просмотров
yantarik
Сообщения: 10
Зарегистрирован: Пн окт 06, 2014 1:31 pm
Благодарил (а): 10 раз
Поблагодарили: 8 раз

подскажите пожалуйста с проблемой в модуле MеgaD

Сообщение yantarik » Вс окт 11, 2015 3:22 pm

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

Fatal error: Maximum execution time of 60 seconds exceeded in C:\_majordomo\htdocs\lib\mysql.class.php on line 111
или
Fatal error: Maximum execution time of 60 seconds exceeded in C:\_majordomo\htdocs\lib\common.class.php on line 681
или
Fatal error: Maximum execution time of 60 seconds exceeded in C:\_majordomo\htdocs\lib\mysql.class.php on line 235

в чем беда, где копать?
Заранее спасибо
zelevova
Сообщения: 291
Зарегистрирован: Вт ноя 18, 2014 11:43 pm
Откуда: Краснодарский край
Благодарил (а): 32 раза
Поблагодарили: 68 раз

Re: подскажите пожалуйста с проблемой в модуле MеgaD

Сообщение zelevova » Вт окт 13, 2015 9:52 am

Пишет что превышено время выполнения. Нужно увеличить в php.ini max_execution_time.
За это сообщение автора zelevova поблагодарил:
yantarik (Ср окт 14, 2015 8:26 pm)
Рейтинг: 1.16%
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
yantarik
Сообщения: 10
Зарегистрирован: Пн окт 06, 2014 1:31 pm
Благодарил (а): 10 раз
Поблагодарили: 8 раз

Re: подскажите пожалуйста с проблемой в модуле MеgaD

Сообщение yantarik » Ср окт 14, 2015 8:26 pm

Да похоже так и есть, производительность сервера упала, почему пока не определил.
Увеличил время тайминга, проблему пока временно решил.
in4m
Сообщения: 15
Зарегистрирован: Сб июл 26, 2014 12:01 am
Благодарил (а): 0
Поблагодарили: 2 раза

Re: Модуль "MegaD"

Сообщение in4m » Вс окт 25, 2015 12:16 am

Предлагаю внести изменения в файл readvalues.inc
Когда к меге подцеплен DS18B20, то у него параметр только temp: (без hum), поэтому значение температуры выдает как temp:**, вместо цифр **.
Поэтому приходится убирать слово "temp:" $tmp[0]=str_replace("temp:", "", $tmp[0]);
Сделал костыль:

} elseif ($type==3 && preg_match('/temp:([\d\.]+)\/hum:([\d\.]+)/', $states[$i], $m)) {
$prop['CURRENT_VALUE_STRING']=$m[1];
$prop['CURRENT_VALUE_STRING2']=$m[2];
} else {
$tmp=explode('/', $states[$i]);
$tmp[0]=str_replace("temp:", "", $tmp[0]);
$prop['CURRENT_VALUE_STRING']=$tmp[0];
if (isset($tmp[1])) {
$prop['CURRENT_VALUE_STRING2']=$tmp[1];
}
}
Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: Модуль "MegaD"

Сообщение Kod.Begemot » Вс окт 25, 2015 8:09 am

Спасибо, попробую. Как раз собирался на модуль переводить megad с такими датчиками.
Ещё вопрос: это только у меня, или у всех команда по умолчанию из свойств порта выполняется всегда, несмотря на все "return"?
zelevova
Сообщения: 291
Зарегистрирован: Вт ноя 18, 2014 11:43 pm
Откуда: Краснодарский край
Благодарил (а): 32 раза
Поблагодарили: 68 раз

Re: Модуль "MegaD"

Сообщение zelevova » Пн окт 26, 2015 2:09 pm

Kod.Begemot писал(а):это только у меня, или у всех команда по умолчанию из свойств порта выполняется всегда, несмотря на все "return"?
У меня тоже чаще всего тоже срабатывает. Думается мне что время выполнения функции больше таумаута ожидания меги. Пока не придумал как это обойти кроме как отказаться от сценариев по умолчанию.
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: Модуль "MegaD"

Сообщение Kod.Begemot » Чт окт 29, 2015 3:00 pm

Ещё вопрос - как то я отстал от жизни, напомните - долгое или множественное нажатие этот модуль позволяет отлавливать?
zelevova
Сообщения: 291
Зарегистрирован: Вт ноя 18, 2014 11:43 pm
Откуда: Краснодарский край
Благодарил (а): 32 раза
Поблагодарили: 68 раз

Re: Модуль "MegaD"

Сообщение zelevova » Чт окт 29, 2015 3:11 pm

Нет. Он отлавливает нажатие ну и отжатие. :) А посчитать их это уже дело программное.
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: Модуль "MegaD"

Сообщение Kod.Begemot » Чт окт 29, 2015 3:40 pm

Да, тут я как-то не догадался, точно! :)
значит единственная проблема на сегодняшний день - непонятки со срабатыванием "сценария по умолчанию"...
Интересно, а можно эту функцию отключить в модуле "на корню"?
Ответить