Это делалось, кроме всего прочего, и «for fun» — чтобы заставить всё это работать на 8-битном контроллере с 8 килобайтами памяти. А кроме того, у народа много таких контроллеров и, что ещё более важно, опыта работы именно с Ардуино. Да и «пинов» у Меги больше, чем у малинки.
И ещё это часть проекта, который связывает различные устройства в одну систему. Это и MajorDoMo и малинки и «ардуинки» и «лоранки» и всё, до чего у нас дотянутся руки.
Вопрос к старожилам. За время модерации вышла новая стабильная и исправленная версия 0.11. Можно ли добавить на неё ссылку в конце статьи и не будет ли это нарушением правил?
Дело в том, что это можно скачать, установить на свою пылящуюся в кладовке Мегу и получить все описанные в статье «плюшки». По набору того, что содержит дистрибутив ему нет аналогов. Просто нет. Другое дело, что кому-то это нужно, а кому-то — нет. Мне отписались люди, которые «побежали» за Мегой ради этих плюшек.
Безусловно, вам огромный респект за проделанную работу.
Соглашусь, что проект лидер в категории «что можно запихнуть в Мегу». И действительно многих заинтересует.
Но, на практике критерий «обязательно реализовать на Меге» не так важен в области «умного дома».
Конечно! Будьте уверены на Меге мы не остановимся. У нас очень обширные планы по завоеванию мира, а Мега это только что-то вроде кроссворда, пока делать нечего.
Я не старожил, но думаю что в комментариях это точно не запрещается!
Да и в самой статье указать ссылку на исходники думаю даже не просто можно, а даже нужно :)
Проект полностью свободный и каждый желающий может создать на Github свой проект и развивать его как хочет. Кажется уже создано две такие копии.
Что касается документации, то она конечно нужна, но у меня столько идей, что я не успеваю их реализовывать и конца им не видно. По хорошему нужна команда из нескольких человек, которые будут окультуривать мой код и писать документацию, но это из области фантастики. Так что пока выход один — читать форум и задавать вопросы.
Хороший вопрос. На данный момент всё происходит так: нажимаем на кнопку — задержка 1 — 4 секунды, а дальше вступает в работу JavaScript и всё просто «летает». Задержка связана с подгрузкой страничек, скриптов и графики. Плюс активная работа Ajax-а. Это без оптимизации. С оптимизацией работа с Ардуино Сервером будет мало отличаться от обычных серверов (естественно Ардуино не рассчитана на обслуживание сразу 1000 клиентов).
12 одновременно открытых страниц, каждая с четырьмя непрерывными Ajax потоками (всего 4х12 = 48 потоков) работают нормально. Дальше не проверял — нет особого смысла.
Понятно, значит активный контент просто на стороне клиента, а сервер-ардуино просто обслуживает соединения, хранилище данных и подставляет в статичные странички некоторые переменные параметры вроде значение напряжения в сети, частоту и т.д.
Совершенно верно, задача Ардуино — выполнять свои прямые обязанности, как контроллера, выдавать веб-странички и Ajax данные по запросу браузера, задача JavaScript-а придать данным удобоваримый вид и красиво отобразить на веб-страничке.
Ну и, строго говоря, «HTML5, CSS3, JavaScript, Ajax» и любой список JS-библиотек НЕ «поддерживается в полном объёме» сервером. А поддерживается он клиентским браузером.
Это работает на Mega и Due (32-bit), планируется поддержка новых плат M0 (Zero) (32-bit) и Genuino 101 (32-bit). Подробнее на официальном сайте проекта
Arduino Mega Server