Skip to content

GreaseMonkeyIT/MicroPythonOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

245 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PiggyOS

This is an operating system for microcontrollers like the ESP32.

It's written entirely in MicroPython, including device drivers, interrupt handlers, boot code, multitasking, display handling.

The architecure is inspired by the Android operating system for smartphones:

  • 'thin' operating system with facilities for apps
  • 'everything is an app' idea
  • making it as simple as possible for developers to build new apps

Apps

The operating system comes with a few apps built-in that are necessary to bootstrap:

  • launcher: to be able to start apps
  • wificonf: to be able to connect to the wifi
  • appstore: to be able to download and install new apps

Furthermore, these apps are also built-in for convenience:

  • osupdate: to download and install operating system updates
  • camera: to take pictures and videos
  • imutest: to test the Inertial Measurement Unit (accelerometer)

Supported hardware

Architecture

  • boot.py: initializes the hardware
  • main.py: initializes the User Interface, contains helper functions for apps, and starts the launcher app

Filesystem layout:

  • /apps: new apps are downloaded and installed here
  • /apps/com.example.app1: example app1 installation directory
  • /apps/com.example.app1/MANIFEST.MF: info about app1 such as Name, Start-Script
  • /apps/com.example.app1/mipmap-mdpi: medium dpi images for app1
  • /apps/com.example.app1/mipmap-mdpi/icon_64x64.bin: icon for app1 (64x64 pixels)
  • /builtin/: read-only filesystem that's compiled in and mounted at boot by main.py
  • /builtin/apps: apps that are builtin and necessary for minimal facilities (launcher, wificonf, appstore etc)
  • /builtin/res/mipmap-mdpi/default_icon_64x64.bin: default icon for apps that don't have one

About

A complete operating system for microcontrollers like the ESP32, inspired by Android and iOS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 81.7%
  • C 15.3%
  • Shell 1.6%
  • Other 1.4%