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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

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

Сообщение Alex_Jet » 09 мар 2018, 21:31

kerberos писал(а):
09 мар 2018, 19:52
Если через WinBox, то Switch - закладка Switch - выбираете свой Switch - параметры Mirror Source (порта-источник), Mirror Target (порт наблюдатель)
Спасибо, буду знать. Что-то в последних версиях (несколько часов назад обновился до 6.41.2) они все поменяли. Теперь никаких master портов нет...теперь даже не понятно - используется железный или софтовый свитч?
Andrey_B писал(а):
09 мар 2018, 20:27
Alex_Jet писал(а):
09 мар 2018, 19:33
От 192.168.11.31 на сервер сыпется вот такая ерунда:
09.03.2018 22:25:55 192.168.11.31 => localhost:9031 HTTP GET /mod_megad.php?pt=30&v=-10787&dir=0
Это косвенно говорит о сбое в процедуре считывания температуры.
Если линия короткая, проверить качество соединений. Если на шине висят другие 1-wire устройства, подключить питание. Если линия длиннее 10-15 метров, уменьшить номинал подтяжки.
Соответственно описанные проблемы в логике работы термостата могут говорить о сбоях в считывании значения температуры.
Есть желание включить все необходимые проверки контрольных сумм, чтобы предотвратить подобные ситуации. Останавливает лишь то, что все эти проверки в 2-3 раза увеличат время работы с датчиком. Ну и с точки зрения работы термостата, ничем практически не помогут. Оттого, что контроллер будет наверняка знать, что есть ошибки в передаче данных по шине, термостат лучше работать не станет.
Понял. Сейчас просматривал лог работы - действительно считываются не верные значения (-118, -124, -117.87), в скрипт даже пришлось добавить if(val >0) иначе сумма 5-ти измерений была отрицательная... На шине только один DS18B20 с паразитным питанием (завтра подключу 3.3В), линия не сильно длинная (~7м). Почему вдруг стали очень часто появляться не верные значения - вот это вопрос!
Андрей, после 4.25 beta7 ничего не менялось в работе DS18B20?

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

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

Сообщение Andrey_B » 09 мар 2018, 21:55

1-wire - интересная штука. Если тщательно изучить требования к таймингам для разных компонентов, то можно обнаружить, что они очень разные. Причем разница эта существенная, иногда в разы. Там ребята особо не парились насчет унификации всего этого дела. При этом DS18B20 - очень лояльно относится к отклонениям от тех таймингов, которые обозначены в документации. Однако другие совместимые с 1wire устройства (например, считыватели) не столько покладисты.
Тайминги действительно менялись, но не в 4.25b7, а несколько раньше (на пару недель раньше и это не афишировалось). И я бы сказал, что новые тайминги лучше вписываются в требования к DS18B20. Вряд ли дело в этом.
Но вот, кстати, висит у меня в одном месте на честном слове Si7021 (аналог HTU21D). А тут сегодня стал вдруг барахлить. Как и следовало ожидать - контакты. Подтянул винты и все заработало... Но то времянка и на соплях.
Если не найдете очевидную причину, попробуйте уменьшить номинал цифровой подтяжки с помощью внешнего резистора.
Штатные 4,7кОм - кажется много, но производители упорно рекомендую именно этот номинал как некий общий компромисс. Хотя опыт показывает, что 3кОм работают зачастую лучше. В следующих релизах есть мысль применить кое-какую доработку на этот счет.
Проверка CRC и отображение Err немного поможет серверу, но повторю, термостат от этого лучше работать не станет. С точки зрения работы отопления еще не факт, что удачнее: -108 или Err...

Prokol
Сообщения: 197
Зарегистрирован: 25 янв 2015, 21:43

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

Сообщение Prokol » 10 мар 2018, 14:27

Андрей, здравствуйте. Не нашли еще никакого пульта с протоколом RC5/RC6?
В ардуино есть неплохая библиотека IRremote.h В ней много протоколов. Вот например кусок кода под RC6 (отправки и приема), по кодировке клавиш вполне совпадает с lirc

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

