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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Burst
Сообщения: 113
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 22 фев 2018, 23:03

seaven писал(а):
22 фев 2018, 22:50
Andrey_B писал(а):
22 фев 2018, 17:19
По пункту 3. 100 пакетов в минуту - это очень мало. Никаких задержек быть не должно. В чем они проявляются?
У меня стоит MajorDoMo и MegaD-2561. При включении входа на счет импульсов от электросчетчика заметно увеличивается время реакции на нажатие кнопки.
Поставьте счетчик-делитель на вход, чтобы он на несколько импульсов от электросчетчика выдавал только один импульс на вход Меги. Если не было первоначальной цели таким образом попробовать оценить мгновенную мощность, а только посчитать расход электроэнергии, то решение значительно снизит нагрузку.

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

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

Сообщение seaven » 22 фев 2018, 23:10

Prokol писал(а):
22 фев 2018, 18:24
seaven писал(а):
22 фев 2018, 16:59
2. Инфракрасный пульт управления. Если я ничего не путаю, то при перезагрузке контроллера светодиод включен в течении нескольких секунд. Проблему можно решить, поставив конденсатор по входу. Ну и я бы сделал бы питание ИК-передатчика 12-вольтовым, и 3 светодиода подключил бы последовательно. В таком решении есть минусы, но плюсов больше.
А в чем больше плюсов? Один из светодиодов сгорит и работать перестает все. В таком случае для 12 вольт проще поставить сопротивления большим номиналом. Между 3 и 12 вольтами разницы никакой, если стоит ключ.
С чего вы взяли, что при перезагрузке светодиод включен несколько секунд? Попробуйте подключить обычный светодиод (хотя там и так он впаян на плате), он не светится. С чего-же вдруг ИК диод должен светиться?
А конденсатор по входу может наоборот сыграть отрицательную роль. Т.к. при нем длительность импульсов может значительно измениться. Что приведет к неправильным командам.
Не правильно делать из 220 вначале 12 вольт (причем амперы), потом 3,3 вольта для питания процессора и от этого запитывать импульсные светодиоды. При последовательном подключении 3-х светодиодов импульсный ток упадет в 3 раза, уменьшатся наводки, а провода, идущие к модулю, возможно проходят с другими слаботочными цепями.
И хотя плат ИК-передатчиков к мегадевайсу можно подключить много, я бы использовал только один выход, ключ поставил около контроллера, запитал бы от 12В, а в помещения тянул бы только по одному проводу, в помещениях последовательно поставил бы 3 светодиода и небольшой резистор. Впрочем, я так и сделал :)

SolarW
Сообщения: 176
Зарегистрирован: 01 авг 2016, 00:32

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

Сообщение SolarW » 23 фев 2018, 00:10

majkl84 писал(а):
Prokol писал(а):
22 фев 2018, 20:17
majkl84 писал(а):
22 фев 2018, 20:11
Вы очень плохо читаете другие сообщения. Есть как минимум квартира и дача это уже 2 под сети. Можно конечно прокинуть VLAN внутри VPN и тогда все устройства дома и на даче окажутся в одной под сети
С чего Вы взяли, что я плохо читаю? Не имеет значение сколько у Вас квартир и дач. В любом случае все это можно иметь в одном диапазоне. И это даже проще. Вы же не занимаетесь крупными сетями, где в сети больше 255 компов и устройств? Так зачем использовать разбивку на подсети? Избыточности по мусору в сети при 10-50 устройств никакой в сети не будет. Тем более сейчас уже в сетях уже давно не используют хабов, которые не могли отслеживать MAC адреса.
Ну как расскажите как это сделать в одном диапазоне. Имеем 2 роутера между ними VPN без VLAN.
Mikrotik - VPN - EoIP - добавить в локальный бридж -> получаем один L2 сегмент


SolarW
Сообщения: 176
Зарегистрирован: 01 авг 2016, 00:32

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

Сообщение SolarW » 23 фев 2018, 00:15

