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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Dron
Сообщения: 207
Зарегистрирован: 08 мар 2013, 13:00

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

Сообщение Dron » 16 май 2014, 19:01

Andrey_B писал(а):Добавлена возможность получить состояние всех портов одним запросом
а вот за это респект, нет, Megaреспект =-)

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 18 май 2014, 00:24

Andrey_B писал(а):http://ab-log.ru/files/File/ip_manager3 ... _beta1.zip

Добавлена возможность получить состояние всех портов одним запросом
Пример: http://192.168.0.14/sec?cmd=all
Что я делаю неправильно ? При запросе http://192.168.0.14/sec?cmd=all действительно, отдается состояние всех портов. (меряю сразу пять аккумуляторных батарей) Получаю нужные показания, но после этого, программа ведет себя странно. При любом запросе, в том числе если я просто даю команду http://192.168.0.14/sec Или даже http://192.168.0.14 или любую другую, получаю в ответ все то же состояние всех портов.
Прикол еще в том, что не помогает даже передергивание питания схемы.
Помогает только перепрошивка.
Есть какие идеи ?
Вот в продолжение поиска, смоделировал не в железе а в Proteus. Ведет себя модель так же.
Хотел проверить, может неверно выставил fuse под бутлоадер.
В финале поисков, уже идей нет.

marsev
Сообщения: 16
Зарегистрирован: 30 апр 2014, 08:33

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

Сообщение marsev » 19 май 2014, 09:09

Уважаемый Andrey_B. А на сколько реально добавить в интерфейс еще пару позиций с неиспользуемыми в данный момент портами (PB0, PB7)? При самостоятельном изготовлении исполнительного модуля появится возможность использовать дополнительные порты. Или это вызовет значительное увеличение размеров прошивки?

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

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

Сообщение Andrey_B » 19 май 2014, 16:10

asteroid, очищался ли EEPROM вместе с загрузкой новой прошивки? (ключ --ee для утилиты megad-cfg). Были изменения в работе с EEPROM, поэтому возможно произошел ремапинг. Нужно очистить.
Если глюки останутся, то сообщите какое количество портов у вас задействовано и в какой конфигурации.

marsev, размер прошивки практически не изменится, а вот объем задействованной оперативной памяти увеличится. Далеко не факт, что еще два порта туда поместятся.

Mixman
Сообщения: 395
Зарегистрирован: 17 фев 2013, 23:49
Откуда: Волгодонск, Ростовская обл.
Контактная информация:

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

Сообщение Mixman » 20 май 2014, 02:52

Пришла в голову мысль, а если убрать из меги Web страничку и перенести это все на комп. Например тут на сайте сделать архив с html файлами.
Клиент покупает мегу, скачивает архив, распаковывает, открывает страницу и там посредством html и Java страница общается с мегой (API)

и не надо искать php сервер (для новичков или тех, кто использует мегу без сервера), а браузер все равно нужен.
То есть посредством обычной html страницы сделать так сказать API МегаД клиент.

П. С. А на странице можно сделать много графики и подсказок, и инструкции, и FAQ

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 20 май 2014, 02:56

[quote="Andrey_B"]asteroid, очищался ли EEPROM вместе с загрузкой новой прошивки quote]
Как собственно я делаю, загружаю прошивку программатором. (не через ethernet).
В программе программатора, (progISP1.72) непосредственно перед отправкой файла жму erase chip .
Далее вычитываю содержимое flash и EEPROM, там одни FF.
И, write flash. После всего verify flash все совпало.
И как бы, все без проблем, за исключением того, что я выше говорил.
Привожу скрины, что у меня получилось.
Вложения
Скриншот (20.05.2014 01-36-36).jpg
Образец глюка.
Скриншот (20.05.2014 01-36-36).jpg (17.36 КБ) 14573 просмотра
Скриншот (20.05.2014 01-39-11).jpg
Команда вычитать состояние портов
Скриншот (20.05.2014 01-39-11).jpg (30.33 КБ) 14573 просмотра
Скриншот (20.05.2014 01-28-29).jpg
Конфигурация портов
Скриншот (20.05.2014 01-28-29).jpg (61.06 КБ) 14573 просмотра

alexsis_76

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

Сообщение alexsis_76 » 20 май 2014, 05:49

Кстати для увеличения объема оперативной памяти можно использывать какую нибудь последовательную SRAM , формировать странички там,драйвер для работы с такой памятью можно позаимствовать у микрочипа

shaman1010
Сообщения: 142
Зарегистрирован: 12 ноя 2013, 00:34

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

Сообщение shaman1010 » 20 май 2014, 18:17

alexsis_76 писал(а):Кстати для увеличения объема оперативной памяти можно использывать какую нибудь последовательную SRAM , формировать странички там,драйвер для работы с такой памятью можно позаимствовать у микрочипа
Стоит, наверное, прикинуть, каким путем расширяться:
1) 328p без внутреннего формирования HTML + внешняя java/PHP страничка (без поднятия сервера)
2) 328p + SRAM + MicroSD с внутренним формированием http "на лету"
3) 328p + SRAM + SPI с внутренним формированием http "на лету"
4) 328p + большая SRAM + внешняя java/PHP страничка (без поднятия сервера). Промежуточные логи, измерения и т.д. храним в SRAM, один/два раза в сутки скидываем на сервер. (или циклически выталкиваем, если работаем без сервера)

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

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

Сообщение Andrey_B » 20 май 2014, 18:45

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

Исправлена процедура получения состояния всех портов одним запросом.

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

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

Сообщение andvas » 20 май 2014, 22:54

