upyOS modular MicroPython-based OS for microcontrollers works with ESP32, RP2040, etc…

upyOS is a modular, lightweight MicroPython-based operating system (OS) that provides a Unix-like experience on low-resource microcontrollers such as Espressif Systems ESP32/ESP32-C3/ESP32-S3, Raspberry Pi RP2040, and others.

Inspired by smolOS, upyOS offers remote development tools, OTA updates, and a built-in web server. Its modular architecture separates system functions into reusable components, instead of large, monolithic programs.

upyOS Arduino Nano RP2040 Connect
upyOS on Arduino Nano RP2040 Connect

Key Features:

  • Modular architecture: Commands and system functionality are broken down into small, independent modules to reduce memory usage.
  • Built-in shell environment: Execute commands and scripts directly, providing a Unix-like CLI experience.
  • Startup and shutdown scripting: Configure boot and shutdown behaviors using /etc/init.sh and /etc/end.sh.
  • Recovery mode: A built-in failsafe mechanism lets users recover the system when booting fails.
  • Background execution: Supports threads and asyncio for background tasks, along with & sufix, hold, resume, kill and killall commands for process control.
  • Remote development support:
    • Telnet and FTP servers allow file transfer and terminal access over the network.
    • Integrated web server enables serving web interfaces or APIs directly from the microcontroller.
    • Seamless development from IDEs like Visual Studio Code or any other, without needing to reboot or reset the MCU.
  • Built-in system commands: Includes familiar tools such as ls, grep, ps, wifi, ifconfig, and reboot.
  • OTA (Over-The-Air) updates: Keep your device updated remotely via GitHub without physical access.
  • Tested hardware: Supports ESP32-C3, RP2040, and similar boards.

upyOS micropython os for microcontrollers
upyOS kernel source code loaded in Visual Studio Code

upyOS is suitable for embedded developers seeking a Unix-like OS experience on microcontrollers, educators and students, as well as makers and IoT developers. It is released under an MIT license and can be installed as follows:


Source code, usage examples, additional screenshots, and additional documentation can be found on GitHub.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard

6 Replies to “upyOS modular MicroPython-based OS for microcontrollers works with ESP32, RP2040, etc…”

  1. why do people like micropython so much? It is so shit for performance and you learn nothing using that, you don’t try to learn register level handling you are never gonna be good at embedded system.

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC
Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC