Release Notes
micrOS 3.0 focuses on core stability, modern communication paths, a cleaner filesystem layout, and better package/runtime maintainability.
Core System Improvements
1. Async SSL/TLS integration
- Added async SSL/TLS support in the core HTTP client path.
urequestswas redesigned for async REST client usage.- Requires MicroPython
1.22+. - Enables improved integrations such as:
LM_telegramnotification flows- listener/server-side chatbot communication patterns
2. ESP-NOW integration in InterCon
- Added ESP-NOW peer-to-peer communication support to
InterCon. - Improved multi-command handling for the same target device with better session ID handling.
- Provides a lower-latency fallback/alternative path for device-to-device messaging.
3. New InterCon command syntax
- Added command-level remote execution syntax:
rgb toggle >>RingLight.local
- This replaces the older verbose form:
intercon sendcmd host="RingLight.local" cmd="rgb toggle"
- ESP-NOW is transparently integrated into the new
>>targetsyntax when available on the target.
4. Multi-level project and filesystem structure
- Introduced a structured micrOS filesystem layout with automatic directory creation at boot and over USB.
- New runtime directories:
/lib/logs/web/data/config/modules
- Added automatic handling for
/sourceand/precompiled.
Filesystem model:
- Root
/- core runtime files such as
micrOS.py,Config.py,Tasks.py,Shell.py,Web.py,Server.py, and related system files
- core runtime files such as
/web- static web assets:
html,js,css, and related files
- static web assets:
/data- runtime and persistent application data
*.cache*.dat
/logs*.log*.sys.log
/confignode_config.json- offloaded config values such as
*.key
/modulesLM_*IO_*- mip-compatible layout support via
/lib
5. Universal task creation response
- Task creation now uses a unified response format:
{taskID: verdict}
6. Proper mip installer support
- Added package installation support for
/modules,/lib, and/web. - Expanded autonomous package management over Wi-Fi / GitHub:
pacman install <package-url>pacman uninstall <package-name>pacman upgrade <package-name>pacman lspacman dirtree
7. Native requirements.txt handling
- Added
/config/requirements.txtsupport using native MicroPython requirements syntax. - Supported flow:
pacman install "requirements.txt"
8. External package ecosystem support
- Added
micrOS/packagessubmodule support for installable micrOS applications. - Application registry:
- Added devToolKit rendering support for external package load modules:
sfuncman.jsonsfuncman.html
9. MicroPython uplift to 1.27
- Updated baseline compatibility to MicroPython
1.27. - Includes fixes for micrOS USB update config restore issues.
- Includes TLS/SSL configuration fixes (sunset-sunrise API)
10. WebEngine mount and alias support
-
Added WebEngine mount aliases for
/data,/modules, '/logs'. -
Default web root remains
/web/<user_data>. -
Added absolute user input path checks in
Files.py. -
Improved file server integration:
- custom
/moduleslisting without.mpyfiles - mount-path write access handling
- mount-path read and visibility handling
- custom
11. @Auth.sudo decorator
- Added
@Auth.sudofor protected operations requiringpwd="<password>". - Supports two modes:
- always require password
- require only when
force=True
- Intended for sensitive operations such as:
pacman rmpacman rmdirpacman uninstall- forced upgrade flows
12. WebEngine finite state machine redesign
- Reworked WebEngine protocol parsing around a robust finite state machine.
- Decoupled transport handling from protocol parsing.
- Always forwards response headers to load module callback functions.
- Added bounded memory behavior and configurable memory profiles.
- Improved WebUI stability with better socket handling.
13. Boot flow and request-path optimization
- Improved generic boot flow behavior.
- Refined request handling and TLS/HTTPS behavior for better reliability.
Highlights
- Async TLS support for modern integrations
- Stronger InterCon with ESP-NOW support
- Cleaner and more scalable filesystem structure
- Better package management and
mipcompatibility - More robust WebEngine with tighter memory handling
- Updated MicroPython baseline to
1.27