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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Ruslan
Сообщения: 583
Зарегистрирован: 06 янв 2014, 20:44

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

Сообщение Ruslan » 26 янв 2019, 18:08

Изучаю диммирование с помощью управления ШИМ-портом. С порта P10 ШИМ-сигнал подается на соответствующую ножку микросхемы L298N. В качестве нагрузки подключена лампочка на 12 В. Все диммируется как положено.

Но заметил вот какую странность. После подачи питания на Мегу, когда она (Мега) загружается, в течение, примерно, 5 секунд лампочка загорается, потом (по окончании загрузки Меги) -- гаснет. Прошивка последняя (4.32 beta1). Кстати, на предыдущей прошивке (4.31 beta8) было то же самое.
Покажу настройку ШИМ-порта:
CropImage.png
Настройка ШИМ-порта
CropImage.png (7.6 КБ) 793 просмотра
Это так и должно быть (такое поведение)?

Сразу скажу, что Мега отсоединена от сети, а все остальные порты переведены в состояние NC.

Andry
Сообщения: 191
Зарегистрирован: 23 мар 2017, 10:41

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

Сообщение Andry » 26 янв 2019, 21:07

Default 1 и будет наоборот.

Burst
Сообщения: 92
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 26 янв 2019, 21:57

Нашел в чем проблема, обошелся пока без flash(). Мега видимо не все заголовки переваривает, возможно есть ограничения по длине?
Когда сервер отвечает Меге вот с таким заголовком:

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

       HTTP/1.1 200 OK
        Date: Sat, 26 Jan 2019 17:43:52 GMT
        Server: Apache/2.4.29 (Ubuntu)
        Content-Length: 9
        Content-Type: text/html; charset=UTF-8
то она считает что сервер живой и действия в поле Act не выполняет. А вот когда на сервере настроены некоторые элементы безопасности, заголовок дополняется и Мега считает что сервер сдох и выполняет действия в Act, хотя HTTP код приходит тоже 200

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

        HTTP/1.1 200 OK
        Date: Sat, 26 Jan 2019 17:48:37 GMT
        Server: Apache/2.4.29 (Ubuntu)
        Strict-Transport-Security: max-age=63072000; includeSubdomains
        X-Frame-Options: DENY
        X-Content-Type-Options: nosniff
        Content-Length: 9
        Content-Type: text/html; charset=UTF-8

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

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

Сообщение Ruslan » 27 янв 2019, 01:28

Andry писал(а):
26 янв 2019, 21:07
Default 1 и будет наоборот.
А вот и не наоборот. Поставил Default =30 (чтобы яркость была небольшой). При старте Меги все равно включается на полную яркость, а через 5 секунд (по окончании загрузки контроллера) переходит на положенные по дефолту 30.

В любом случае нехорошо, когда когда, допустим, весь диммируемый свет в доме будет вспыхивать при старте Меги.
Прошивку обновлял с очисткой EEPROM. Ни в каких входах поле Act не заполнено...
Если это важно, исп.модуль MegaD-14-IN.

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

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

Сообщение Andrey_B » 27 янв 2019, 10:51

Ruslan писал(а):
26 янв 2019, 18:08
С порта P10 ШИМ-сигнал подается на соответствующую ножку микросхемы L298N. В качестве нагрузки подключена лампочка на 12 В. Все диммируется как положено. Но заметил вот какую странность. После подачи питания на Мегу, когда она (Мега) загружается, в течение, примерно, 5 секунд лампочка загорается, потом (по окончании загрузки Меги) -- гаснет.
Этот эффект проявляется в том случае, когда L298N подключается к порту MegaD-14-IN в режиме "цифрового входа". И связан он с наличием не отключаемой подтяжки. В момент включения контроллера и в течение времени, когда работает загрузчик, порт не сконфигурирован как OUT/PWM и цифровая подтяжка меняет логический уровень на выходе, что и проявляется в виде включения нагрузки.
Вот почему в новом MegaD-14-IOR, который пришел на замену MegaD-14-IN, была реализована возможность отключения цифровой подтяжки. Подробнее об этом написано здесь. В разделе "Отличие №4" вы найдете точное описание вашей ситуации.

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

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

Сообщение Ruslan » 27 янв 2019, 10:57

Andrey_B писал(а):
27 янв 2019, 10:51
... Подробнее об этом написано здесь. В разделе "Отличие №4" вы найдете точное описание вашей ситуации.
Спасибо за разъяснения!

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

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

