Очень важная часть в проектировании часов, поэтому надо продумать концепцию, которой будем придерживаться.
1. Первым делом я хотел сделать часы, которые будут работать на одном заряде хотя бы неделю и в теории до месяца.
2. Возможность добавлять приложения в часы.
3. Минимальный набор поддерживаемых датчиков - компас, акселерометр, барометр.
Под все эти запросы хорошо бы подходили часы Pebble, но фирма перестала существовать, да и цена у них из-за е-link дисплея не маленькая.
Пора начинать писать свою операционную систему, которая удовлетворить все пожелания
Поскольку для часов будут использоваться микроконтроллеры atmegа, stm32, esp8266, выбор языка программирования был очевиден - c/c++.
Процессорной мощности в запасе будет на так много, поэтому многозадачность я оставил только на уровне ядра для управления устройствами.
Отличие такое устройства от других часов в том, что вся периферия контролируется одним микропроцессором, а значит, получится снизить потребление тока до минимума.
В результате написаны драйверы для 3 типов экранов - TFT, LED и классических жидкокристаллических.
Слишком увлекшись разработкой ОС, добавил поддержку сенсорных экранов и разработал свой транслируемый язык программирования для запуска приложений. Да-да, arduino сможет запускать приложения с карты памяти любого размера.
Для первой версии часов буду использовать черно-белый экран от nokia 5110i. Не самый удобный экран для часов, но он имеет отличное энергосбережение, его драйвер занимает меньше всего места и экран хорошо читается на ярком солнце.
Операционная система имеет исходники в формате проектов arduino, если захотите попробовать ссылка на исходные коды:
https://github.com/yacubovvs/CubOS