Dostępna jest wersja projektu MicroPythonOS 0.18.0, która opracowuje system operacyjny dla mikrokontrolerów, takich jak ESP32, napisany z użyciem narzędzi MicroPython. System operacyjny wyposażony jest w graficzny interfejs użytkownika, rozwijany z myślą o Androidzie i iOS, obsługujący sterowanie za pomocą ekranów dotykowych lub przycisków nawigacyjnych. Do zastosowań MicroPythonOS zaliczają się urządzenia Internetu rzeczy (IoT), systemy zarządzania automatyką domową, interaktywne panele, roboty oraz inteligentne urządzenia noszone z obsługą gestów na ekranie. Projekt może być także wykorzystywany do szybkiego tworzenia prototypów nowych urządzeń. Kod napisany jest w językach C i Python i rozpowszechniany na licencji MIT.
MicroPythonOS oferuje minimalny system bazowy odpowiedzialny za inicjalizację i interakcję z hardwarem, montowanie nośników, wielozadaniowość oraz interfejs użytkownika. Cała pozostała funkcjonalność, taka jak konfiguracja Wi-Fi i instalacja aktualizacji, została przeniesiona do aplikacji. W podstawowym zestawie znajduje się menu aplikacji, konfigurator, widżet do konfiguracji Wi-Fi, program do instalacji i aktualizacji aplikacji.
Aplikacje wykorzystują język MicroPython (okrojoną wersję Pythona 3) oraz podzbiór bibliotek Pythona. Możliwa jest instalacja zewnętrznych aplikacji, które są dystrybuowane przez centralny katalog App Store (na przykład, przez App Store dostępne są przeglądarki obrazów i aplikacje do obsługi kamer). Aktualizacje dostarczane są przez sieć w trybie OTA (over-the-air). Obsługiwane są Wi-Fi, Bluetooth, kodeki dźwiękowe, czujniki IMU (jednostka pomiaru inercyjnego), ekrany dotykowe oraz kamery.
Wśród zmian w nowej wersji:
- Dodano wsparcie dla płytki Waveshare ESP32-S3-Touch-LCD-3.5 z wbudowanym ekranem 3,5 cala (320×480) oraz kodekiem dźwiękowym ES8311.
- W katalogu aplikacji AppStore dodano przycisk „Skanuj QR” do skanowania kodu QR z identyfikatorem aplikacji (https://badgehub.eu/page/project/APP_ID, micropythonos://app/APP_ID lub mpos://app/APP_ID) i wyświetlania szczegółowych informacji o aplikacji. W aplikacji do obsługi kamery dodano rozpoznawanie linków do aplikacji przy skanowaniu kodów QR oraz możliwość przejścia do katalogu aplikacji.
- W AppManagerze wprowadzono możliwość przypisywania uchwytów URL do aplikacji.
- W odtwarzaczu muzycznym zrealizowano obsługę flagi powtarzania na wszystkich platformach. Ulepszono wsparcie dla systemów dźwiękowych podłączanych przez magistralę I2S (Inter-IC Sound).
- W menedżerze czcionek zaimplementowano buforowanie kodów emoji.
- W Menedżerze zadań dodano funkcję monitorowania stanu uruchomionych zadań oraz ich ponownego uruchamiania po zakończeniu działania. Tryb automatycznego ponownego uruchamiania został zastosowany w konsoli aiorepl.
- Dodano kompresję statycznych archiwów FS (freezefs —compress), a także włączono czyszczenie plików pycache i pozostałych w środowisku kompilacyjnym kopii zapasowych, co pozwoliło zmniejszyć rozmiar oprogramowania o 39 KB. Włączono kompresję czcionek Montserrat 10-18, co zaoszczędziło 19 KB.
Źródło: opennet.ru
