RPCortex β81 - Nebula
RPCortex Nebula — v0.8.1-beta3
v0.8.1-beta3 | Codenamed Nebula | β81
quick note, i just made command execution up to 95% faster.
Full feature reference: NebulaDocs
Status
Beta. Stable on RP2040, RP2350, and ESP32-S3. Recommended upgrade from beta2.
What's New in beta3
Shell — multi-command lines
- Multiple commands can be run on one line with
;as a separator:mkdir /data; cd /data; touch file.txt - Quote-aware splitting —
;inside single or double quotes is treated as literal text
Shell — new commands
grep <pattern> <file>— substring search with line numbers and match count; line-by-line for low RAMwc <file>— line / word / byte countfind [dir] [pattern]— recursive file search by name substring (max depth 8)sort <file>— alphabetical sort with 8 KB RAM warninguniq <file>— consecutive duplicate line filterhex <file> [n]— 16-byte-per-row hexdump with address, hex, and ASCII columnsbasename <path>/dirname <path>— path component extractionsleep <secs>— pause the shell (supports decimal, e.g.sleep 0.5)which <cmd>— shows where a command is defined: built-in,.lpregistry entry, or aliasrawrepl— cleanly exit the OS and return to MicroPython REPL (for Web Installer use)
Shell — performance
- Removed redundant re-inject on every cached command call — saves 6
setattrcalls per dispatch
Browser tools
- OS Update page — version picker now driven by
releases/updates.json; add new versions to the JSON without touching HTML - Install page — version picker driven by
releases/releases.json; same pattern - Package Browser — auto-disconnects the device after a successful package install
- Package Browser — each package card now has a Download .pkg button (fetch + blob, no CORS issues)
What's New in beta2 (included)
Shell overhaul
- Tab completion with ghost text — partial command names show a dim gray suffix; press Tab to accept
- Shell aliases —
alias name=cmdcreates session aliases;unaliasremoves them; barealiaslists all - Full cursor navigation: left/right arrows, Home/End, Ctrl+A/E, Delete-forward, character insertion mid-line
OS management — from the shell
update from-file <path>— apply a.rpcupdate archive while preserving all user datafactoryreset— wipe users, packages, and logs; OS files untouched; reboots into first-run setupreinstall— full OS wipe with optional.rpcauto-install; use when recovery isn't enough
Browser tools
- Web Installer — flash RPCortex from any Chromium browser over USB; no software, no drivers; wipes device before install for a clean slate
- Browser update page — push a
.rpcupdate from a browser tab to a running device; no WiFi, no raw REPL - Web package browser — install packages from the browser to a running shell over USB; no reboot required
Registry & boot
- Config cached in memory — registry reads no longer touch the filesystem on every call
Settings.Verbose_Boot— toggle how much POST prints at bootSettings.OC_On_Boot— apply stored overclock on every boot automatically- Log directory auto-created by POST on first boot
Serial file transfer (_xfer)
- Built-in protocol for receiving files from the browser over serial using base64
- Used by the web package browser and update page to push files without leaving the shell
First-run setup
- Official package repo added automatically
guestaccount created silently- Post-update login banner shows the new version after a successful update
Bug fixes (beta2)
lsno longer changes CWD when given a path argument- POST beeper crash fixed
- Recovery shell crash in
initialization.pyfixed - Startup mode 7 (boot-clock crash) now shows a login notification
Bug fixes (beta3)
- Ctrl+C cancel fixed
- Tab completion ghost-text edge case fixed
rmrecursion fix
Installation
Fresh install: Web Installer — flash from your browser, no software needed.
Update from beta2: OS Update page or update from-file /path/to/os.rpc from the shell. User data and settings are preserved.
Manual: Flash MicroPython v1.25+ (v1.28 recommended), copy files, connect at 115200 baud, reboot.
Using rawrepl for a fresh install
If RPCortex is already installed and you want a completely fresh flash:
- At the shell prompt, run
rawrepl - The MicroPython REPL (
>>>) becomes active in your terminal - Open rpc.novalabs.app/install.html in Chrome or Edge
- Click Connect Device and flash as normal
No need for reinstall or a full wipe — rawrepl simply exits the OS and hands control back to MicroPython.
Known Limitations
- MemoryError after heavy use — run
freeup;rebootclears completely - ESP32-S3 temperature reads ~300–450 °C — hardware calibration issue, not a bug
- No real-time clock on base Pico —
dateshows time since boot epoch - HTTPS on Pico 1 W needs ~9.5 KB contiguous heap — run
freeupfirst - WiFi passwords stored plaintext in registry — no secure enclave on this hardware
- Editor requires a real terminal — Thonny REPL won't render it
Author: dash1101. Issues and PRs welcome.