Сообщение Andrey_B » 27 янв 2019, 11:26

Burst писал(а):
26 янв 2019, 21:57
А вот когда на сервере настроены некоторые элементы безопасности, заголовок дополняется и Мега считает что сервер сдох и выполняет действия в Act, хотя HTTP код приходит тоже 200
А зачем домашнему серверу эти сомнительные "элементы безопасности" в виде заголовков типа "nosniff"? Это как надпись "совершенно секретно", только привлекающая внимание?
Что касается проблемы, то прошивка считает, что размер пакета с ответом сервера, включая заголовки, не должен превышать 220 байт. Все эти заголовки контроллеру не нужны. Чем меньше пакет, тем выше производительность. Ваш пакет получался больше. Увеличил этот лимит на 100 байт. Теперь контроллер должен переваривать ваши массивные заголовки.
https://ab-log.ru/files/File/megad-2561 ... a2-hex.zip
Да, насчет "charset=UTF-8". В пакете не должно быть UTF-8 BOM.

Burst
Сообщения: 92
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 27 янв 2019, 23:51

Andrey_B писал(а):
27 янв 2019, 11:26
Что касается проблемы, то прошивка считает, что размер пакета с ответом сервера, включая заголовки, не должен превышать 220 байт. Все эти заголовки контроллеру не нужны. Чем меньше пакет, тем выше производительность. Ваш пакет получался больше. Увеличил этот лимит на 100 байт. Теперь контроллер должен переваривать ваши массивные заголовки.
https://ab-log.ru/files/File/megad-2561 ... a2-hex.zip
Да, насчет "charset=UTF-8". В пакете не должно быть UTF-8 BOM.
Спасибо, теперь работает и с большим и с маленьким заголовком.
Чтобы оптимизировать заголовки HTTP подниму для Меги отдельный виртуальный сервер, на нем уже весь мусор уберу.

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

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

Сообщение Prokol » 28 янв 2019, 13:07

После обновления версии прошивки 4.29b9 до последней перестал работать датчик BMx280. Не определяется и показания все 0. Откатил версию. Все равно не работает. Сброс настроек делал в обоих случаях. Что может быть?

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

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

Сообщение Andrey_B » 28 янв 2019, 13:14

Если scan датчик не находит, то скорее всего дело не в прошивке. Нужно проверять соединения, подключения.
Если scan датчик находит и он висит на одной шине с другими I2C-устройствами, то нужно хотя бы один раз настроить порт на работу с BMx280, чтобы контроллер считал и сохранил калибровочные коэффициенты.

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

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

Сообщение Prokol » 28 янв 2019, 13:45

Скан не находит. Соединения не трогались. Проверял соединения после этого несколько раз. Произошло именно после обновления. На шине висит только один датчик.
Поменял порты, заработал. Проблема с портами?

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

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

Сообщение Andrey_B » 28 янв 2019, 14:09

Я могу рассуждать только рационально. Процесс перепрошивки никак даже теоретически не способен повлиять на работоспособность портов.
Сохраните настройки контроллера, временно полностью очистите EEPROM и настройте прежние порты SCL/SDA вручную. Если это помогает, значит дело только в настройках или в процессе записи сохраненных настроек.

Burst
Сообщения: 92
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 29 янв 2019, 19:35

HTU21D при влажности на улице больше 93.5 стал показывать вот такую влажность:

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

temp:-4.20/hum:118.98
Когда датчик отваливается полностью, понятно что показывает:

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

temp:128.85/hum:118.98
но разве может датчик влажность отвалиться независимо от температуры, они разве не интегрированы?..

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

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

Сообщение Andrey_B » 29 янв 2019, 19:51

Раз показывает, значит может. ;)
Чтение температуры и влажности происходит из разных регистров и разными запросами. Что датчик возвращает, а точнее, какие сигналы присутствуют на линии, то контроллер и отображает.
Можно сделать, чтобы вместо 128.85 и 118.98 отображалось NA. А эта ситуация в свою очередь может корректно обрабатываться сервером.

Burst
Сообщения: 92
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 29 янв 2019, 19:56

Это не критично, я все что больше 100% влажности все равно программно на сервере отбрасываю, как некорректные значения. Но что это фактически значит: "датчик помер и его нужно заменить" или "проверьте линию связи до датчика"? Температуру то корректно показывает...

