Прошивка MegaD-328 (релизы, обсуждения, предложения)
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Добрый вечер, в прошивке 3.41 обнаружился баг, проявляется в виде пустой страницы с надписью Done при переключении выхода через вебморду меги.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Спасибо, работает!
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Здравствуйте!
А что, mode для DHT11/22 нету?
Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
А что, mode для DHT11/22 нету?
Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Действительно "автономного" режима для DHT11/22 в последней версии прошивки 3.42 нет.
Есть только для АЦП и DS18B20. Я посмотрю, можно ли что-то придумать по этому поводу.
Есть только для АЦП и DS18B20. Я посмотрю, можно ли что-то придумать по этому поводу.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
добрый день, может быть пригодится
модуль для формирования временных интервалов, без использования блокирующих задержек, для mega8, путем несложных манипуляций может быть переделан на любой другой, для формирования задержек используется 8-bit Timer/Counter0 , для работы необходимо включить файлы Tick.c и Tick.h , объявить в Tick.h макрос #define GetPeripheralClock_х() где х частота контроллера определены частоты 7,8,12,16 мгц для остальных частот нужно произвести расчет
инициализировать модуль таймера вызовом TickInit()
необходимо так же поменять
что бы получить задежку объявите переменную типа unsigned long int х
затем сделайте
if(TickGet() - t > TICK_SECOND)
{
t = TickGet();
// раз в секунду будет исполнятся этот код
}
if(TickGet() - t > TICK_SECOND/2) пол секунды
if(TickGet() - t > TICK_SECOND/4) четверть
if(TickGet() - t > TICK_SECOND*2) 2 секунды
вся работа с реальными регистрами реализована через макросы в Tick.h
модуль для формирования временных интервалов, без использования блокирующих задержек, для mega8, путем несложных манипуляций может быть переделан на любой другой, для формирования задержек используется 8-bit Timer/Counter0 , для работы необходимо включить файлы Tick.c и Tick.h , объявить в Tick.h макрос #define GetPeripheralClock_х() где х частота контроллера определены частоты 7,8,12,16 мгц для остальных частот нужно произвести расчет
инициализировать модуль таймера вызовом TickInit()
необходимо так же поменять
на формат принятый в WinAvrinterrupt [TIM0_OVF] void timer0_ovf_isr(void)
что бы получить задежку объявите переменную типа unsigned long int х
затем сделайте
if(TickGet() - t > TICK_SECOND)
{
t = TickGet();
// раз в секунду будет исполнятся этот код
}
if(TickGet() - t > TICK_SECOND/2) пол секунды
if(TickGet() - t > TICK_SECOND/4) четверть
if(TickGet() - t > TICK_SECOND*2) 2 секунды
вся работа с реальными регистрами реализована через макросы в Tick.h
- Вложения
-
- delay.rar
- (861 байт) 180 скачиваний
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
ИМХО Показометра достаточно, а вытяжкой в ванной лучше управлять так:clark2 писал(а):Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
Включение, если влажность растет быстрее, чем 5% за 3 секунды.
Выключение, если точка росы опускается ниже 18 градусов летом и 15 зимой.
Выключение на всякий случай, если время работы вентилятора более 2 часов, но ни разу такого не было...
Мега такого сделать не сможет, поэтому лучше возложить этот алгоритм на сервер. У меня он работает второй год, сбоев нет, атмосфера в ванной всегда хорошая.
Дело в том, что начальная влажность воздуха может быть и 30% и 90% - какой порог ставить? Или вентилятор будет молотить бесконечно?
-
- Сообщения: 651
- Зарегистрирован: 16 фев 2016, 19:52
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Прошу прощения за офтоп. По поводу вытяжки. Релейная мега может вытяжкой (канальный вентилято 150вт - 500вт) управлять напрямую или лучше через какое нибудь реле?THK писал(а):ИМХО Показометра достаточно, а вытяжкой в ванной лучше управлять так:clark2 писал(а):Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
Включение, если влажность растет быстрее, чем 5% за 3 секунды.
Выключение, если точка росы опускается ниже 18 градусов летом и 15 зимой.
Выключение на всякий случай, если время работы вентилятора более 2 часов, но ни разу такого не было...
Мега такого сделать не сможет, поэтому лучше возложить этот алгоритм на сервер. У меня он работает второй год, сбоев нет, атмосфера в ванной всегда хорошая.
Дело в том, что начальная влажность воздуха может быть и 30% и 90% - какой порог ставить? Или вентилятор будет молотить бесконечно?
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
OlegJktu84, думаю, можно напрямую.
По поводу DHT*. Во-первых, полностью согласен с Виктором. Во-вторых, автономный режим, как у АЦП или DS18B20, имеет только одно поле Val. В частности для DHT* требуется минимум два (температура и влажность), а это невозможно. В третьих процесс инициализации DHT11 включает в себя задержку 18 мс (лучше вообще отказаться от использования этих датчиков совместно с кнопками). Решение этой проблемы снова потребует памяти, хотя и не очень много. Но конкретно на DHT11 ее жалко. У DHT22 задержка значительно меньше и практически не влияет на работу устройства.
По поводу DHT*. Во-первых, полностью согласен с Виктором. Во-вторых, автономный режим, как у АЦП или DS18B20, имеет только одно поле Val. В частности для DHT* требуется минимум два (температура и влажность), а это невозможно. В третьих процесс инициализации DHT11 включает в себя задержку 18 мс (лучше вообще отказаться от использования этих датчиков совместно с кнопками). Решение этой проблемы снова потребует памяти, хотя и не очень много. Но конкретно на DHT11 ее жалко. У DHT22 задержка значительно меньше и практически не влияет на работу устройства.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Точно сказать не могу, скорее всего может. У меня были самодельные меги, но я их заменил на один контроллер Wago и сейчас он всем рулит. Описанный алгоритм тоже на нем крутится, а сервер только для сбора статистики...OlegJktu84 писал(а):По поводу вытяжки. Релейная мега может вытяжкой (канальный вентилято 150вт - 500вт) управлять напрямую или лучше через какое нибудь реле?
Думаю Андрей ответит на этот вопрос лучше.
-
- Администратор
- Сообщения: 2188
- Зарегистрирован: 29 май 2015, 21:23
- Откуда: Екатеринбург, Нижний Тагил
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
ТНК, спасибо за алгоритм, а то я себе уже всю голову об это сломал.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Кому не сложно,
напишите подробную инструкцию для прошивки меги через ISP-программатор,
возможно ли его сделать из ардуинки мега2560 и как?
Спасибо.
напишите подробную инструкцию для прошивки меги через ISP-программатор,
возможно ли его сделать из ардуинки мега2560 и как?
Спасибо.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Прошивка для MegaD-328 не будет работать с atmega2560 без переделки.
Инструкция зависит и от типа программатора и, главным образом, от программы для прошивки.
Например, в Linux при использовании программатора AVR ISP MkII это делается очень просто:
avrdude -c avrispmkII -P usb -p m328p -e -U flash:w:megad-328.hex
Замечу, что распиновка разъема для программатора соответствует ARV ISP MkII от фирмы Atmel.
Инструкция зависит и от типа программатора и, главным образом, от программы для прошивки.
Например, в Linux при использовании программатора AVR ISP MkII это делается очень просто:
avrdude -c avrispmkII -P usb -p m328p -e -U flash:w:megad-328.hex
Замечу, что распиновка разъема для программатора соответствует ARV ISP MkII от фирмы Atmel.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Программатор для AVR можно сделать из любой ардуины. У меня например он из UNO сделан. Принцип у всех один и тот-же (ноги одни и те-же), за исключением RESET.Lewcom писал(а):Кому не сложно,
ISP-программатор,
возможно ли его сделать из ардуинки мега2560 и как?
Спасибо.
Вот например как сделать из UNO https://geektimes.ru/post/257322/
Используются 6 выводов: MISO, MOSI, SCK, RESET, GND и для питания прошиваемого проца VCC. Я подключаю чуть не так, как указано на приведенной странице, а 5 проводков вставляю в разъем ICSP (у Вас он находится рядом с процессором), за исключением вывода RESET и шестой провод подключаете по описанию скетча для прошивки адруины в качестве программатора для 2560, к той ноге, которая там указана для RESET или какой укажите сами. Конденсатор я не подключаю. Шьется и без него нормально. Вот распиновка ICSP разъема http://arduino.ru/sites/default/files/u ... pinout.png
Andrey_B, начал эксперименты с одноклавишным диммированием. Нашел некоторые неудобства и глюки:
1. Изменения аркости с помощью клавиши не отображается в веб интерфейсе MegaD, т.е. они там не изменяются в окне PWM.
2. Срабатывание на длинное нажатие происходит как-то непонятно. При минимальной яркости свет чуть-чуть включается, а далее никаких изменений. При максимальной яркости никак не реагирует или вероятно реагирует так-же как и при минимальной яркости, но это определить практически невозможно.
3. При коротких нажатиях происходит срабатывание приблизительно через 1 сек, а не сразу.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Теоретически это возможно. Проверю.Prokol писал(а):1. Изменения аркости с помощью клавиши не отображается в веб интерфейсе MegaD, т.е. они там не изменяются в окне PWM.
Версия прошивки последняя? Что используется в качестве исполнительного модуля? Что используется в качестве лампы?Prokol писал(а):2. Срабатывание на длинное нажатие происходит как-то непонятно. При минимальной яркости свет чуть-чуть включается, а далее никаких изменений. При максимальной яркости никак не реагирует или вероятно реагирует так-же как и при минимальной яркости, но это определить практически невозможно.
При коротких нажатиях реакция наступает при "отжатии" кнопки, иначе невозможно было бы отличить короткое нажатие от длинного. Может быть, вы с этим путаете? Попробуйте очень быстро нажать и отжать кнопку.Prokol писал(а):3. При коротких нажатиях происходит срабатывание приблизительно через 1 сек, а не сразу.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Извиняюсь за проблемы.
Поставил на виртуалку Убунту, нашел Мегу- восстановил IP, поработал немного,
решил обновить прошивку (у мена мега 5.1) и ...
php megad-cfg.php --ip 192.168.2.14 -p sec -w
Downloading firmware... OK
Connecting... OK
Checking firmware... OK
Erasing firmware... OK
Writing firmware...
через 10 минут не выдержал
решил восстановить...
php megad-cfg.php -w -f -e
Downloading firmware... OK
Connecting... OK
Checking firmware... OK
Erasing firmware... OK
Writing firmware...
приблизительно каждые 20 секунд лан индикаторы меги активно мигают,
а между 2 или 3 раза...
через пол часа не выдержал - пишу сюда.
Выручайте!
Поставил на виртуалку Убунту, нашел Мегу- восстановил IP, поработал немного,
решил обновить прошивку (у мена мега 5.1) и ...
php megad-cfg.php --ip 192.168.2.14 -p sec -w
Downloading firmware... OK
Connecting... OK
Checking firmware... OK
Erasing firmware... OK
Writing firmware...
через 10 минут не выдержал
решил восстановить...
php megad-cfg.php -w -f -e
Downloading firmware... OK
Connecting... OK
Checking firmware... OK
Erasing firmware... OK
Writing firmware...
приблизительно каждые 20 секунд лан индикаторы меги активно мигают,
а между 2 или 3 раза...
через пол часа не выдержал - пишу сюда.
Выручайте!
-
- Сообщения: 400
- Зарегистрирован: 21 сен 2013, 00:38
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Обновляешь из-под виртуалки?
как там между виртуалкой и реальностью, брандмауеров, антивирей всяких нет?
Лучше всего напрямую из системы, да ещё и не через wifi связываться с сетью, в которой мега, а проводом.А в идеале - через тупой хаб/свитч, не роутер.
как там между виртуалкой и реальностью, брандмауеров, антивирей всяких нет?
Лучше всего напрямую из системы, да ещё и не через wifi связываться с сетью, в которой мега, а проводом.А в идеале - через тупой хаб/свитч, не роутер.
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Сори
Zyxel ES-108A
я до последнего не верил
...но все таки проблема в нем.
Без него обновил, прошил.
Еще раз извините
Zyxel ES-108A
я до последнего не верил
...но все таки проблема в нем.
Без него обновил, прошил.
Еще раз извините
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
Здравствуйте!
Прошивка 3.42
DSen 1W температуру показывает.
При установке любого Mode (>, <, <>) действие, прописаное в Act при сохранении/перезагрузке сразу срабатывает (например 0:2 сразу включает).
Также действие прописанное в Act начинает циклически выполняться (переключает по команде 0:2) если значение температуры превышает установленное в Val. При этом сама температура показывает 0.00.
Если температура падает ниже установленного в Val - температуру начинает показывать (команда 0:2 остается включеной).
Прошивка или у меня что не так?
Прошивка 3.42
DSen 1W температуру показывает.
При установке любого Mode (>, <, <>) действие, прописаное в Act при сохранении/перезагрузке сразу срабатывает (например 0:2 сразу включает).
Также действие прописанное в Act начинает циклически выполняться (переключает по команде 0:2) если значение температуры превышает установленное в Val. При этом сама температура показывает 0.00.
Если температура падает ниже установленного в Val - температуру начинает показывать (команда 0:2 остается включеной).
Прошивка или у меня что не так?
Re: Прошивка MegaD-328 (релизы, обсуждения, предложения)
clark2, проблему сброса температуры в 0.00 вроде бы поправил. Возможно, это решит и все другие описанные вами проблемы.
http://ab-log.ru/files/File/ip_manager3 ... a2-hex.zip
Проверьте. А что касается выполнения сценария после перезагрузки, то если текущее значение 26, а стоит >25, то сценарий после перезагрузки выполнится.
http://ab-log.ru/files/File/ip_manager3 ... a2-hex.zip
Проверьте. А что касается выполнения сценария после перезагрузки, то если текущее значение 26, а стоит >25, то сценарий после перезагрузки выполнится.