Andrey_B писал(а):http://ab-log.ru/files/File/ip_manager3 ... _beta2.zip
Исправлена процедура получения состояния всех портов одним запросом.
Andrey_B, в Сonfig на web страничке появился параметр MEGAD-ID с текстовым полем. Что это такое?

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 21 май 2014, 01:29

MegaID (предполагаю) для того, что бы если в сети устройств несколько, что бы им присвоить разные ID.

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 21 май 2014, 01:51

Насчет megad-328_318_beta2 глюк, когда вместо состояния портов показывало "ерунду", ушел.
Теперь после каждого запроса http://192.168.0.14/sec?cmd=all получаю состояние портов.
Но, таки после этого запроса, на любые другие, к примеру http://192.168.0.14/sec или http://192.168.0.14/sec/?pt=2 или http://192.168.0.14/sec/?cf=1 я в ответ, получаю все то же "состояние всех портов."
Может быть от того, что я использую в качестве "железа" платы от arduino mini pro и уже ее стыкую с enc28J60 и обвязкой ?
Но у этой платформы, такой же самый проц atmega328p, приходится только аккуратно кварц выпаять, и ножку на тактирование от ENC вывести, это все.
До этого, все предыдущие версии софта с этой же железной связкой, работали идеально.
Вложения
Скриншот (21.05.2014 00-39-05).jpg
Скриншот (21.05.2014 00-39-05).jpg (51.85 КБ) 14304 просмотра
Скриншот (21.05.2014 00-38-45).jpg
Скриншот (21.05.2014 00-38-45).jpg (35.9 КБ) 14304 просмотра
Скриншот (21.05.2014 00-24-16).jpg
После команды "показать состояние"
Скриншот (21.05.2014 00-24-16).jpg (41.62 КБ) 14304 просмотра

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

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

Сообщение Andrey_B » 21 май 2014, 11:41

asteroid, сомневаюсь, что виновато "железо". Есть мысль, что причина в компиляторе.
Если вы не вносили какие-то свои изменения в прошивку, то попробуйте мой вариант.
http://ab-log.ru/files/File/megad-firmw ... 8-beta.hex
Если причина окажется в компиляторе, тогда будем смотреть.

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 22 май 2014, 11:45

Если причина окажется в компиляторе, тогда будем смотреть.
Да, Вы правы. Причина моих бед, таки в компилятре.
Ваш hex отлично без ошибок работает.
В прошивке я правлю только регистр выборки AREF. Мне нужно, что бы я сам выставлял уровень AREF, просто меняя его значение на выводе меги.
Остальное в программе меня полностью устраивает.
Но, я пробовали и менять и не менять, то результат был одинаков.
Компилирую в AVR Studio 4.13
Последнюю версию Atmel studio не использовал ввиду ее громоздкости.
Может Вы посоветуете что то конкретно вменяемое ?

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

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

Сообщение Andrey_B » 22 май 2014, 12:23

asteroid, проверьте, изменится ли что-то в вашем случае.
http://ab-log.ru/files/File/ip_manager3 ... _beta4.zip

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 22 май 2014, 14:11

изменится ли что-то в вашем случае.
Изменилось.
Все заработало, даже придраться не к чему. :)
При том сразу и в железе и в модели Proteus.
Спасибо за Ваш труд.

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

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

Сообщение Andrey_B » 23 май 2014, 10:37

andvas писал(а):Andrey_B, в Сonfig на web страничке появился параметр MEGAD-ID с текстовым полем. Что это такое?
Если это поле заполнено, то устройство при обращении к серверу автоматически добавляем параметр mdid
Например, "/mod_megad.php?pt=0&mdid=123"
Таким образом в скрипте можно идентифицировать устройство не только по IP (что не всегда удобно), но и по этому идентификатору.

Конечно, добавлено поле MegaD-ID не только для этого. А для чего еще - расскажу чуть позже.

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 24 май 2014, 02:47

А кто то в новой версии 318_beta4 применял на портах PWM ?
У меня что то не хочет применяться значение.
Предел от 0 до 255, но я пробую выставить к примеру значение 12, и жмем кнопку change.
И ничего. Как было значение 0 так и остается.
Вложения
Скриншот (24.05.2014 01-39-19).jpg
Скриншот (24.05.2014 01-39-19).jpg (35.58 КБ) 13884 просмотра

andvas
Сообщения: 177
Зарегистрирован: 07 ноя 2011, 23:04
Откуда: Россия, Самара
Контактная информация:

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

Сообщение andvas » 24 май 2014, 09:34

asteroid писал(а):А кто то в новой версии 318_beta4 применял на портах PWM ?
У меня что то не хочет применяться значение.
Да,подтверждаю, не применяются значения, у меня прошивка 3.18 beta2.
И еще, у кого нибудь на последних прошивках, в частности на 3.18 beta2 работает в данное время DHT22 ?
А то у меня проработает часов 12-15, и начинают показываться нулевые значения температуры и влажности, и вот не могу понять с чем это связано, хочу откатиться назад, и потестировать старые прошивки, в которых точно было все нормально

asteroid
Сообщения: 42
Зарегистрирован: 13 апр 2013, 02:16

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

Сообщение asteroid » 24 май 2014, 14:45

у кого нибудь на последних прошивках, в частности на 3.18 beta2 работает в данное время DHT22 ?
У меня. И происходит точно то же самое, что у Вас на версии на 3.18 beta4. Через 15 - 18 часов работы, отваливаются показания влажности и температуры. (возвращаются нули). При этом всем, остальные показания продолжаю получать нормально. (меряю напряжение на 4х аккумуляторных батареях).
Думал рестарт сделать программно. Поменял режим работы одного из портов, применил, применилось. Но "DHT22" не видно. Помогает только передернуть питание.

Ответить