//+=============================================================================
// RRRR    CCCC   6666
// R   R  C      6
// RRRR   C      6666
// R  R   C      6   6
// R   R   CCCC   666
//
// NB : Caller needs to take care of flipping the toggle bit
//
#define MIN_RC6_SAMPLES      1
#define RC6_HDR_MARK      2666
#define RC6_HDR_SPACE      889
#define RC6_T1             444
#define RC6_RPT_LENGTH   46000

#if SEND_RC6
void  IRsend::sendRC6 (unsigned long data,  int nbits)
{
	// Set IR carrier frequency
	enableIROut(36);

	// Header
	mark(RC6_HDR_MARK);
	space(RC6_HDR_SPACE);

	// Start bit
	mark(RC6_T1);
	space(RC6_T1);

	// Data
	for (unsigned long  i = 1, mask = 1UL << (nbits - 1);  mask;  i++, mask >>= 1) {
		// The fourth bit we send is a "double width trailer bit"
		int  t = (i == 4) ? (RC6_T1 * 2) : (RC6_T1) ;
		if (data & mask) {
			mark(t);
			space(t);
		} else {
			space(t);
			mark(t);
		}
	}

	space(0);  // Always end with the LED off
}
#endif

//+=============================================================================
#if DECODE_RC6
bool  IRrecv::decodeRC6 (decode_results *results)
{
	int   nbits;
	long  data   = 0;
	int   used   = 0;
	int   offset = 1;  // Skip first space

	if (results->rawlen < MIN_RC6_SAMPLES)  return false ;

	// Initial mark
	if (!MATCH_MARK(results->rawbuf[offset++],  RC6_HDR_MARK))   return false ;
	if (!MATCH_SPACE(results->rawbuf[offset++], RC6_HDR_SPACE))  return false ;

	// Get start bit (1)
	if (getRClevel(results, &offset, &used, RC6_T1) != MARK)   return false ;
	if (getRClevel(results, &offset, &used, RC6_T1) != SPACE)  return false ;

	for (nbits = 0;  offset < results->rawlen;  nbits++) {
		int  levelA, levelB;  // Next two levels

		levelA = getRClevel(results, &offset, &used, RC6_T1);
		if (nbits == 3) {
			// T bit is double wide; make sure second half matches
			if (levelA != getRClevel(results, &offset, &used, RC6_T1)) return false;
		}

		levelB = getRClevel(results, &offset, &used, RC6_T1);
		if (nbits == 3) {
			// T bit is double wide; make sure second half matches
			if (levelB != getRClevel(results, &offset, &used, RC6_T1)) return false;
		}

		if      ((levelA == MARK ) && (levelB == SPACE))  data = (data << 1) | 1 ;  // inverted compared to RC5
		else if ((levelA == SPACE) && (levelB == MARK ))  data = (data << 1) | 0 ;  // ...
		else                                              return false ;            // Error
	}

	// Success
	results->bits        = nbits;
	results->value       = data;
	results->decode_type = RC6;
	return true;
}
#endif
Может эта библиотека как-то поможет?

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

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

Сообщение Andrey_B » 10 мар 2018, 14:36

Prokol писал(а):
10 мар 2018, 14:27
Не нашли еще никакого пульта с протоколом RC5/RC6?
Пока еще не искал.

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

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

Сообщение SolarW » 11 мар 2018, 02:16


Alex_Jet писал(а): Если кто подскажет как на маршрутизаторе Mikrotik включить какой-нибудь порт в зеркало к тому, к которому подключен удаленный контроллер (192.168.11.24), то пришлю лог сниффера.
Что-то вас не в ту степь понесло...
Открываете в винбоксе Tools - Packet Sniffer, указываете там имя файла с расширением .pcap, задаёте параметры фильтра, давите кнопочку Start и чудесно все снифите микротиком.
В конце кнопку Stop, файлик вытаскиваете к себе на комп и открываете в акуле.
Второй вариант - запустить на компе акулу, включить приём потока, на микротике включить передачу наснифленного на айпишку компа с акулой - будет вам в реальном времени видно в акуле наснифленное микротом.



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

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

Сообщение SolarW » 11 мар 2018, 02:22

Alex_Jet писал(а): Спасибо, буду знать. Что-то в последних версиях (несколько часов назад обновился до 6.41.2) они все поменяли. Теперь никаких master портов нет...теперь даже не понятно - используется железный или софтовый свитч?
Ага, теперь все это через бриджи делается...
https://weblance.com.ua/338-mikrotik-vy ... 0-mgc.html



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

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