majkl84 писал(а):
Prokol писал(а):
22 фев 2018, 20:24
majkl84 писал(а):
22 фев 2018, 20:20
Ну как расскажите как это сделать в одном диапазоне. Имеем 2 роутера между ними VPN без VLAN.
Элементарно просто если у вас роутеры с прошивкой от Олега или Mikrotik. В интернет поднимаете помимо подключения к интернету, поверх VPN между двумя роутерами. Внутри один и тот же прозрачно настроенный диапазон, как буд-то стоят два управляемых свича. На форумах по микротику очень много есть описаний на эту тему.
Повторюсь без VLAN как это сделать? В данном случает DHCP сервер будет только с одной стороны и шлюзом для всех будет один из роутеров значит если по какой то причине он пропадет у вас не будет доступа в интернет и т.д. Хотя формально с вашей стороны со вязью все ок.
На микротике проблема решается изящным костылем - пингаем основной DHCP-сервер, если недоступен то подымаем свой.
Соответственно при появлении пинга свой DHCP ложим.




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

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

Сообщение Andrey_B » 23 фев 2018, 09:32

seaven писал(а):
22 фев 2018, 22:50
Andrey_B писал(а):
22 фев 2018, 17:19
По пункту 3. 100 пакетов в минуту - это очень мало. Никаких задержек быть не должно. В чем они проявляются?
У меня стоит MajorDoMo и MegaD-2561. При включении входа на счет импульсов от электросчетчика заметно увеличивается время реакции на нажатие кнопки.
Вероятнее всего проблема в ПО сервера. Для контроллера 1-3 пакета в секунду не является в принципе какой-то существенной нагрузкой.
Вы можете посмотреть дамп сетевого обмена, чтобы проверить, через какое время после получения информации о событии сервер отправляет команду контроллеру. И вообще, как это все происходит.

alex946
Сообщения: 204
Зарегистрирован: 05 дек 2015, 22:48
Контактная информация:

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

Сообщение alex946 » 23 фев 2018, 10:40

seaven, у вас, вероятнее всего, затык при работе с базой данных Мажордома. Надо бы тщательно просмотреть настройки в части кеширования, буферов памяти и т.п. И очень бы неплохо проверить кеширование скриптов самого Мажордома в памяти. На домашних компутерах часто на это не обращают внимание, но... если каждое обращение к серверу вызывает массовое чтение с диска в оперативку, а диск медленный, да плюс задержки при записи в базу... Получится очень печально.

Да, и чтобы повысить отзывчивость выключателей, можно попробовать поставить флажок у Act
Флажок (чекбокс) справа от поля Act определяет логику работы сценария. Если он не установлен (по умолчанию), то сценарий выполняется ТОЛЬКО если сервер не прописан, недоступен или HTTP-статус отличен от 200. Если флажок установлен, то сценарий выполняется всегда независимо от наличия сервера. Контроллер в этом случае будет сообщать на сервер о событиях, но его ответные команды в рамках одной TCP-сессии будут проигнорированы.
Андрей, правильно я понимаю, что в этом случае ответа сервера никто не ждёт и реакция будет мгновенная?

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

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

Сообщение Andrey_B » 23 фев 2018, 10:43

alex946, да, но и при правильно работающем сервере она должна быть мгновенной.

alex946
Сообщения: 204
Зарегистрирован: 05 дек 2015, 22:48
Контактная информация:

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

Сообщение alex946 » 23 фев 2018, 11:10

Ой, ну, я после двухсекундных задержек на веб-серверах уже морально готов ко всему.

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

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

Сообщение Alex_Jet » 23 фев 2018, 15:56

Andrey_B писал(а):
19 фев 2018, 19:42
Alex_Jet, кое-что поправил в части работы функции "Program". Попробуйте.
Андрей, спасибо! Моя проблема с Program ушла. Других проблем пока не обнаружил.

