Не понял вопроса. Описал механизм формирования дистрибутивов сред разработки Ардуино и дал практические рекомендации, как заставить работать проект, если он не компилируется в новой версии IDE.
Система Ардуино открытая и вы сами можете проанализировать внесённые разработчиками изменения. Мне ни их логика, ни их мотивация непонятны. Особенно мне непонятно, почему две разных библиотеки имеют один и тот же номер версии. И почему одна библиотека 1.04 компилируется только в 1.6.5, а другая 1.0.4 компилируется только в 1.6.7.
Здесь речь даже не доходит до проблем с модифицированными библиотеками, здесь речь идёт о том, что Ардуино версии 1.6.5 содержит Ethernet библиотеку версии 1.0.4, содержащую 31 файл и занимающую 123 КБ памяти и Ардуино версии 1.6.7 содержит Ethernet библиотеку версии 1.0.4, содержащую 31 файл и занимающую 123 КБ памяти. Но это разные библиотеки и несовместимые между собой.
И речь идёт о том, что Ардуино преследует только одну цель — собрать непротиворечивый дистрибутив, а какой при этом будет устроен ад из библиотек — не важно.
Ардуино модифицирует системные библиотеки под версии своих IDE и даже не удосуживается формально изменить номер версии. И там и там — 1.0.4 (а библиотеки кардинально разные).
microSD карта памяти является практически неограниченным резервуаром для веб-страниц и 3D моделей (до 32 Гб), движок АМС занимается обслуживанием запросов на контроллере, отрисовкой 3D графики занимается JS на стороне браузера.
Всё это работает, как слаженная система и в результате вы видите (и взаимодействуете) 3D графику, «живущую» на контроллере.
Вообще, АМС легко можно портировать на любое устройство, поддерживаемое Arduino IDE, а на прочих устройствах можно воспользоваться идеями, заложенными в АМС. Ну и если очень надо, то можно портировать АМС на любое устройство (в том числе и на intel edison), вопрос только в том, сколько это потребует усилий.
Но! Я с неделю промучился с переменной и перед релизом просто выкинул её из дистрибутива и отказался от идеи подсчитывать сетевые ошибки. Можете попробовать воспроизвести ошибку, но не факт, что получится — дефект ещё и плавающий.
Боюсь, что это вы прибываете в иллюзиях относительно среды Ардуино. Глюк на глюке глюком погоняет, поверьте мне, как человеку, который по сто раз на дню компилирует проект и отвечает на вопросы пользователей.
А полный исходный код доступен — это 0.14 версия АМС.
Не вопрос, кому удобно крутить колёсико — могут продолжать крутить — АМС никак не ущемляет их права. Что касается меня, то мне больше нравятся «системные» решения. То, что я описал это база к которой легко добавить любую функцианальность в «два клика».
Весь объём статьи это попытка объяснить другим людям «что к чему» и как это сделать. Для меня же это не составило никаких трудностей — на всё ушло около часа времени.
По поводу умного димера. Я не знаю, что вы имели в виду, но здесь универсальное решение, которое можно до бесконечности дополнять нужным функционалом, например, сделать кнопку «автоматический форсированный разогрев», чего с обычным димером сделать уже не удастся.
Или сделать кнопки с пресетами для различных типов пайки. Или сделать кнопку поддержания минимальной температуры (как у чайников). Или ещё миллион идей, которые в этой системе реализовать элементарно, а с обычным димером — никак или проблематично.
Можно, конечно, усовершенствовать устройство до бесконечности, но речь шла о конкретном случае, когда 5% усилий решают 95% проблем. Лично я очень доволен решением.
Второй момент заключается в том, что это универсальное решение и подходит к любому паяльнику.
Нет, сейчас система без обратной связи, но к Июню обещают вариант с обратной связью. АМС может отслеживать включение оборудования через потребляемую мощность по 13-и линиям, но это особый вопрос.
По поводу выключателя почитайте о SB111-150, возможно, это то, что вам надо.
Забыл написать: Arduino Mega Server имеет контроль потребляемой мощности по 13-и каналам и может отслеживать всю электроактивность в доме. И во многих случаях может иметь обратную связь через электросеть и знать включилось ли оборудование или нет.
Да, двусторонняя связь необходима, официально обещают к Июню. В моих экспериментах на 5 вольтах всё работало как часы, на 3.3 иногда были несрабатывания и я упомянул в статье, что это нужно учитывать.
Слушайте, это действительно прикол — получил официальный ответ и добросовестно его скопировал и вставил на страничку, особо не посмотрев… и получилось как-то двусмысленно.
И речь идёт о том, что Ардуино преследует только одну цель — собрать непротиворечивый дистрибутив, а какой при этом будет устроен ад из библиотек — не важно.
Ардуино модифицирует системные библиотеки под версии своих IDE и даже не удосуживается формально изменить номер версии. И там и там — 1.0.4 (а библиотеки кардинально разные).
Всё это работает, как слаженная система и в результате вы видите (и взаимодействуете) 3D графику, «живущую» на контроллере.
http://hi-lab.ru/arduino-mega-server/details/download
Но! Я с неделю промучился с переменной и перед релизом просто выкинул её из дистрибутива и отказался от идеи подсчитывать сетевые ошибки. Можете попробовать воспроизвести ошибку, но не факт, что получится — дефект ещё и плавающий.
А полный исходный код доступен — это 0.14 версия АМС.
http://www.youtube.com/watch?v=jmu0MkIlywU
Кстати, это ещё и обучающая платформа для всего спектра современных IT технологий для школ и образовательных центров.
По поводу умного димера. Я не знаю, что вы имели в виду, но здесь универсальное решение, которое можно до бесконечности дополнять нужным функционалом, например, сделать кнопку «автоматический форсированный разогрев», чего с обычным димером сделать уже не удастся.
Или сделать кнопки с пресетами для различных типов пайки. Или сделать кнопку поддержания минимальной температуры (как у чайников). Или ещё миллион идей, которые в этой системе реализовать элементарно, а с обычным димером — никак или проблематично.
Второй момент заключается в том, что это универсальное решение и подходит к любому паяльнику.
По поводу выключателя почитайте о SB111-150, возможно, это то, что вам надо.
Вот третья часть цикла: geektimes.ru/post/269450