Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 25 фев 2018, 14:57

Alex_Jet писал(а):
25 фев 2018, 06:43
Vadim писал(а):
24 фев 2018, 18:01
Вот не попадалась мне эта информация, к сожалению.
Вот детально, с графиками. Датчики ведут себя отлично! Обратите внимание, что на графике показания от двух штук, лежащих рядом друг с другом.
У меня проблемы только с дополнительными Step-Down до сих пор...сильно шумит LM2596. Видно надо линейную КРенку ставить и RC фильтры по входам АЦП.
Я все же склоняюсь, что это у меня экземпляр датчика такой и дело тут не в 3.3V питания.
Я подключил датчик через отдельный Step-Down 12V->5V, по схеме, как у тебя.
На выходе с mh-z14а получил "пилу" похожую на красный график, примерно как здесь:
https://www.ab-log.ru/forum/viewtopic.p ... =20#p28403
Cкриншоты уже снимать не стал. Шумит дико, это отражатеся да других элементах стенда.
Пока отложил это занятие с mh-z14а.
Да и вообще устанавливать его скорее всего не буду с учетом его особенностей и надежности работы.
Он у меня около 2х месяцев висел не меге без записи данных, так выше 400ppm никогда не поднималось (обычно 250-300).
Из-за особенностей квартиры с CO2 у меня проблем нет, а вот спертый воздух датчик не детектирует.

seaven
Сообщения: 4
Зарегистрирован: 18 фев 2018, 17:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение seaven » 25 фев 2018, 23:48

Andrey_B, добрый день! Кажется, еще одна фича, которую вроде не встречал на форуме: если порт законфигурирован как вход и стоит галка Akt, то параметр m=2 никогда не передается. Прошивка (fw: 4.23b9). Возможно, так и должно быть.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 26 фев 2018, 00:28

seaven писал(а):
25 фев 2018, 23:48
Andrey_B, добрый день! Кажется, еще одна фича, которую вроде не встречал на форуме: если порт законфигурирован как вход и стоит галка Akt, то параметр m=2 никогда не передается. Прошивка (fw: 4.23b9). Возможно, так и должно быть.
fw: 4.25b3
Аналогично.
Mode с галкой. m=2 передается.
Mode с галкой. ACT с галкой. m=2 не передается.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение empenoso » 26 фев 2018, 13:02

Последняя версия прошивки, прописан сервер mqtt - мега сама отрабатывает переключение "13:2", хотя галочка не стоит
Без имени-1.jpg
Без имени-1.jpg (37.67 КБ) 2852 просмотра
Флажок (чекбокс) справа от поля Act определяет логику работы сценария. Если он не установлен (по умолчанию), то сценарий выполняется ТОЛЬКО если сервер не прописан, недоступен или HTTP-статус отличен от 200. Если флажок установлен, то сценарий выполняется всегда независимо от наличия сервера. Контроллер в этом случае будет сообщать на сервер о событиях, но его ответные команды в рамках одной TCP-сессии будут проигнорированы.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 26 фев 2018, 17:30

seaven писал(а):
25 фев 2018, 23:48
Кажется, еще одна фича, которую вроде не встречал на форуме: если порт законфигурирован как вход и стоит галка Akt, то параметр m=2 никогда не передается. Прошивка (fw: 4.23b9). Возможно, так и должно быть.
При установленной "галке" Act на сервер отправляются те события, которые обрабатывает контроллер. А в Act нельзя записать действие на длительное нажатие.
Вы можете привести реальный (не гипотетический) пример, когда серверу нужно знать про удержание в случае выставленного флажка Act? Пример ситуации, в которой вам это необходимо.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 26 фев 2018, 17:37

Я планировал сделать конфигурацию:
- Включение света через контроллер (ACT с галкой) Без задержек, без привязки к серверу (если сервер умрет, то просто не будет работать функционал с датчиками движения и таймером).
- Сервером обрабатывать тип нажатия (Mode с галкой):
Если одинарное нажатие, то отключить свет при отсутсвии движения в течении 15 мин
Если удержание, то отключить свет при отсутсвии движения в течении ~ 60 мин или вообще не использовать таймер\датчик движения (лежим читаем ...)
Последний раз редактировалось Vadim 26 фев 2018, 17:43, всего редактировалось 2 раза.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 26 фев 2018, 17:37

