Skip to content

Module pages: one firmware card, one confirm box - #143

Merged
renatorgr merged 6 commits into
mainfrom
module-firmware-tab-simple
Nov 13, 2026
Merged

renatorgr merged 6 commits into
mainfrom
module-firmware-tab-simple

Conversation

@renatorgr

Copy link
Copy Markdown
Owner

Requested by Renato · project thread

What changes

The Firmware tab of the four module pages (Teensy, XIAO, sprayer, seed drill) now works the same way everywhere:

  • One card per device. Rows Installed, On GitHub (with a tag: newer, installed or older) and, on the Teensy, Previous. A line "checked at HH:MM · Check now · See on GitHub". Two buttons: Install from GitHub and Install from a file…. The progress bar and the messages sit inside the same card. Restart / Go back sit at the bottom of the card, behind a line.
    • XIAO page: a XIAO firmware card and a Module (Teensy) firmware card with the same layout.
    • Teensy page: a Teensy firmware card and a This Teensy card (board, processor, last start, watchdog, Restart Teensy).
  • One confirmation box for every install, go back and restart. Install from a file… opens the file picker at once. As soon as a file is chosen, the box shows the file, what is inside (version, build date, board) and what runs now, says newer / the same / older, and asks the password in the same box (not on the Teensy page, which has none). The password is offered again while the page stays open.
  • Wrong files are refused in the box at once, with the reason, and only Choose another file / Close: the .merged.bin, a _USB.bin on the XIAO (the first-install-over-USB-C file), another module's program, the other board or chip.
  • "Other firmware" is gone from the tab. When a file needs it (a .hex without the update page inside, a .bin without the XIAO firmware's name), the box shows a warning and Install waits for Install it anyway to be ticked.
  • In the smallest AgOpenWeb web card (480 x 320) the box's buttons stay in sight at the bottom and the rest scrolls.
  • Sprayer 0.10.8, seed drill 0.2.9; their .bin / .merged.bin and the XIAO C3 / S3 .bin / _USB.bin rebuilt (esp32 core 3.3.12, 13 Nov 16:53-16:55).

Nothing changes in the firmware itself (the update and safety code), only the pages, the READMEs and the page test.

Not compiled here

The Teensy firmware cannot be compiled in Claude's cloud sessions (pjrc.com is blocked). The Teensy page (zWebPage.h) changed, so please compile v4.5_AiO_WEB before merging (the "Teensy firmware" check compiles it too). The ESP32 programs were compiled here.

How to test

  1. Simulator (after the merge, or open the pages from the branch): https://renatorgr.github.io/Boards/
    • Teensy page with ?park=1, Firmware tab: Install from a file… with v4.5_AiO_WEB.ino.hex → the box shows Inside / Runs now → Install → the module restarts → Go back to the previous firmware shows its box.
    • Sprayer and seed drill pages, Firmware tab: Install from a file… with a .merged.bin → refused in the box with the reason.
    • XIAO page, Firmware tab: Install from a file… with v4.5_XIAO_ESP32C3_USB.bin → refused; the same for the module card with a .hex.
  2. Bench: XIAO Install from GitHub (with the password), then the Teensy page Install from a file… with your new .hex.
  3. The page test (smoke-test.js) passes locally with all the new boxes, including the 480 x 320 web card.

Builds on #141 (already merged).


Generated by Claude Code

…tay in sight in a small card

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VKEBDExiBfhc2kqS2oVVpp
…; READMEs

- Sprayer_ESP32 0.10.8 and Seeder_ESP32 0.2.9: the Firmware tab in one
  card, one box that says what a file holds before it is installed.
- .bin and .merged.bin of both, XIAO C3 / S3 .bin and _USB.bin compiled
  with the esp32 core 3.3.12 (13 Nov 16:53-16:55). The Teensy .hex is not
  rebuilt here (the cloud cannot compile it).
- READMEs: the new Firmware tab, Install from a file…, Install it anyway,
  the 13 Nov changelog rows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VKEBDExiBfhc2kqS2oVVpp
@renatorgr renatorgr self-assigned this Nov 13, 2026
@renatorgr
renatorgr marked this pull request as ready for review November 13, 2026 17:10
@renatorgr
renatorgr merged commit dd247f5 into main Nov 13, 2026
5 checks passed
@renatorgr
renatorgr deleted the module-firmware-tab-simple branch November 13, 2026 17:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants