Skip to content

PicoMultiLoader v1.2.0

Latest

Choose a tag to compare

@hexadevti hexadevti released this 20 Oct 16:16
· 5 commits to main since this release

PicoMultiLoader is an SD-card firmware loader for the ClockworkPi PicoCalc. Copy firmware files to the microSD card, pick one on the LCD, and the loader flashes and starts it. This release adds file management on the PicoCalc and makes the web file manager easier to use.

What's new

Copy, move and delete on the PicoCalc (all boards)

  • F2 opens a menu for the selected file or folder: Copy, Cut (to move it), Paste here, Delete, and Forget the copied item.
  • Shortcuts in the file list:
    • C: copy.
    • X: cut.
    • V: paste into the folder shown.
    • Del: delete.
    • Esc: forget what was copied.
  • The usual flow: Copy or Cut, open another folder, then Paste. The footer shows what is waiting to be pasted, and after each operation it shows the result.
  • Copying:
    • Works on files and whole folders, with a progress bar and the name of the file being copied.
    • Copies keep the original dates.
    • If the name is already taken, the copy gets a number, e.g. app (2).uf2.
    • If a copy fails partway, for example because the card is full, the half-written file is removed.
  • Moving:
    • It is instant, even for big folders.
    • It refuses if the destination already has an item with that name, and it won't move a folder into itself.
  • Deleting asks for confirmation first. Deleting a folder deletes everything in it.
  • Pico 2 W: pml2350.uf2 in the root (the loader menu itself) can't be deleted or moved from the PicoCalc. The web file manager keeps working while a copy runs.
  • Serial console: F2 works there too (ESC O Q or ESC [12~).

Web file manager (ESP32-P4 and Pico 2 W)

  • Select several files with the checkboxes, or use "select all", then:
    • Download them (one after another, with progress).
    • Move them to another folder through a folder picker.
    • Delete them.
  • Sort by name, size or date by clicking a column header; click again to reverse the order. Folders always stay on top, and the choice is remembered.
  • Paste to upload: press Ctrl+V in any folder to upload the files on the clipboard, including screenshots. A pasted image gets a name like pasted-20261020-153000.png.
  • The transfer panel no longer runs off the screen when you upload many files. It shows "Transferring X of N", and its list scrolls. Finished items disappear, failed ones stay so you can see them, and Hide closes the panel.
  • Big folders show their loading progress ("Loading… 340 items"). Opening another folder while one is loading cancels the first one.
  • ESP32-P4: big folders load faster, because the listing is sent in larger pieces.

Files

Board File What it is
ESP32-P4 (Waveshare ESP32-P4-WIFI6) PicoMultiLoader-v1.2.0-esp32p4-full.bin bootloader + partition table + otadata + loader, for a first install. Flash at 0x0.
ESP32-P4 PicoMultiLoader-v1.2.0-esp32p4-app.bin the loader only, to update and keep the installed app. Flash at 0x20000.
Pico / Pico W (RP2040) PicoMultiLoader-v1.2.0-rp2040.uf2 the whole loader, copied through BOOTSEL
Pico 2 W (RP2350) PicoMultiLoader-v1.2.0-rp2350.uf2 the boot stub, copied through BOOTSEL. Unchanged since v1.1.0.
Pico 2 W (RP2350) pml2350.uf2 the loader menu. Copy it to the root of the SD card and keep this exact name.
all SHA256SUMS.txt checksums

The ESP32-P4 files are built for chip revision v3.x with 32 MB flash. Run esptool --chip esp32p4 chip_id to check your chip. For a v1.x chip, build from source.

Updating from v1.1.0

  • Pico 2 W (RP2350): copy the new pml2350.uf2 to the root of the SD card, replacing the old file. That's all: the boot stub hasn't changed, so you don't need BOOTSEL. You can do it from the web file manager too.
  • Pico (RP2040): hold BOOTSEL, plug the Pico into USB, and copy PicoMultiLoader-v1.2.0-rp2040.uf2 to the RPI-RP2 drive. The installed app is kept.
  • ESP32-P4: flash only the loader to keep your app:
    esptool --chip esp32p4 -p COMx -b 460800 write_flash 0x20000 PicoMultiLoader-v1.2.0-esp32p4-app.bin
    

First install

ESP32-P4

  1. Connect the board's USB-C port (the CH343 serial port).
  2. Flash the full image:
    esptool --chip esp32p4 -p COMx -b 460800 write_flash 0x0 PicoMultiLoader-v1.2.0-esp32p4-full.bin
    
    If the board doesn't enter download mode by itself, hold BOOT, press RESET, then let go of BOOT.

Raspberry Pi Pico (RP2040)

  1. Hold BOOTSEL, plug the Pico into USB, and copy PicoMultiLoader-v1.2.0-rp2040.uf2 to the RPI-RP2 drive. This replaces uf2loader.
  2. Put the Pico in the PicoCalc and switch it on.

Raspberry Pi Pico 2 W (RP2350)

  1. Hold BOOTSEL, plug the Pico 2 W into USB, and copy PicoMultiLoader-v1.2.0-rp2350.uf2 to the RP2350 drive. This replaces uf2loader.
  2. Copy pml2350.uf2 to the root of the SD card (FAT16 or FAT32).
  3. Put the Pico in the PicoCalc and switch it on.

Use it

  • Hold Up, F1 or F5 while switching on to get the menu instead of the installed app.
  • Up/Down picks a file and Enter shows its details. Press Enter again to flash and start it. Backspace or Left goes to the parent folder.
  • F1: Setup and the help.
  • F2: copy, move or delete.
  • F4: the web file manager (ESP32-P4 and Pico 2 W).
  • F5: USB drive mode.

The README has the full documentation and build instructions.