empenoso писал(а):
26 фев 2018, 13:02
Последняя версия прошивки, прописан сервер mqtt - мега сама отрабатывает переключение "13:2", хотя галочка не стоит
Флажок (чекбокс) справа от поля Act определяет логику работы сценария. Если он не установлен (по умолчанию), то сценарий выполняется ТОЛЬКО если сервер не прописан, недоступен или HTTP-статус отличен от 200. Если флажок установлен, то сценарий выполняется всегда независимо от наличия сервера. Контроллер в этом случае будет сообщать на сервер о событиях, но его ответные команды в рамках одной TCP-сессии будут проигнорированы.
Принципы Act/Net разрабатывались для HTTP. Отсюда в описании упомянуты статусы.
HTTP - это прямое общение с сервером, когда контроллер понимает следующие ситуации: сервер недоступен в принципе, сервер доступен но отвечает 404/304 и т.д. (не 200 ОК).
MQTT - это общение непонятно с кем. Устройство не знает, доставлено ли сообщение серверу, работает ли он вообще.
Наверное, можно было бы отрабатывать Act при недоступности брокера. Но вполне вероятна ситуация, когда с брокером все в порядке, а серверное ПО валяется, даже если брокер и ПО работают на одной машине.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 26 фев 2018, 19:01

seaven писал(а):
22 фев 2018, 16:59
у меня действия в поле Act у порта W26 выполняется всегда, не зависимо от наличия сервера.
В последних версиях прошивки такой проблемы нет.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 26 фев 2018, 19:20

Alex_Jet писал(а):
18 фев 2018, 20:31
какие-нибудь интересные идеи почерпнули из моего топика ... кнопка clear для условий в Program)?
https://ab-log.ru/files/File/megad-2561 ... a7-hex.zip

Добавил кнопку "Clear". Но внутри правила. Снаружи сделать не могу - кнопки займут много полезного места в пакете данных.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение empenoso » 26 фев 2018, 19:48

Andrey_B писал(а):
26 фев 2018, 17:37
Принципы Act/Net разрабатывались для HTTP. Отсюда в описании упомянуты статусы.
HTTP - это прямое общение с сервером, когда контроллер понимает следующие ситуации: сервер недоступен в принципе, сервер доступен но отвечает 404/304 и т.д. (не 200 ОК).
MQTT - это общение непонятно с кем. Устройство не знает, доставлено ли сообщение серверу, работает ли он вообще.
Наверное, можно было бы отрабатывать Act при недоступности брокера. Но вполне вероятна ситуация, когда с брокером все в порядке, а серверное ПО валяется, даже если брокер и ПО работают на одной машине.
Как мне кажется MQTT - более понятный формат - нажал кнопку - сразу же видишь сообщение на брокере. А HTTP ... вот использую опенхаб - как в нем _сразу_ увидеть (а не считать постфактум) что кнопка была нажата? Со специальным биндингом у меня какие-то проблемы, да и как он работает - не понимаю, а в MQTT - все прозрачно на вид.
По HTTP можно было бы переключать статус "виртуального выключателя" как на Vera Edge, но опенхаб такого вроде не поддерживает, да и мега не может длинные ссылки вызывать.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 26 фев 2018, 20:01

empenoso писал(а):
26 фев 2018, 19:48
на брокере. А HTTP ... вот использую опенхаб - как в нем _сразу_ увидеть (а не считать постфактум) что кнопка была нажата? Со специальным биндингом у меня какие-то проблемы, да и как он работает - не понимаю, а в MQTT - все прозрачно на вид.
По HTTP можно было бы переключать статус "виртуального выключателя" как на Vera Edge, но опенхаб такого вроде не поддерживает, да и мега не может длинные ссылки вызывать.
Может сервер сменить? ;-)
Посмотрите IOBroker. Там как-то попроще все выглядит.

hawkeye
Сообщения: 98
Зарегистрирован: 06 окт 2016, 22:16

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение hawkeye » 26 фев 2018, 22:48

empenoso писал(а):
26 фев 2018, 19:48
А HTTP ... вот использую опенхаб - как в нем _сразу_ увидеть (а не считать постфактум) что кнопка была нажата? Со специальным биндингом у меня какие-то проблемы, да и как он работает - не понимаю
Тоже хотел предложить ioB. Жму кнопку - и в веб-морде и на потолке моментально зажигается лампочка. Всё просто и понятно, скрипты на чистом js.