По ADS1115 - будет ли полная нативная поддержка в МК? В частности выбор в качестве dev ADS1115 для:
1. Настройки режимов работы входов (single/differential) - дифференциальный вход актуален для измерения тока.
2. Настройки gain АЦП - также актуально для измерения тока
3. Вывода в веб (и по запросу вида ?pt=30&cmd=get) реального напряжения по каналам в милливольтах - ведь точный коэфициент расчета при фиксированном значении gain известен!

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

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

Сообщение Andrey_B » 23 фев 2018, 16:14

Пока не знаю. Все зависит от реальной потребности.
Было бы неразумным тратить ресурсы на то, чем пользуется полтора человека.
В реальных условиях дома иногда требуется фиксировать включение какого-нибудь прибора. Но для этого удобнее использовать датчики тока с дискретным выходом, которые подключаются к стандартному входу.
Но чтобы что-то там измерять... Мне, например, это никогда не требовалось.
Общее потребление по фазам интересно и полезно, но с этим хорошо справляются счетчики электроэнергии с цифровыми выходами.

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

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

Сообщение empenoso » 23 фев 2018, 20:55

Что-то не могу разобраться - у меня есть две бра на стене - левая и правая.
Левая: http://192.168.48.20/sec/?pt=0&cmd=1:2
Правая: http://192.168.48.20/sec/?pt=0&cmd=0:2

Физические кнопки управления бра оказались разнесенными на разных мегах:
Для левой: http://192.168.48.20/sec/?pt=16, настроена через Act "1:2" и стоит галочка что работает независимо от наличия сервера - все работае и при прописанном сервере на меге.
Для правой кнопка управления на другой меге: http://192.168.48.30/sec/?pt=3 - в поле Net прописано 192.168.48.20/sec/?cmd=0:2, Mode стоит P. Если сервер не прописан - все работает нормально, но при прописанном сервере - ничего не происходит - ставлю галочки в чекбоксе или нет - свет НЕ переключается при нажатии на физическую кнопку.

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

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

Сообщение Andrey_B » 24 фев 2018, 11:06

https://ab-log.ru/files/File/megad-2561 ... a6-hex.zip

- Исправлена ошибка в работе функции сохранения состояния портов, когда после перезагрузки порты восстанавливали свое состояние даже когда соответствующая команда не выполнялась.

empenoso, функция Net была отключена, если работа с сервером осуществлялась по протоколу MQTT.
В данной версии функцию включил (могут быть особенности работы), но все же при наличии сервера именно он должен рулить устройствами.
Именно поэтому на сервер не отправляются сообщения о переключении выходов.

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

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

Сообщение Vadim » 24 фев 2018, 17:31

Alex_Jet писал(а):
17 фев 2018, 08:51
Burst писал(а):
16 фев 2018, 14:35
... где невооруженным взглядом четко прослеживается некий периодический сигнал помехи, возможно как раз импульсы от БП, к сожалению масштаб не разобрать. Поставьте фильтр на питание и фильтр на вход - должно помочь снизить уровень шумов до +-1 бита.
В каком-то смысле вы были правы - проблема была в дополнительном источнике питания для MH-Z14A - LM2596S (DC12V/DC5V). Однако фильтры ни по питанию, ни на входе тут значимой роли не сыграли бы:) - о чем я и говорил. Суть была в другом - в "слабой" GND для многопотребляющего MH-Z14A, до конца не понимаю как на сопротивлении этой линии наводились помехи от LM2596S, но факт остается фактом. В общем для новичков и не только привожу рабочую и проверенную на практике схему для оцифровки значений аналоговых датчиков, которые питаются от отличных от +3,3 и +12В напряжений MegaD. Моя проблема была в том, что MH-Z14A по GND был соединен только так, как показано штрих-пунктирной серой линией:
MegaD_ADS1115_MH-Z14A.png