Сообщение Alex_Jet » 11 мар 2018, 03:19

SolarW писал(а):
11 мар 2018, 02:16
Что-то вас не в ту степь понесло...
Открываете в винбоксе Tools - Packet Sniffer, указываете там имя файла с расширением .pcap, задаёте параметры фильтра, давите кнопочку Start и чудесно все снифите микротиком.
В конце кнопку Stop, файлик вытаскиваете к себе на комп и открываете в акуле.
Второй вариант - запустить на компе акулу, включить приём потока, на микротике включить передачу наснифленного на айпишку компа с акулой - будет вам в реальном времени видно в акуле наснифленное микротом.
Микротиком пользуюсь недавно, все его возможности не помню, хотя все менюшки изучил. Акулой на компе как-то сподручнее.
А можно поподробнее о втором варианте - что и где надо сделать в Микротик?

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

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

Сообщение hawkeye » 14 мар 2018, 21:22

Столкнулся с такой ситуацией: после того как сервер был недоступен (перезагружался) и снова включился наверное контроллеры начинают тупить - проявляется так - можно секунд 15-20 стоять и щелкать выключателем, но ничего не происходит, потом начинает на выключаетель реагировать. И так каждый выключатель. Т.е. двойной выключатель - правая кнопка уже нормально работает, а левая тупит.. как только оно всё перетупливает - начинает работать нормально. Разумеется я начинаю щелкать когда сервер на 100% успешно загружается.
Если в такой момент перезагрузить контроллер - всё становится сразу хорошо. (fw: 4.25b6 +ioBroker).

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

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

Сообщение Andrey_B » 15 мар 2018, 11:20

hawkeye, что стоит между сервером и устройством? Роутер, коммутатор?
Какие у вас сетевые настройки контроллера и настройки входов (одного входа).
Как ведет себя контроллер, если отключить/включить патч корд, выключить/включить коммутатор-роутер. Нужно понять, в какой именно ситуации воспроизводится проблема.
Нужно запустить на сервере анализатор трафика и посмотреть, поступают ли пакеты от контроллера в момент, когда на нажатие клавиш нет реакции. Если поступают, то что это за пакеты.

Да, у меня при отключении/перезагрузке любого элемента сети, в том числе сервера, ничего подобного не происходит.

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

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

Сообщение stilet69 » 19 мар 2018, 14:47

Хотел бы предложить улучшение для семейства Мега.
Оно пришло мне в голову, когда монтировал очередное устройство и пытался всунуть в разъемы провод сечением 2,5мм (освещение).
Я подумал, что в случае если Мега сгорит (не дай Бог) по каким либо причинам - ее смена будет трагедией на 3-5 часа с доставанием проводов, их маркировкой и кропотливым засовыванием снова.
Андрей возможно ли сделать конструктив исполнительных устройств Мег основаных на разъемах любого типа, но быстрой смены - папа-мама?
То есть изначально потратил время на закрепление проводов в разъеме например папа, потом сколько хочешь меняй Меги на любую современную версию. 5 мин на доставание разъема из Меги, монтаж на ДИН рейке и защелкивание снова.
Как вам такая идея?

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

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

Сообщение Vadim » 19 мар 2018, 16:33

stilet69 писал(а):
19 мар 2018, 14:47
Андрей возможно ли сделать конструктив исполнительных устройств Мег основаных на разъемах любого типа, но быстрой смены - папа-мама?
Разборный разъем под 220V и 2,5mm сечения провода? ;-)
Этож какие д.б габариты, чтоб контактная группа выдержала 2,2квт (для релейного блока).
Опять же, какое усилие придется прикладывать, чтоб вытащить такую колодку, если она будет общая. Можей выйти вместе с платой. ;-)

Для входов, конечно, было бы удобней в каких-то случаях.

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

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

Сообщение Andrey_B » 19 мар 2018, 17:03