Ruslan
Сообщения: 2184
Зарегистрирован: 06 янв 2014, 20:44

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Ruslan » 26 фев 2018, 23:04

Vadim писал(а):
26 фев 2018, 20:01
Может сервер сменить? ;-)
Точно, может "в консерватории" что-то подправить? ;-) В том же MajorDoMo я показывал, как быстро и просто можно настроить освещение (https://ab-log.ru/forum/viewtopic.php?f=1&t=1328). В конце первого поста после подзаголовка "ДОПОЛНЕНИЕ". Реакция мгновенная. Скрипты на PHP.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение empenoso » 27 фев 2018, 06:01

Реакция в опенхаб тоже мгновенная - но моя проблема в том, что когда нажата кнопка - сервер средствами http - не видит этого. А если на меге настроен mqtt, а датчики считываю по http, то mqtt слетает и соответственно тоже никаких нажатий кнопок не видно.

Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Alex_Jet » 27 фев 2018, 06:56

Andrey_B писал(а):
26 фев 2018, 19:20
Добавил кнопку "Clear". Но внутри правила. Снаружи сделать не могу - кнопки займут много полезного места в пакете данных.
Андрей, спасибо! Я так и предполагал - сделать кнопку внутри правила, поскольку знаю об ограничениях пакет не по наслышке.
empenoso писал(а):
27 фев 2018, 06:01
Реакция в опенхаб тоже мгновенная - но моя проблема в том, что когда нажата кнопка - сервер средствами http - не видит этого. А если на меге настроен mqtt, а датчики считываю по http, то mqtt слетает и соответственно тоже никаких нажатий кнопок не видно.
Вот Вы правильно сказали "моя проблема"! Проблема в том, что вы "не умеете готовить" софтовую часть сервера. Вам надо досконально разобраться как что работает, а не пытаться выуживать с MegaD данные по разным протоколам. Изначально MegaD заточена для работы по http! И в нем реализован, наверное, почти весь существующий функционал. MQTT и SNMP - это всего лишь фишка...их придется еще долго допиливать под разные хотелки пользователей. Поэтому не смешивайте бананы с печеньками: c MegaD надо работать либо по http, либо по mqtt. Если второе не устраивает по функционалу (он будет еще долго допиливаться), но нет знаний/желаний безопасно прокинуть http сервер УД в общедоступную сеть или крайне необходим бот Телеграма для управления УД, то воспользуйтесь советом d.v.ermakov - установите над http сервером mqtt надстройку. Но опять же - это не совсем для новичков...поэтому разбирайтесь в софте и будет вам счастье!

Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Alex_Jet » 27 фев 2018, 19:08

Андрей, вопрос по удаленному термостату.
Пример: Val=20, Hst=0.2, Net - 192.168.11.24/sec/?cmd=19:4, Checkbox - активен.
Значит, если сервер не отвечает, то:
-если температура превысит 20.2 градуса, то на 192.168.11.24 сразу же должна прийти команда 19:0? Или есть какой-то таймер "на входе"?
-если температура снова опуститься, например, до 20 градусов, а потом снова превысит 20.2, то на 192.168.11.24 снова должна прийти команда 19:0?

Никак не могу выловить на 192.168.11.24 пакеты от контроллеров с датчиками. И на 192.168.11.24 ничего не происходит - как был включен P19, так и остался включенным. Wareshark показывает только arp-запросы, поскольку используется коммутатор...надо зеркалить порты.

Кроме этого!, если checkbox рядом с net деактивировать, то при превышении уставки на 192.168.11.24 отключаются вообще все порты (если точнее, то у меня были включены P19 и P21).

Потестируйте удаленный термостат с высшими портами, пожалуйста!

PS: реплика от буквоеда - кнопку Clear можно разместить рядом с Save? и Clear написать с большой буквы?
PSPS: потестировал Program в боевых условиях. Все отлично, но не хватает условия "доступен ли сервер"? Например, если P19=1 то если сервер не доступен выполняем команду. Если сервер доступен, то он сам решит что делать.

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

0 - if P19=1 -> &1
#1 - if SRV=0 -> 28=1
PSPSPS: или же просто на странице Program предусмотреть checkbox - "выполнять только при отсутствии сервера".
Последний раз редактировалось Alex_Jet 28 фев 2018, 06:28, всего редактировалось 1 раз.

martiniman
Сообщения: 528
Зарегистрирован: 09 авг 2016, 15:09
Откуда: Сочи

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение martiniman » 28 фев 2018, 01:19

Andrey_B писал(а): .
Пробую диммер на MegaD-8I7O-SD с диммируемыми светодиодными лампами Е27 220в - пока не очень. Мерцают на разных уровнях яркости,
причем после повторного включения поведение меняется.
С силовыми блоками от Ноолайт SB-150 работают без нареканий, т.е. лампы исправны.
Частоту ШИМ менял - не помогает.
Может что-то еще покрутить можно?

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 28 фев 2018, 12:17

Alex_Jet писал(а):
27 фев 2018, 19:08
вопрос по удаленному термостату.
Пока нашел только одну ошибку в работе удаленного термостата.
Если сервер прописан, но ответил не 200 (например, 404), то URL из поля Net не вызывался, а значение температуры становилось 0.00.
Поправил. Других ошибок пока не выявил.
https://ab-log.ru/files/File/megad-2561 ... a8-hex.zip
Alex_Jet писал(а):
27 фев 2018, 19:08
PS: реплика от буквоеда - кнопку Clear можно разместить рядом с Save? и Clear написать с большой буквы?
Я специально их разнес по разным местам, чтобы не путать.
Alex_Jet писал(а):
27 фев 2018, 19:08
PSPS: потестировал Program в боевых условиях. Все отлично, но не хватает условия "доступен ли сервер"?
Для входов наличие сервера проверяется в момент отправки сообщения.
Для выходов наличие сервера вообще не проверяется, потому что на сервер ничего не отправляется. А потому такое условие при существующем подходе реализовать нельзя.
Да и сомневаюсь я в его необходимости. Program - функция, которая заменяет сервер в простейших сценариях. Что-то наворачивать в ней при наличии в системе сервера считаю неправильным.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 28 фев 2018, 12:25

martiniman, если взять 10 разных диммеров, то со светодиодными лампами мы вполне можем получить 10 разных ситуаций. Причем все будет сильно меняться в зависимости от модели лампы. Диммируемая светодиодная лампа - это непростой прибор, как лампа накаливания. Здесь уместно говорить о совместимости конкретной лампы и конкретного диммера.
Назовите точную модель и производителя ламп, которые так себя ведут. При каких значениях порта наблюдается мерцание?
Я тестировал диммируемые лампы разных производителей с модулями "SD" (в том числе Gauss), но пока ни разу не сталкивался с фактом их мерцания.
Кстати, в предыдущем сообщении вы ничего не писали про мерцание.

Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Alex_Jet » 28 фев 2018, 12:43

Andrey_B писал(а):
28 фев 2018, 12:17
Пока нашел только одну ошибку в работе удаленного термостата.
Если сервер прописан, но ответил не 200 (например, 404), то URL из поля Net не вызывался, а значение температуры становилось 0.00.
Поправил. Других ошибок пока не выявил.
А у Вас выявилась ситуация "если checkbox рядом с net деактивировать, то при превышении уставки температуры, на удаленном контроллере отключаются вообще все порты" - я наблюдал ситуацию 2 раза.
Сегодня вскрою посылку и сделаю стенд.

И для тупых все же ответьте на мои вопросы как работает Net в случае со скачками температуры (см. мой предыдущий пост).
Andrey_B писал(а):
28 фев 2018, 12:17
Для входов наличие сервера проверяется в момент отправки сообщения.
Для выходов наличие сервера вообще не проверяется, потому что на сервер ничего не отправляется. А потому такое условие при существующем подходе реализовать нельзя.
Да и сомневаюсь я в его необходимости. Program - функция, которая заменяет сервер в простейших сценариях. Что-то наворачивать в ней при наличии в системе сервера считаю неправильным.
Наверняка проверка наличия сервера оформлена функцией и поэтому не должно быть трудно выставить флаг разрешения работы Program только тогда когда функция проверки сервера вернет 0?
Хотя в чем-то вы правы - Program заменяет сервер в простейших сценариях. Главное чтобы он не мешал серверу выполнять более сложный алгоритм управления чем-нибудь!

Ответить