Skip to content

Firmware downloads page (staged, do not merge yet) - #25

Draft
bdbarnett wants to merge 9 commits into
mainfrom
firmware-page-staged
Draft

bdbarnett wants to merge 9 commits into
mainfrom
firmware-page-staged

Conversation

@bdbarnett

Copy link
Copy Markdown
Contributor

The page for flashable OmniPython firmware: a board picker, an Install button (ESP Web Tools, vendored), the generated esptool steps, the erase warning, and the desktop interpreters from the newest pydevices final that carries them.

It is held on this branch so it is not served: the site publishes main. Preview it with python3 -m http.server 8000 from a checkout of this branch and open http://localhost:8000/firmware/. The data is a staged set built from preview pins; merging it puts the page at /firmware/ (still unlinked).

Data is laid out by micropython-pydevices' scripts/stage_firmware_page.py.

… generated steps, desktop interpreters

Not linked from anywhere. The data is the staged set staged-20261020 (preview pins);
firmware/vendor/esp-web-tools is ESP Web Tools 10.4.0 unmodified.
Images print a real version in sys.version (v1.30.0-preview.160...), board builds leave out the desktop-only files, and CircuitPython images carry asyncio. The check step says what the version looks like.
CircuitPython images print 11.0.0-alpha.1 with no -dirty, and the CircuitPython check step now says what the version string starts with.
Firmware page: baud hint, --port on the app-only line, activate the venv
Firmware page: how to put a native-USB board in download mode
Pick a .bin or .uf2 you built and the page writes it the way it writes
the release builds. A .bin gets a chip choice, preset from the image
header, and the release manifests' offset: 0x2000 for a merged ESP32-P4
image, 0x0 for the S3 and for any whole-flash image. The page builds an
ESP Web Tools manifest as a Blob URL whose part is a Blob URL of the
file, and hands it to the vendored install button, which resolves blob:
manifests and parts as they are. Chips outside BROWSER_INSTALL, and
browsers without Web Serial, get the esptool steps with the file's name.
An application image is refused, since it would boot-loop at the
bootloader offset. A .uf2 gets the copy-to-drive steps. Both show the
mpftp line for flashing from a terminal.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant