Современные микроконтроллеры стали настолько мощными, что энтузиасты всё чаще пытаются превратить их в полноценные компьютеры. Свежий пример такого подхода — проект KryonOS от разработчика, известного под ником Haris. От большинства похожих экспериментов он отличается тем, что представляет собой операционную систему, построенную вокруг JavaScript и рассчитанную на популярные платы ESP32.

Графический интерфейс операционной системы KryonOS на плате ESP32

KryonOS сочетает простой графический интерфейс и библиотеку для вывода графики со встроенным интерпретатором JavaScript. Программы на этом языке выполняются прямо на микроконтроллере, а сама система берёт на себя работу с экраном и аппаратной частью.

реклама кормит Уточку 🦆

Система запускается на самых разных платах ESP32 с дисплеем, включая широко распространённую и недорогую Cheap Yellow Display, давно ставшую любимой игрушкой радиолюбителей. KryonOS имеет полный доступ к файловой системе SD-карты и предоставляет программный интерфейс для управления периферией.

Пожалуй, самая любопытная деталь — встроенный магазин приложений, откуда можно загружать готовые программы. Это невольно напоминает европейскую инициативу Badge.Team: их бейдж SHA2017 положил начало целой серии устройств, которая жива и сегодня, и предлагал похожий опыт, но на языке Python.

реклама кормит Уточку 🦆

Чтобы оценить масштаб задумки, стоит вспомнить, что такое ESP32. Это недорогой двухъядерный микроконтроллер со встроенными Wi-Fi и Bluetooth, за несколько лет ставший стандартом де-факто в самодельной электронике и устройствах «умного дома». Именно доступность и обширное сообщество делают его удобной платформой для подобных экспериментов.

Ставка на JavaScript выглядит расчётливо: с этим языком знакомы миллионы веб-разработчиков, и им не придётся осваивать тонкости программирования на C. Ещё недавно сама мысль о том, что на микроконтроллере может работать Python, казалась фантастикой — а сегодня MicroPython используют повсеместно.

реклама кормит Уточку 🦆

KryonOS пока выглядит нишевым проектом, но у него есть потенциал именно за счёт низкого порога входа. Если история с Python на микроконтроллерах чему-то и учит, то тому, что удобный язык способен привести в мир встраиваемой электроники совершенно новую аудиторию.