И соответствующие графики: зеленый - не приведенное к номиналу напряжение на шине +3.3В MegaD; красный - MH-Z14A, подключенный к АЦП MegaD; оранжевый - MH-Z14A, подключенный к каналу 0 ADS1115.
ADC_MegaD_ADS1115_2.jpg
Я боюсь, что это сам датчик MH-Z14A ведет себя "неприлично"
Начал тестировать ADS1115 с прочими датчиками в т.ч .с MH-Z14A.
Паказания со всех датчиков сильно колбасило с четко прослеживаемой частотой.
Все датчики были запитаны от 3.3v выхода контроллера.
Выяснилось, что скачки напряжения вызывает именно MH-Z14A. Достаточно просто подключить его по питанию (без линии данных).
Красным - +3.3V с контроллера подключены к входу ADS1115
Синим - +3.3V с контроллера подключены к ADC входу контроллера.
Черным - земля подключена к входу ADS1115
Зеленым - MH-Z14A подключен к входу ADS1115 (в левой части графика).
Левая часть графика - подключен MH-Z14A.
Данные снимались раз в секунду, значения не пересчитывал.
MH-Z14A.jpg
MH-Z14A.jpg (201.11 КБ) 2700 просмотров
Возможно это только у меня такой экземпляр.
Но вешать такое напрямую к 3.3V контроллера явно не стоит. Тоже пошел смотреть внешнее питание для него

d.v.ermakov
Администратор
Сообщения: 2188
Зарегистрирован: 29 май 2015, 21:23
Откуда: Екатеринбург, Нижний Тагил

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

Сообщение d.v.ermakov » 24 фев 2018, 17:50

Уж сколько раз написано, и в даташите, и здесь, на форуме, что не работает MH-Z14 от 3,3 вольта. Ему тупо разогреться не хватает, вот он и скачет туда-сюда.

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

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

Сообщение Vadim » 24 фев 2018, 18:01

Вот не попадалась мне эта информация, к сожалению.
Пользовался этой статьей: https://www.ab-log.ru/smart-house/ether ... co2-mh-z14
Про небольшую неточность показаний самого датчика упоминали при 3.3v, но то ,что датчик будет просаживать общее питание - нет.
При этом сам mh-z14 показания выдает относительно стабильные, а вот прочие датчики, которые подключены к этому же питанию, начинает колбасить.

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

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

Сообщение martiniman » 25 фев 2018, 01:53

Andrey_B - возможно-ли как-нибудь реализовать настройку для PWM "минимальное значение которое принять за 0"?
Подопытная лампа gauss 6W dimmable - начинает менять яркость от PWM=26 и до 255.
И если 26 обозначить как 0, проблема рабочим диапазоном будет решена :)

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

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

Сообщение Alex_Jet » 25 фев 2018, 06:43

Vadim писал(а):
24 фев 2018, 18:01
Вот не попадалась мне эта информация, к сожалению.
Вот детально, с графиками. Датчики ведут себя отлично! Обратите внимание, что на графике показания от двух штук, лежащих рядом друг с другом.
У меня проблемы только с дополнительными Step-Down до сих пор...сильно шумит LM2596. Видно надо линейную КРенку ставить и RC фильтры по входам АЦП.

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

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

Сообщение empenoso » 25 фев 2018, 07:59

Andrey_B писал(а):
24 фев 2018, 11:06
empenoso, функция Net была отключена, если работа с сервером осуществлялась по протоколу MQTT.
В данной версии функцию включил (могут быть особенности работы), но все же при наличии сервера именно он должен рулить устройствами.
Именно поэтому на сервер не отправляются сообщения о переключении выходов.
Я искренне не понимаю почему мега не выдает состояния своих порта типа out, а всем должен управлять сервер. Понимаю что так сложилось исторически, но ведь новым любителям домашней автоматизации из-за этого приходится писать дополнительные правила на сервере - возьмем тот же опенхаб - если бы мега выдавала состояния своих портов типа out, то все ограничилось бы одной строчкой:

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

