From e1461caa8b98e399c8550ae13c4f20c75387e5e9 Mon Sep 17 00:00:00 2001 From: Brad Barnett <127794626+bdbarnett@users.noreply.github.com> Date: Tue, 10 Nov 2026 16:11:19 -0600 Subject: [PATCH 1/2] Stack: omip runs in the browser; the portable mip for hosts is gone --- data/stack.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/data/stack.json b/data/stack.json index 2ad9f76..ed04bee 100644 --- a/data/stack.json +++ b/data/stack.json @@ -76,7 +76,7 @@ {"name": "mpftp", "group": "firmware", "does": "Move files, run code, open the REPL, install packages and flash firmware, from VS Code, a browser tab or a terminal.", "repo": "mpftp", "path": "README.md", "get": ["pip:pydevices-mpftp"], "runs": "Desktop, Web"}, {"name": "Workbench", "group": "firmware", "does": "Edit and run MicroPython in a browser, in a built-in simulator or on a real board over USB, Bluetooth or WebREPL.", "repo": "workbench", "path": "README.md", "web": "https://pydevices.github.io/workbench/", "get": ["open"], "runs": "Web"}, {"name": "Board configs", "group": "firmware", "does": "Describe one board's display, touch, audio and pins, so a program runs on it unchanged. There is one per board.", "repo": "pydevices", "path": "board_configs", "guide": "docs/boards/board-configs.md", "get": ["boardmip"], "runs": "MP, CP, Desktop"}, - {"name": "omip", "group": "firmware", "does": "Install a package on a board in one line, with what it needs from micropython-lib, after getting the board online if it isn't.", "repo": "pydevices", "path": "lib/omip.py", "guide": "docs/guides/bring-up-a-board.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop"}, + {"name": "omip", "group": "firmware", "does": "Install a package on a board in one line, with what it needs from micropython-lib, after getting the board online if it isn't.", "repo": "pydevices", "path": "lib/omip.py", "guide": "docs/guides/bring-up-a-board.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web"}, {"name": "boarddev", "group": "firmware", "does": "Bring up a board's extra devices, such as its camera or sensors, only when you ask for them.", "repo": "pydevices", "path": "lib/boarddev.py", "guide": "docs/boards/board-contract.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web, Android"}, {"name": "displaydev", "group": "display", "does": "Drive any display with one API, from an SPI panel on a board to a window on a desktop.", "repo": "pydevices", "path": "lib/displaydev", "guide": "docs/guides/displays.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web, Android"}, @@ -201,7 +201,6 @@ {"name": "pydevices-desktop", "group": "hosts", "does": "Install the desktop stack and its board config in one command.", "repo": "pydevices", "path": "pydevices-desktop.toml", "guide": "docs/guides/run-on-the-desktop.md", "get": ["pip:pydevices-desktop", "mip:pydevices-desktop"], "runs": "Desktop"}, {"name": "micropython shim", "group": "hosts", "does": "Run code written for MicroPython under CPython without import errors.", "repo": "pydevices", "path": "utils/micropython.py", "get": ["pip:pydevices-desktop"], "runs": "Desktop"}, - {"name": "mip for hosts", "group": "hosts", "does": "Use `mip` on a host that doesn't have it.", "repo": "pydevices", "path": "utils/mip.py", "get": ["pip:pydevices-desktop"], "runs": "Desktop"}, {"name": "usdl2", "group": "hosts", "does": "Call a subset of SDL2 from pure Python.", "repo": "pydevices", "path": "utils/usdl2.py", "get": ["pip:pydevices-desktop", "firmware"], "runs": "MP, Desktop"}, {"name": "uwin32", "group": "hosts", "does": "Call a subset of Win32 from pure Python.", "repo": "pydevices", "path": "utils/uwin32.py", "get": ["pip:pydevices-desktop", "firmware"], "runs": "MP, Desktop on Windows"}, {"name": "wasm.py", "group": "hosts", "does": "Run a script in a browser on direct MicroPython WebAssembly.", "repo": "pydevices", "path": "bin/wasm.py", "guide": "docs/guides/run-in-the-browser.md", "get": ["clone"], "runs": "Web"}, From 6fbbc3d24f69418ebb36b142a43bc6fea6a14360 Mon Sep 17 00:00:00 2001 From: Brad Barnett <127794626+bdbarnett@users.noreply.github.com> Date: Tue, 10 Nov 2026 16:38:04 -0600 Subject: [PATCH 2/2] Stack: omip brings Adafruit's libraries on CircuitPython --- data/stack.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/stack.json b/data/stack.json index ed04bee..a77d70d 100644 --- a/data/stack.json +++ b/data/stack.json @@ -76,7 +76,7 @@ {"name": "mpftp", "group": "firmware", "does": "Move files, run code, open the REPL, install packages and flash firmware, from VS Code, a browser tab or a terminal.", "repo": "mpftp", "path": "README.md", "get": ["pip:pydevices-mpftp"], "runs": "Desktop, Web"}, {"name": "Workbench", "group": "firmware", "does": "Edit and run MicroPython in a browser, in a built-in simulator or on a real board over USB, Bluetooth or WebREPL.", "repo": "workbench", "path": "README.md", "web": "https://pydevices.github.io/workbench/", "get": ["open"], "runs": "Web"}, {"name": "Board configs", "group": "firmware", "does": "Describe one board's display, touch, audio and pins, so a program runs on it unchanged. There is one per board.", "repo": "pydevices", "path": "board_configs", "guide": "docs/boards/board-configs.md", "get": ["boardmip"], "runs": "MP, CP, Desktop"}, - {"name": "omip", "group": "firmware", "does": "Install a package on a board in one line, with what it needs from micropython-lib, after getting the board online if it isn't.", "repo": "pydevices", "path": "lib/omip.py", "guide": "docs/guides/bring-up-a-board.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web"}, + {"name": "omip", "group": "firmware", "does": "Install a package on a board in one line, with what it needs from micropython-lib, or Adafruit's libraries on CircuitPython, after getting the board online if it isn't.", "repo": "pydevices", "path": "lib/omip.py", "guide": "docs/guides/bring-up-a-board.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web"}, {"name": "boarddev", "group": "firmware", "does": "Bring up a board's extra devices, such as its camera or sensors, only when you ask for them.", "repo": "pydevices", "path": "lib/boarddev.py", "guide": "docs/boards/board-contract.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web, Android"}, {"name": "displaydev", "group": "display", "does": "Drive any display with one API, from an SPI panel on a board to a window on a desktop.", "repo": "pydevices", "path": "lib/displaydev", "guide": "docs/guides/displays.md", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop, Web, Android"},