Судя по отсчетам он сначала приблизился к 100% влажности, потом пересек планку и его прибило к верхнему пределу:

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

  93.61 	 2019-01-29 13:40:02 
  93.63 	 2019-01-29 13:41:01 
  97.75 	 2019-01-29 13:42:02 
   99.3 	 2019-01-29 13:43:02 
   99.9 	 2019-01-29 13:44:01 
 102.97 	 2019-01-29 13:45:01 
 101.35 	 2019-01-29 13:46:01 
 101.78 	 2019-01-29 13:47:02 
 102.05 	 2019-01-29 13:48:02 
 102.23 	 2019-01-29 13:49:01 
 102.37 	 2019-01-29 13:50:02 
  102.7 	 2019-01-29 13:51:01 
 102.78 	 2019-01-29 13:52:02 
 102.86 	 2019-01-29 13:53:01 
 103.01 	 2019-01-29 13:54:02 
 103.18 	 2019-01-29 13:55:02 
 103.38 	 2019-01-29 13:56:02 
 103.42 	 2019-01-29 13:57:02 
 103.52 	 2019-01-29 13:58:01 
 103.57 	 2019-01-29 13:59:02 
 103.68 	 2019-01-29 14:00:02 
 103.76 	 2019-01-29 14:01:02 
  103.9 	 2019-01-29 14:02:01 
 103.97 	 2019-01-29 14:03:02 
 104.32 	 2019-01-29 14:04:02 
 118.98 	 2019-01-29 14:05:01 
 118.98 	 2019-01-29 14:06:02 

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

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

Сообщение Andrey_B » 29 янв 2019, 20:06

Burst писал(а):
29 янв 2019, 19:56
Но что это фактически значит: "датчик помер и его нужно заменить" или "проверьте линию связи до датчика"? Температуру то корректно показывает...
Трудно сказать. Я не сталкивался с выходом из строя датчиков HTU21D. При использовании внутри помещений эти сенсоры показали себя с лучшей стороны. Но на улице их не использовал.
Когда не отображается влажность, но отображается температура - это можно понять. Ведь относительная влажность рассчитывается исходя из значения температуры.
А если бы было наоборот, вот тогда было бы действительно странно. Если датчик у вас на улице, я бы демонтировал его, высушил, проверил на предмет коррозий, при необходимости почистил. Может, заработает снова.

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

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

Сообщение Andrey_B » 29 янв 2019, 20:10

Burst писал(а):
29 янв 2019, 19:56
Судя по отсчетам он сначала приблизился к 100% влажности, потом пересек планку и его прибило к верхнему пределу
Кстати, значение относительной влажности действительно может превышать 100%.
Такие условия еще называют "перенасыщением" воздуха влагой.
Значение 104.32 я бы назвал нормальным, а вот 118.98 - уже "NA" ;)

Burst
Сообщения: 92
Зарегистрирован: 25 янв 2018, 13:22
Откуда: Балашиха

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

Сообщение Burst » 29 янв 2019, 21:02

Следующим этапом за перенасыщением идёт конденсация, так что он может быть весь инеем покрылся :)
Попробую в параллель поставить BME280, буду сравнивать показания.

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

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

Сообщение Andrey_B » 29 янв 2019, 21:17

Думаю, для уличного использования больше подходит HTU21D-F c PTFE-фильтром.
"Optional PTFE filter/membrane (F) protects HTU21D digital humidity sensors against dust and water immersion..."
К сожалению от инея или конденсата в этом смысле сенсор без фильтра не защитит экран Стивенсона (метеорологическая будка).
Любопытно, что в моей китайской метеостанции, которую я поставил еще в 2011 году отказало все, кроме датчика влажности... Показывает сейчас 65% при температуре -9,43. Я даже батарейки уже 2 года не меняю, все жду когда совсем накроется.

zidky
Сообщения: 106
Зарегистрирован: 19 авг 2018, 03:42

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

Сообщение zidky » 30 янв 2019, 15:09

Burst писал(а):
25 янв 2019, 18:08
"HTTP/1.1 200 OK Content-Type: text/htm "
После долгих тестов оставил такой заголовок от сервера если ничего в ответ не передаем:
"HTTP/1.1 200 OK
Server: nginx/1.2.1
Content-Type: text/html
Content-Length: 0


"
Попробуйте, может проблема уйдет.
Последний раз редактировалось zidky 30 янв 2019, 15:15, всего редактировалось 2 раза.

Ответить