From 9567ec26ed1dcc9bcfc58e5071a5cbb8a5cc1267 Mon Sep 17 00:00:00 2001 From: Brad Barnett <127794626+bdbarnett@users.noreply.github.com> Date: Wed, 4 Nov 2026 01:14:41 -0600 Subject: [PATCH 1/2] Stack: omip, one line to install a package on a board Ran scripts/stack.py --check against a checkout that has lib/omip.py: 156 rows, 0 problems. --- data/stack.json | 1 + 1 file changed, 1 insertion(+) diff --git a/data/stack.json b/data/stack.json index 7ec88ff..3d545ce 100644 --- a/data/stack.json +++ b/data/stack.json @@ -75,6 +75,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": "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"}, From 534d9d61cfd977755f693f13729d296458af02eb Mon Sep 17 00:00:00 2001 From: Brad Barnett <127794626+bdbarnett@users.noreply.github.com> Date: Wed, 4 Nov 2026 01:27:16 -0600 Subject: [PATCH 2/2] Stack: omip links its source until its guide is published --- data/stack.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/stack.json b/data/stack.json index 3d545ce..7417358 100644 --- a/data/stack.json +++ b/data/stack.json @@ -75,7 +75,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", "get": ["mip:pydevices", "pip:pydevices", "firmware"], "runs": "MP, CP, Desktop"}, {"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"},