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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
avtomat78
Сообщения: 92
Зарегистрирован: 06 фев 2015, 19:02

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

Сообщение avtomat78 » 19 фев 2016, 00:13

Добрый вечер, в прошивке 3.41 обнаружился баг, проявляется в виде пустой страницы с надписью Done при переключении выхода через вебморду меги.

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

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

Сообщение Andrey_B » 19 фев 2016, 11:19


avtomat78
Сообщения: 92
Зарегистрирован: 06 фев 2015, 19:02

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

Сообщение avtomat78 » 19 фев 2016, 13:52

Andrey_B писал(а):avtomat78, поправил.

http://ab-log.ru/files/File/ip_manager3 ... 28_342.zip
Спасибо, работает!

clark2
Сообщения: 67
Зарегистрирован: 11 авг 2012, 00:17
Откуда: Kiev region

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

Сообщение clark2 » 19 фев 2016, 23:30

Здравствуйте!
А что, mode для DHT11/22 нету?
Думал вытяжку в ванной подключить, а оказывается нету, только показометер.

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

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

Сообщение Andrey_B » 19 фев 2016, 23:35

Действительно "автономного" режима для DHT11/22 в последней версии прошивки 3.42 нет.
Есть только для АЦП и DS18B20. Я посмотрю, можно ли что-то придумать по этому поводу.

alexsis_76

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

Сообщение alexsis_76 » 20 фев 2016, 11:34

добрый день, может быть пригодится
модуль для формирования временных интервалов, без использования блокирующих задержек, для mega8, путем несложных манипуляций может быть переделан на любой другой, для формирования задержек используется 8-bit Timer/Counter0 , для работы необходимо включить файлы Tick.c и Tick.h , объявить в Tick.h макрос #define GetPeripheralClock_х() где х частота контроллера определены частоты 7,8,12,16 мгц для остальных частот нужно произвести расчет
инициализировать модуль таймера вызовом TickInit()
необходимо так же поменять
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
на формат принятый в WinAvr
что бы получить задежку объявите переменную типа 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 скачиваний

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 20 фев 2016, 12:10

clark2 писал(а):Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
ИМХО Показометра достаточно, а вытяжкой в ванной лучше управлять так:
Включение, если влажность растет быстрее, чем 5% за 3 секунды.
Выключение, если точка росы опускается ниже 18 градусов летом и 15 зимой.
Выключение на всякий случай, если время работы вентилятора более 2 часов, но ни разу такого не было...

Мега такого сделать не сможет, поэтому лучше возложить этот алгоритм на сервер. У меня он работает второй год, сбоев нет, атмосфера в ванной всегда хорошая.
Дело в том, что начальная влажность воздуха может быть и 30% и 90% - какой порог ставить? Или вентилятор будет молотить бесконечно?

OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

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

Сообщение OlegJktu84 » 20 фев 2016, 16:40

THK писал(а):
clark2 писал(а):Думал вытяжку в ванной подключить, а оказывается нету, только показометер.
ИМХО Показометра достаточно, а вытяжкой в ванной лучше управлять так:
Включение, если влажность растет быстрее, чем 5% за 3 секунды.
Выключение, если точка росы опускается ниже 18 градусов летом и 15 зимой.
Выключение на всякий случай, если время работы вентилятора более 2 часов, но ни разу такого не было...

Мега такого сделать не сможет, поэтому лучше возложить этот алгоритм на сервер. У меня он работает второй год, сбоев нет, атмосфера в ванной всегда хорошая.
Дело в том, что начальная влажность воздуха может быть и 30% и 90% - какой порог ставить? Или вентилятор будет молотить бесконечно?
Прошу прощения за офтоп. По поводу вытяжки. Релейная мега может вытяжкой (канальный вентилято 150вт - 500вт) управлять напрямую или лучше через какое нибудь реле?

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

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

Сообщение Andrey_B » 20 фев 2016, 17:10

OlegJktu84, думаю, можно напрямую.

По поводу DHT*. Во-первых, полностью согласен с Виктором. Во-вторых, автономный режим, как у АЦП или DS18B20, имеет только одно поле Val. В частности для DHT* требуется минимум два (температура и влажность), а это невозможно. В третьих процесс инициализации DHT11 включает в себя задержку 18 мс (лучше вообще отказаться от использования этих датчиков совместно с кнопками). Решение этой проблемы снова потребует памяти, хотя и не очень много. Но конкретно на DHT11 ее жалко. У DHT22 задержка значительно меньше и практически не влияет на работу устройства.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 20 фев 2016, 23:22