stilet69 писал(а):
19 мар 2018, 14:47
Как вам такая идея?
Эта идея предлагалась тут не раз.
Основной минус заключается в том, что разъемные клеммники увеличат общие габариты устройства. На практике бывают случаи, когда это может стать проблемой.
Я, кажется, уже приводил пример с DIN-рейкой в 19" стойку ZPAS. Вот в нее подобный модуль встанет с трудом. Останавливает, прежде всего, это обстоятельство.
Ну и хорошие разъемные клеммники на 2,5мм2/10А увеличат цену устройства. Это тоже важно.
3-5 часов на откручивание/закручивание 30 проводов? На практике это занимает чуть более получаса. Операция это может никогда и не потребоваться. А когда потребуется, конфигурация устройства/клеммников может измениться.
Но к идее в целом отношусь положительно.

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

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

Сообщение Alex_Jet » 20 мар 2018, 07:27

Андрей, в ближайшей перспективе рассматриваете возможность расширения "локальной" работы контроллера, например, по предложенным мною идеям из этого топика? У меня один человек (совсем не IT, но что такое + и - знает) хотел бы иметь MegaD-2561 с его возможностями, но без сервера ("я ничего в этом не понимаю, чуть что придется тебя напрягать"). А из веб-интерфейса контроллера (он нужен всего один) мог бы поиграться с ним и настроить как захочет. Но главное - это отображение все на том же OLED значений с разных датчиков крупными цифрами. Я в принципе в своем топике описал как это все может работать вместе с настраиваемой "системной кнопкой" - в концепцию MegaD отлично вписывается и памяти займет не много.

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

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

Сообщение SolarW » 21 мар 2018, 10:09


Alex_Jet писал(а): Микротиком пользуюсь недавно, все его возможности не помню, хотя все менюшки изучил. Акулой на компе как-то сподручнее.
А можно поподробнее о втором варианте - что и где надо сделать в Микротик?
http://it-note.su/2016/04/trafika-iz-mi ... wireshark/ - как-то так.


majkl84
Сообщения: 40
Зарегистрирован: 01 июл 2017, 09:53

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

Сообщение majkl84 » 21 мар 2018, 10:37

stilet69 писал(а):
19 мар 2018, 14:47
Хотел бы предложить улучшение для семейства Мега.
Оно пришло мне в голову, когда монтировал очередное устройство и пытался всунуть в разъемы провод сечением 2,5мм (освещение).
Я подумал, что в случае если Мега сгорит (не дай Бог) по каким либо причинам - ее смена будет трагедией на 3-5 часа с доставанием проводов, их маркировкой и кропотливым засовыванием снова.
Андрей возможно ли сделать конструктив исполнительных устройств Мег основаных на разъемах любого типа, но быстрой смены - папа-мама?
То есть изначально потратил время на закрепление проводов в разъеме например папа, потом сколько хочешь меняй Меги на любую современную версию. 5 мин на доставание разъема из Меги, монтаж на ДИН рейке и защелкивание снова.
Как вам такая идея?
А зачем совать 2.5 мм да еще на освещение? Для того чтобы не сгорела мега я лично на все кроме освещение пользуюсь промежуточными реле или контакторами.

Genplane
Сообщения: 36
Зарегистрирован: 04 авг 2016, 09:31
Откуда: Калининград

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

Сообщение Genplane » 22 мар 2018, 11:20

MegaD-2561 с прошивкой 4.26b2: При попытке в Config -> Program записать в ADC порту условие

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

if P36>980 -> 15:0;16:0
сохраняем и получаем это

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

if P36>324.64 -> 15:0;16:0
Так задумано или это баг?

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

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

Сообщение Andrey_B » 22 мар 2018, 12:12

Genplane, попробуйте. Прежде чем прописывать значение в поле "value"/Program для АЦП порта, тип указанного порта обязательно должен быть ADC.

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

Igor78
Сообщения: 143
Зарегистрирован: 26 янв 2015, 14:44
Откуда: Москва

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

Сообщение Igor78 » 22 мар 2018, 18:48

Андрей, нашел проблему в обработке команды c сервера вида:

.../?cmd=2e4:1;2e5:1;2e5:2
, где 2e4 2e5... - порты MCP23017

Обрабатывается только первая команда.

В сценарии:

.../?cmd=2e4:1;9:0;2e5:1

Исполняются только первая и вторая.

