Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
https://www.ab-log.ru/forum/viewtopic.p ... 720#p36356
"OPT3001 требует инициализации, а значит обязательного выбора Dev: OPT3001"
Контроллер без явного указания не может знать, что висит на шине, а потому не может запускать процедуру инициализации определенных устройств, так как адреса устройств часто совпадают.
Нужно выбрать Dev: OPT3001 и использовать "cmd=get", а значение HTU21D получать с помощью запроса типа "?pt=35&scl=34&i2c_dev=htu21d". HTU21D не требует инициализации.
Для стандартизации можно добавить i2c_dev=opt3001, но практического смысла этот запрос иметь не будет.
В качестве альтернативы можно добавить функцию запуска инициализации внешним запросом, но не уверен, что в этом есть реальная необходимость.
"OPT3001 требует инициализации, а значит обязательного выбора Dev: OPT3001"
Контроллер без явного указания не может знать, что висит на шине, а потому не может запускать процедуру инициализации определенных устройств, так как адреса устройств часто совпадают.
Нужно выбрать Dev: OPT3001 и использовать "cmd=get", а значение HTU21D получать с помощью запроса типа "?pt=35&scl=34&i2c_dev=htu21d". HTU21D не требует инициализации.
Для стандартизации можно добавить i2c_dev=opt3001, но практического смысла этот запрос иметь не будет.
В качестве альтернативы можно добавить функцию запуска инициализации внешним запросом, но не уверен, что в этом есть реальная необходимость.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
https://ab-log.ru/files/File/megad-2561 ... a9-hex.zip
- Добавлена поддержка распространенного дисплея LCD1602 с I2C-интерфейсом (PCF8574T)
Настройка порта стандартная.
Для вывода текста применяется запрос вида
http://192.168.0.14/sec/?pt=31&text=test&col=0&row=0
где col и row - координаты (колонка, ряд), откуда выводить текст.
Также, как и в случае с SSD1306 пробелы кодируются символом "_".
Команда для очистки всего дисплея
http://192.168.0.14/sec/?pt=31&disp_cmd=1
Код, который это выводит.
Дисплей не работает от +3.3В. Ему необходимо напряжение +5В.
На дисплей в текущий момент нельзя вывести показания в автономном режиме (как на SSD1306). Только с помощью внешних запросов.
- Добавлена поддержка распространенного дисплея LCD1602 с I2C-интерфейсом (PCF8574T)
Настройка порта стандартная.
Для вывода текста применяется запрос вида
http://192.168.0.14/sec/?pt=31&text=test&col=0&row=0
где col и row - координаты (колонка, ряд), откуда выводить текст.
Также, как и в случае с SSD1306 пробелы кодируются символом "_".
Команда для очистки всего дисплея
http://192.168.0.14/sec/?pt=31&disp_cmd=1
Код, который это выводит.
Код: Выделить всё
<?php
file_get_contents("http://192.168.0.14/sec/?pt=33&disp_cmd=1");
file_get_contents("http://192.168.0.14/sec/?pt=33&text=T1:_23.4".chr(223));
file_get_contents("http://192.168.0.14/sec/?pt=33&text=H1:_54.7%&row=1");
?>
На дисплей в текущий момент нельзя вывести показания в автономном режиме (как на SSD1306). Только с помощью внешних запросов.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Добрый день!
Версия прошивки fw: 4.33b2
Пробую считать конфигурацию (v2.09)
megad-cfg-2561.exe --ip 192.168.0.16 --read-conf megad16.cfg -p sec
Reading configuration ... OK
Но файл не появляется в папке с программой, сканирование проходит успешно, по сети устройства видны
Версия прошивки fw: 4.33b2
Пробую считать конфигурацию (v2.09)
megad-cfg-2561.exe --ip 192.168.0.16 --read-conf megad16.cfg -p sec
Reading configuration ... OK
Но файл не появляется в папке с программой, сканирование проходит успешно, по сети устройства видны
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Илья, укажите полный путь к файлу. Пример.
megad-cfg-2561.exe --ip 192.168.0.16 --read-conf C:\Users\Nikname\Downloads\megad16.cfg -p sec
megad-cfg-2561.exe --ip 192.168.0.16 --read-conf C:\Users\Nikname\Downloads\megad16.cfg -p sec
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
мега 2561
версия (fw: 4.38b1)
статью "Перепрошивка MegaD-2561/328 по сети" вижу
адрес срвера http://192.123.4.111
адрес меги http://192.123.4.112
пигнуется
в меню модуля входит
подключал и через роутер и напрямую
никак не могу просто даже сделать скан устройств
php.exe megad-cfg-2561.php --scan
выдает ошибку
php.exe megad-cfg-2561.php --scan --local-ip 192.123.4.112
выдает ошибку
не пойму что дальше. подскажите
версия (fw: 4.38b1)
статью "Перепрошивка MegaD-2561/328 по сети" вижу
адрес срвера http://192.123.4.111
адрес меги http://192.123.4.112
пигнуется
в меню модуля входит
подключал и через роутер и напрямую
никак не могу просто даже сделать скан устройств
php.exe megad-cfg-2561.php --scan
выдает ошибку
php.exe megad-cfg-2561.php --scan --local-ip 192.123.4.112
выдает ошибку
не пойму что дальше. подскажите
- Вложения
-
- 3.jpg (31.92 КБ) 11099 просмотров
-
- 2.jpg (21.51 КБ) 11099 просмотров
-
- Joxi.jpg (148.67 КБ) 11099 просмотров
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
php.exe megad-cfg-2561.php --scan --local-ip 192.123.4.112
Указан IP-адрес Меги. Наверное, здесь должен быть IP-адрес компьютера, с которого производится прошивка.
Указан IP-адрес Меги. Наверное, здесь должен быть IP-адрес компьютера, с которого производится прошивка.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
php.exe megad-cfg-2561.php --scan --local-ip 192.123.4.111
- Вложения
-
- 5.jpg (41.12 КБ) 11081 просмотр
-
- Администратор
- Сообщения: 2187
- Зарегистрирован: 29 май 2015, 21:23
- Откуда: Екатеринбург, Нижний Тагил
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Начните с вот этого. У вас проблема с мультикастом (например, от телевидения или видеокамер или просто от настроек прошивки роутера), в таких условиях с прошивкой может ничего хорошего не получиться.
Для прямого подключения нужен кросс-кабель (и ручная настройка адресации IP).
Ещё один путь - использовать тупой свитч или хаб.
Пардон, увидел последнее сообщение. А с настройками ПХП всё в порядке?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
я не знаю верны ли настройки пхп
со вчерашнего дня пробовал все установить по инструкции Андрея.
но не знаю как проверить в итоге правильно или нет
если можете помочь проверить могу вас подключить.
я просто второй день сижу и незнаю что сделать.
со вчерашнего дня пробовал все установить по инструкции Андрея.
но не знаю как проверить в итоге правильно или нет
если можете помочь проверить могу вас подключить.
я просто второй день сижу и незнаю что сделать.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Коля, в инструкции есть такие строчки.
===
В файле php.ini (настройки PHP) необходимо найти и раскомментировать строчку extension=php_sockets.dll
При начальной установке PHP файла "php.ini" может не быть. В таком случае нужно найти файл вида "php.ini-production" и переименовать его в "php.ini".
===
Также можете попробовать скомпилированный в исполняемый файл скрипт. Также с указанием опции --local-ip.
===
В файле php.ini (настройки PHP) необходимо найти и раскомментировать строчку extension=php_sockets.dll
При начальной установке PHP файла "php.ini" может не быть. В таком случае нужно найти файл вида "php.ini-production" и переименовать его в "php.ini".
===
Также можете попробовать скомпилированный в исполняемый файл скрипт. Также с указанием опции --local-ip.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
было сделано
- Вложения
-
- 7.jpg (3.04 КБ) 11078 просмотров
-
- 6.jpg (42.02 КБ) 11078 просмотров
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Также можете попробовать скомпилированный в исполняемый файл скрипт. Также с указанием опции --local-ip.
Это про перепрошивку?
Это про перепрошивку?
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Ошибка "Call to undefined function socket_create()" указывает, что библиотека не подключена.
На диске может быть несколько php.ini. Необходимо убедиться, что редактируется нужный файл. Или указать путь к конфигурационному файлу напрямую через соответствующую опцию.
Это про все. Скомпилированный скрипт тот же самый + функция "визарда", если запускать его без ключей.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
спасибо за помощь. Вот начинаешь кого то просить и сам мозг работает быстрее. увидел что при переименовании php.ini он почему то встал php.ini.ini ....
в блокноте не увидел... подключил юлокнот++ для удобства, там сразу в шапке увидел
все заработало
в блокноте не увидел... подключил юлокнот++ для удобства, там сразу в шапке увидел
все заработало
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
https://ab-log.ru/files/File/megad-2561 ... a1-hex.zip
- Добавлена поддержка датчика BME680
Датчик BME680 отличается от уже поддерживаемых BMP180 и BMP280/BME280.
Помимо температуры, влажности и атмосферного давления BME680 может измерять так называемое "сопротивление газа" (gas resistance).
По мнению разработчиков BME680, чем ниже значение "сопротивления газа", тем "грязнее" воздух.
Внутри BME680 металлооксидный сенсор с нагревателем. По команде извне нагреватель включается на определенное время и BME680 измеряет сопротивление.
Разработчики в документации уверяют, что сенсор фиксирует повышение концентрации выдыхаемого человеком воздуха (b-VOC).
Все бы ничего, но есть целый ряд нюансов, значительно усложняющие использование датчика.
1. По умолчанию датчик находится в режиме "сна" (sleep mode). Для того, чтобы сделать одно измерение, нужно отправить команду (force mode). Длительность измерения 1 секунда! После того, как измерение произведено, датчик уходит в сон. Таким образом, в отличие от BME280, который отдает значения практически сразу, BME680 требуется очень много времени. В прошивке MegaD-2561 заложен такой алгоритм. Контроллер считывает из памяти датчика последние значения, а затем отправляет команду на новое измерение. Таким образом, чтобы получить актуальные значения на текущий момент, необходимо дважды опросить датчик с паузой в 1 секунду. По такому же алгоритму, к слову, работает DHT22 и DS18B20 (но MegaD-2561 самостоятельно отправляет такие команды раз в 5 секунд)
2. Присутствие нагревателя для датчика газа под одной крышкой с температурным сенсором естественно сказывается на показаниях температуры. И тем сильнее, чем чаще опрос датчика. Если опрашивать датчик раз в 5 минут, то BME680 отдает относительно правдивые значения температуры и влажности. Если раз в 1-5-10 секунд, то датчик может врать до нескольких градусов! Вместо 25 покажет, например 29.
3. Измерение сопротивление газа - весьма и весьма специфическая штука. Да, на коротком отрезке времени, очень хорошо прослеживается корреляция между показаниями сопротивления газа и "чистотой" воздуха. BME680 действительно реагирует на проветривание, на наличие рядом паров спирта или дышащего перегаром человека. Вместе с тем, присутствует много НО!
Показания "gas" - это такие "попугаи", которые зависят от массы факторов.
а) От настроек температурного профиля. В контроллере задано: нагрев до 320C в течение 150 мс. Такой профиль наиболее распространен.
б) От времени работы. Металлооксидный сенсор требуется "прожечь" в течение нескольких суток, чтобы он стабилизировал значения. И даже после этого в значениях будет дрейф, который должен калиброваться извне.
в) Самое неприятное. В документации никак не описано, как правильно считывать и интерпретировать значения сопротивления газа. Вместо этого разработчики подсовывают проприетарную, закрытую библиотеку BSEC (Bosch Sensortec Environmental Cluster), которая якобы содержит интеллектуальные алгоритмы, рассчитывающие так называемый индекс IAQ (Index for Air Quality). В Интернете есть много предположений и домыслов насчет того, как именно нужно считать этот индекс. Но никакой информации непосредственно от производителя нет.
Почему это важно. Дело в том, что при считывании сопротивления сенсора, скажем, раз в минуту, мы получим довольно неточные данные. Это ведь всего одно измерение с разовым включением нагревателя. Пользователи приходят к выводу, что для получения действительно актуального значения, нужно прожечь сенсор в течение 5 минут, отправляя команду "force mode" каждые 1-3 секунды, затем выбрать последние 50 значений и усреднить. И если однократное измерение "чистого" воздуха при указанном температурном профиле даст значение порядка 50-60кОм, то нагретый как следует сенсор покажет 300-500кОм. Где значения более 300кОм нужно интерпретировать как очень хороший воздух, а значения менее 10кОм, как очень плохой.
Однако такой режим делает невозможным корректное измерение температуры. Как я уже отметил, показания вырастут на несколько градусов.
Полезен ли такой девайс в домашней автоматизации - вопрос дискуссионный, особенно если учитывать, сколько памяти микроконтроллера традиционно требуется для реализации поддержки датчиков от Bosch, не говоря уже о BSEC.
Пользователи в Интернете отмечают, что в отличие от датчиков CO2, которые ведут себя предсказуемо и понятно, "попугаи" BME680 зачастую показывают на первый взгляд какую-то случайную картину.
- Добавлена поддержка датчика BME680
Датчик BME680 отличается от уже поддерживаемых BMP180 и BMP280/BME280.
Помимо температуры, влажности и атмосферного давления BME680 может измерять так называемое "сопротивление газа" (gas resistance).
По мнению разработчиков BME680, чем ниже значение "сопротивления газа", тем "грязнее" воздух.
Внутри BME680 металлооксидный сенсор с нагревателем. По команде извне нагреватель включается на определенное время и BME680 измеряет сопротивление.
Разработчики в документации уверяют, что сенсор фиксирует повышение концентрации выдыхаемого человеком воздуха (b-VOC).
Все бы ничего, но есть целый ряд нюансов, значительно усложняющие использование датчика.
1. По умолчанию датчик находится в режиме "сна" (sleep mode). Для того, чтобы сделать одно измерение, нужно отправить команду (force mode). Длительность измерения 1 секунда! После того, как измерение произведено, датчик уходит в сон. Таким образом, в отличие от BME280, который отдает значения практически сразу, BME680 требуется очень много времени. В прошивке MegaD-2561 заложен такой алгоритм. Контроллер считывает из памяти датчика последние значения, а затем отправляет команду на новое измерение. Таким образом, чтобы получить актуальные значения на текущий момент, необходимо дважды опросить датчик с паузой в 1 секунду. По такому же алгоритму, к слову, работает DHT22 и DS18B20 (но MegaD-2561 самостоятельно отправляет такие команды раз в 5 секунд)
2. Присутствие нагревателя для датчика газа под одной крышкой с температурным сенсором естественно сказывается на показаниях температуры. И тем сильнее, чем чаще опрос датчика. Если опрашивать датчик раз в 5 минут, то BME680 отдает относительно правдивые значения температуры и влажности. Если раз в 1-5-10 секунд, то датчик может врать до нескольких градусов! Вместо 25 покажет, например 29.
3. Измерение сопротивление газа - весьма и весьма специфическая штука. Да, на коротком отрезке времени, очень хорошо прослеживается корреляция между показаниями сопротивления газа и "чистотой" воздуха. BME680 действительно реагирует на проветривание, на наличие рядом паров спирта или дышащего перегаром человека. Вместе с тем, присутствует много НО!
Показания "gas" - это такие "попугаи", которые зависят от массы факторов.
а) От настроек температурного профиля. В контроллере задано: нагрев до 320C в течение 150 мс. Такой профиль наиболее распространен.
б) От времени работы. Металлооксидный сенсор требуется "прожечь" в течение нескольких суток, чтобы он стабилизировал значения. И даже после этого в значениях будет дрейф, который должен калиброваться извне.
в) Самое неприятное. В документации никак не описано, как правильно считывать и интерпретировать значения сопротивления газа. Вместо этого разработчики подсовывают проприетарную, закрытую библиотеку BSEC (Bosch Sensortec Environmental Cluster), которая якобы содержит интеллектуальные алгоритмы, рассчитывающие так называемый индекс IAQ (Index for Air Quality). В Интернете есть много предположений и домыслов насчет того, как именно нужно считать этот индекс. Но никакой информации непосредственно от производителя нет.
Почему это важно. Дело в том, что при считывании сопротивления сенсора, скажем, раз в минуту, мы получим довольно неточные данные. Это ведь всего одно измерение с разовым включением нагревателя. Пользователи приходят к выводу, что для получения действительно актуального значения, нужно прожечь сенсор в течение 5 минут, отправляя команду "force mode" каждые 1-3 секунды, затем выбрать последние 50 значений и усреднить. И если однократное измерение "чистого" воздуха при указанном температурном профиле даст значение порядка 50-60кОм, то нагретый как следует сенсор покажет 300-500кОм. Где значения более 300кОм нужно интерпретировать как очень хороший воздух, а значения менее 10кОм, как очень плохой.
Однако такой режим делает невозможным корректное измерение температуры. Как я уже отметил, показания вырастут на несколько градусов.
Полезен ли такой девайс в домашней автоматизации - вопрос дискуссионный, особенно если учитывать, сколько памяти микроконтроллера традиционно требуется для реализации поддержки датчиков от Bosch, не говоря уже о BSEC.
Пользователи в Интернете отмечают, что в отличие от датчиков CO2, которые ведут себя предсказуемо и понятно, "попугаи" BME680 зачастую показывают на первый взгляд какую-то случайную картину.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Андрей хотелось бы предупредить по прошивке
Я усиленно занимаюсь подключением в мажордомо управлением в котельной на работе
попутно хотел поучится загружать прошивки
использовал вот это описание
https://www.php.net/manual/ru/install.w ... manual.php
прошивку то накатил
а дальше хуже
так вот если кто поставит себе IIS, то с мажордомо можно попращаться..
мажордомо потерял все связи с кнопками датчиками и тп и не запускался по своим ip адресам.
по ним запускался IIS
сегодня весь день с 8 утра потратил на поиск на просторах интернет полного отключения IIS
и попытки исправить ситуацию... в итоге ноль .
сейчас полностью переустанавливаю систему и мажордомо...
либо хотябы пусть все думают об этом или хотелось бы найти решение.
Я усиленно занимаюсь подключением в мажордомо управлением в котельной на работе
попутно хотел поучится загружать прошивки
использовал вот это описание
https://www.php.net/manual/ru/install.w ... manual.php
прошивку то накатил
а дальше хуже
так вот если кто поставит себе IIS, то с мажордомо можно попращаться..
мажордомо потерял все связи с кнопками датчиками и тп и не запускался по своим ip адресам.
по ним запускался IIS
сегодня весь день с 8 утра потратил на поиск на просторах интернет полного отключения IIS
и попытки исправить ситуацию... в итоге ноль .
сейчас полностью переустанавливаю систему и мажордомо...
либо хотябы пусть все думают об этом или хотелось бы найти решение.
-
- Администратор
- Сообщения: 2187
- Зарегистрирован: 29 май 2015, 21:23
- Откуда: Екатеринбург, Нижний Тагил
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Я, когда подбирал сенсоры для наших комбинированных датчиков, перепробовал все доступные на рынке варианты, в том числе и BME680. И пришёл к аналогичным выводам. Ни один чисто кремниевый метод, из опробованных мной, не позволяет адекватно оценивать степень необходимости проветривания, только NDIR.
Есть, конечно, сенсоры получше T6703 или S8, но только ещё более дорогие. Например, двухкамерные.
И среди NDIR, кстати, есть не очень удачные варианты. Тот же MH-Z19, который у Вайренборда в последнем комбинированном датчике стоит. Причём, в предыдущей версии их датчика (который тоже у меня есть), стоял ещё более ужасный NDIR из славного города Уханя.
Это было последней каплей в решении сделать свой комбинированный датчик.
Если по теме развития прошивки, то есть предложение вернуться к вопросу о периодическом опросе сенсоров с заданным интервалом в минутах и публикацией результатов в MQTT.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Думаю, это возможно. Посмотрю, что можно сделать.d.v.ermakov писал(а): ↑27 окт 2019, 19:09Если по теме развития прошивки, то есть предложение вернуться к вопросу о периодическом опросе сенсоров с заданным интервалом в минутах и публикацией результатов в MQTT.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
Для обновления прошивки вообще не нужен IIS, Apache или другой Web-сервер. Нужен только интерпретатор, который даже не требуется устанавливать. Достаточно скачать и распаковать архив.
Указанную ссылку из инструкции по обновлению убрал, так как она стала вести на совершенно иную страницу.
Для пользователей Windows, вероятно, удобнее использовать скомпилированный в EXE скрипт. Тогда ничего дополнительно скачивать не потребуется.
Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)
По датчику BME680 так же встает вопрос о его сроке службы. Естественно, все зависит насколько его мучать, но дачики подобного принципа в среднем работают корректно года 3, если речь идет о металло-оксидном датчике. Можете поправить если чего не так:)