OlegJktu84 писал(а):По поводу вытяжки. Релейная мега может вытяжкой (канальный вентилято 150вт - 500вт) управлять напрямую или лучше через какое нибудь реле?
Точно сказать не могу, скорее всего может. У меня были самодельные меги, но я их заменил на один контроллер Wago и сейчас он всем рулит. Описанный алгоритм тоже на нем крутится, а сервер только для сбора статистики...
Думаю Андрей ответит на этот вопрос лучше.

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

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

Сообщение d.v.ermakov » 20 фев 2016, 23:33

ТНК, спасибо за алгоритм, а то я себе уже всю голову об это сломал.

Lewcom
Сообщения: 8
Зарегистрирован: 23 янв 2014, 23:08

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

Сообщение Lewcom » 22 фев 2016, 14:23

Кому не сложно,
напишите подробную инструкцию для прошивки меги через ISP-программатор,
возможно ли его сделать из ардуинки мега2560 и как?
Спасибо.

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

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

Сообщение Andrey_B » 22 фев 2016, 15:25

Прошивка для 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.

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

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

Сообщение Prokol » 22 фев 2016, 15:52

Lewcom писал(а):Кому не сложно,
ISP-программатор,
возможно ли его сделать из ардуинки мега2560 и как?
Спасибо.
Программатор для AVR можно сделать из любой ардуины. У меня например он из UNO сделан. Принцип у всех один и тот-же (ноги одни и те-же), за исключением RESET.
Вот например как сделать из 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 сек, а не сразу.

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

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

Сообщение Andrey_B » 22 фев 2016, 16:33

Prokol писал(а):1. Изменения аркости с помощью клавиши не отображается в веб интерфейсе MegaD, т.е. они там не изменяются в окне PWM.
Теоретически это возможно. Проверю.
Prokol писал(а):2. Срабатывание на длинное нажатие происходит как-то непонятно. При минимальной яркости свет чуть-чуть включается, а далее никаких изменений. При максимальной яркости никак не реагирует или вероятно реагирует так-же как и при минимальной яркости, но это определить практически невозможно.
Версия прошивки последняя? Что используется в качестве исполнительного модуля? Что используется в качестве лампы?
Prokol писал(а):3. При коротких нажатиях происходит срабатывание приблизительно через 1 сек, а не сразу.
При коротких нажатиях реакция наступает при "отжатии" кнопки, иначе невозможно было бы отличить короткое нажатие от длинного. Может быть, вы с этим путаете? Попробуйте очень быстро нажать и отжать кнопку.

Lewcom
Сообщения: 8
Зарегистрирован: 23 янв 2014, 23:08

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

Сообщение Lewcom » 24 фев 2016, 22:29

Извиняюсь за проблемы.
Поставил на виртуалку Убунту, нашел Мегу- восстановил 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 раза...

через пол часа не выдержал - пишу сюда.
Выручайте!

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

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

Сообщение kod.begemot » 24 фев 2016, 22:56

Обновляешь из-под виртуалки?
как там между виртуалкой и реальностью, брандмауеров, антивирей всяких нет?
Лучше всего напрямую из системы, да ещё и не через wifi связываться с сетью, в которой мега, а проводом.А в идеале - через тупой хаб/свитч, не роутер.

Lewcom
Сообщения: 8
Зарегистрирован: 23 янв 2014, 23:08

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

Сообщение Lewcom » 24 фев 2016, 22:57

Сори
Zyxel ES-108A
я до последнего не верил
...но все таки проблема в нем.
Без него обновил, прошил.
Еще раз извините

clark2
Сообщения: 67
Зарегистрирован: 11 авг 2012, 00:17
Откуда: Kiev region

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

Сообщение clark2 » 25 фев 2016, 00:11

Здравствуйте!
Прошивка 3.42
DSen 1W температуру показывает.
При установке любого Mode (>, <, <>) действие, прописаное в Act при сохранении/перезагрузке сразу срабатывает (например 0:2 сразу включает).
Также действие прописанное в Act начинает циклически выполняться (переключает по команде 0:2) если значение температуры превышает установленное в Val. При этом сама температура показывает 0.00.
Если температура падает ниже установленного в Val - температуру начинает показывать (команда 0:2 остается включеной).

Прошивка или у меня что не так?

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

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

Сообщение Andrey_B » 25 фев 2016, 12:22

clark2, проблему сброса температуры в 0.00 вроде бы поправил. Возможно, это решит и все другие описанные вами проблемы.

http://ab-log.ru/files/File/ip_manager3 ... a2-hex.zip

Проверьте. А что касается выполнения сценария после перезагрузки, то если текущее значение 26, а стоит >25, то сценарий после перезагрузки выполнится.

Ответить