Аналогичные сценарии для PCA9685 работают без проблем. Прошивка - последняя бета.
С уважением, Игорь

Ivanopulo
Сообщения: 1
Зарегистрирован: 22 мар 2018, 10:34

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

Сообщение Ivanopulo » 23 мар 2018, 10:42

Andrey_B писал(а):
01 мар 2018, 12:16
winniepooh, наверное, мы говорим о разных "мерцаниях".
Мерцание, о котором пишет martiniman, это такое выраженное моргание лампы, когда яркость падает почти до 0 с частотой порядка 10-15 Гц и проявляется не всегда, а в некоторых ситуациях.
Легкое же едва уловимое мерцание LED ламп на определенных уровнях яркости - явление, возможно, иного рода.
Доброго дня!
Буквально вчера зарегистрировался, что бы задать вопрос о лампах Gauss и их работе на дим-каналах.
Однако сегодня, могу уже сам рассказать о результатах эксперимента.
Итак, подопытный - gauss GX53 8W 660лм 2700k. Цена довольно кусачая - около 300р.
IMG_20180323_094208+.jpg
IMG_20180323_094208+.jpg (237.32 КБ) 3859 просмотров
Бытует мнение, что диммируемые диодные лампы - суть лампы с простейшей схемой питания на гасящем конденсаторе и как следствие - с адскими пульсациями.
Ну, что же - заглянем кукле в животик:
IMG_20180322_100200+.jpg
IMG_20180322_100200+.jpg (319.08 КБ) 3859 просмотров
IMG_20180322_100332+.jpg
IMG_20180322_100332+.jpg (409.25 КБ) 3859 просмотров
Схемотехника весьма приличная (правда, что за микросхемка BJC7QA, выяснить не удалось), качество изготовления "нормальный Китай", выглядит надежно. Смутили только провода от выводов, слегка поджатые пластиной со светодиодами, а она же алюминиевая и с довольно острыми кромками.

Ну да ладно. Приступим, к основной программе.
Зачастую, производители диммируемых led ламп, требуют диммировать их по заднему фронту, а гауссы рассказывают, что можно использовать любой диммер, подходящий по мощности. Проверим? Проверим!
Беру в кладовке старый дешевый диммер, подключаю и удивляюсь! Запускается лампа процентов, думаю, с 10 от максимальной яркости, мерцания на глаз не заметно во всем диапазоне, регулировка плавная, на весь диапазон ручки диммера. Диммер не гудит. Убавить свечение, после того, как лампа "стартанула", можно почти до 0, но стартовать с 0 она не может, да и не уверен я, что ей это на здоровье. Бонусом - подсветка диммера неонкой, не вызывает вспышек в выключенном состоянии.
По поводу мерцания добавлю - при съемке на телефон пульсации можно заметить, но очень мягкие, субъективно - не более 5%. А при уменьшении яркости лампы примерно до 2/3 от максимума (и ниже) - пульсации исчезают вовсе.
Видео снял, но качество так себе. Если кому интересно - могу отправить почтой, сюда лень выкладывать. Может дома пересниму на нормальную камеру.

Планирую использовать эти лампы на диммируемых каналах MegaD-8I7O-SD. Под руками такового нет, но раз выходы симисторные, то диммируются они тоже по переднему фронту, как и то устройство, с которым я экспериментировал. Считаю, что если уж с простейшим диммером данные лампы себя хорошо показали, то и с "SD" результат не огорчит.

Хочу уточнить, что эта запись - ни разу не реклама. Просто отчет об эксперименте, с попавшей мне в руки лампой. Вдруг, кому полезно будет.
Последний раз редактировалось Ivanopulo 27 мар 2018, 12:33, всего редактировалось 1 раз.

Genplane
Сообщения: 36
Зарегистрирован: 04 авг 2016, 09:31
Откуда: Калининград

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

Сообщение Genplane » 23 мар 2018, 11:57

Andrey_B писал(а):
22 мар 2018, 12:12
Genplane, попробуйте. Прежде чем прописывать значение в поле "value"/Program для АЦП порта, тип указанного порта обязательно должен быть ADC.

https://ab-log.ru/files/File/megad-2561 ... a3-hex.zip
Спасибо, Андрей! Помогло!

Ответить