Switch Bedroom_LampOnWall_Left      "Бра в спальне, слева [%s]"     <light>      {mqtt=">[mqtt:megad/20/cmd:command:ON:1=1],>[mqtt:megad/20/cmd:command:OFF:1=0],<[mqtt:megad/20/1:state:JSONPATH($.value)]"}
Но поскольку она их НЕ выдает, то (поскольку биндинг так и не заработал https://www.ab-log.ru/forum/viewtopic.p ... 740#p31742) придется писать правила для каждой кнопки - когда она нажата что делать и соответственно конечно опенхаб будет знать состояния всех выходов, но ведь это дополнительные строки кода, и получится их немало, вот только правило на одну физическую кнопку (в десять раз больше!):

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

rule "P2 ON" 
when
    Item P2 changed to ON
then
	if ( Bedroom_LampOnWall_Left  == ON) {	
		postUpdate(Bedroom_LampOnWall_Left , OFF)
		}	else {
	postUpdate(Bedroom_LampOnWall_Left , ON)
	}
end
А таких кнопок при наличии двух мег довольно много. 15 например. Или 15 строк или 150 строчек кода - вообще большая разница.
Это я к тому что может быть для облегчения жизни любителям выводить выходы по mqtt например?

stilet69
Сообщения: 103
Зарегистрирован: 30 июн 2017, 19:14

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

Сообщение stilet69 » 25 фев 2018, 11:51

empenoso писал(а):
25 фев 2018, 07:59


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

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

Switch Bedroom_LampOnWall_Left      "Бра в спальне, слева [%s]"     <light>      {mqtt=">[mqtt:megad/20/cmd:command:ON:1=1],>[mqtt:megad/20/cmd:command:OFF:1=0],<[mqtt:megad/20/1:state:JSONPATH($.value)]"}
Но поскольку она их НЕ выдает, то (поскольку биндинг так и не заработал https://www.ab-log.ru/forum/viewtopic.p ... 740#p31742) придется писать правила для каждой кнопки - когда она нажата что делать и соответственно конечно опенхаб будет знать состояния всех выходов, но ведь это дополнительные строки кода, и получится их немало, вот только правило на одну физическую кнопку (в десять раз больше!):
А таких кнопок при наличии двух мег довольно много. 15 например. Или 15 строк или 150 строчек кода - вообще большая разница.
Это я к тому что может быть для облегчения жизни любителям выводить выходы по mqtt например?
Поддерживаю. У меня та же самая фигня на HomeAssistant при каждом включении и выключении лампочки, я пишу портянки текста чтобы обновить состояние.

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

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

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

martiniman писал(а):
25 фев 2018, 01:53
возможно-ли как-нибудь реализовать настройку для PWM "минимальное значение которое принять за 0"?
Подопытная лампа gauss 6W dimmable - начинает менять яркость от PWM=26 и до 255.
И если 26 обозначить как 0, проблема рабочим диапазоном будет решена :)
Для модулей MegaD-7I7O-SD и MegaD-8I7O-SD.
Если аккуратно снять лицевую панель, то можно увидеть плату, на которой смонтированы светодиоды индикации.
В этой плате сделаны 3 маленьких круглых отверстия. Сквозь эти отверстия вы увидите маленькие подстроечные резисторы.
Теперь нужно найти крестовую отвертку #0 и #1 нужной длины. Выставить значение ШИМ канала в 1 и плавно крутить подстроечный резистор нужного канала по часовой стрелке пока не загорится лампа.
empenoso писал(а):
25 фев 2018, 07:59
придется писать правила для каждой кнопки - когда она нажата что делать и соответственно конечно опенхаб будет знать состояния всех выходов, но ведь это дополнительные строки кода, и получится их немало, вот только правило на одну физическую кнопку (в десять раз больше!)
Все это выглядит как попытка переложить проблему ПО большого и мощного сервера на плечи маленького микроконтроллера, увеличивая при этом бессмысленный в общем-то сетевой трафик.
Сервер получил информацию о том, что нажата кнопка и отдал команду на включение выхода. Какое же состояние у этого выхода? У сервера короткие гигабайты памяти?

Ответить