Repository navigation
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 fixes crashes and freezes on the ESP32-P4, lets the Pico 2 W start RISC-V apps, and lets the web file manager upload whole folders.
What's new
ESP32-P4: fixes
-
Apps no longer crash when started right after switching on. An app that uses PSRAM, such as pico-386, could crash as it started when the loader had just been powered on. The board then rebooted on its own, or the screen stayed black. The loader now leaves the PSRAM controller ready before it starts the app.
-
Fewer freezes on battery with Wi-Fi on. The web file manager now runs Wi-Fi at lower transmit power (13 dBm instead of about 20 dBm). This cuts the current spikes that weak or half-empty batteries can't supply. Range is shorter, which rarely matters with the PicoCalc next to the computer.
If the board still freezes on battery but never with the USB cable plugged in, the batteries can't deliver enough current. Use good, fully charged 18650 cells.
Pico 2 W (RP2350): RISC-V apps
- The boot stub now also starts apps built for the RP2350's RISC-V cores, not just ARM ones. To get this, flash the new
PicoMultiLoader-v1.2.1-rp2350.uf2through BOOTSEL (see below).
Web file manager (ESP32-P4 and Pico 2 W)
- Upload whole folders. Drag folders onto the page, or copy them and press Ctrl+V. The folders are created on the card and every file inside is uploaded. If a folder with the same name exists, you're asked before files are merged into it.
- Uploads retry once when the device is busy or short of memory, instead of failing straight away.
- Pico 2 W: the web server uses less memory, so two browser connections fit at once more reliably.
Files
| Board | File | What it is |
|---|---|---|
| ESP32-P4 (Waveshare ESP32-P4-WIFI6) | PicoMultiLoader-v1.2.1-esp32p4-full.bin |
bootloader + partition table + otadata + loader, for a first install. Flash at 0x0. |
| ESP32-P4 | PicoMultiLoader-v1.2.1-esp32p4-app.bin |
the loader only, to update and keep the installed app. Flash at 0x20000. |
| Pico / Pico W (RP2040) | PicoMultiLoader-v1.2.1-rp2040.uf2 |
the whole loader, copied through BOOTSEL |
| Pico 2 W (RP2350) | PicoMultiLoader-v1.2.1-rp2350.uf2 |
the boot stub, copied through BOOTSEL. New in this release (RISC-V support). |
| 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.2.0
- ESP32-P4: flash only the loader to keep your app:
esptool --chip esp32p4 -p COMx -b 460800 write_flash 0x20000 PicoMultiLoader-v1.2.1-esp32p4-app.bin - Pico 2 W (RP2350):
- Copy the new
pml2350.uf2to the root of the SD card, replacing the old file. You can do this from the web file manager too. - To run RISC-V apps, also hold BOOTSEL, plug the Pico 2 W into USB, and copy
PicoMultiLoader-v1.2.1-rp2350.uf2to theRP2350drive. Skip this if you only use ARM apps.
- Copy the new
- Pico (RP2040): hold BOOTSEL, plug the Pico into USB, and copy
PicoMultiLoader-v1.2.1-rp2040.uf2to theRPI-RP2drive. The installed app is kept. Nothing in this release changes how the RP2040 loader behaves, so this update is optional.
First install
ESP32-P4
- Connect the board's USB-C port (the CH343 serial port).
- Flash the full image:
If the board doesn't enter download mode by itself, hold BOOT, press RESET, then let go of BOOT.
esptool --chip esp32p4 -p COMx -b 460800 write_flash 0x0 PicoMultiLoader-v1.2.1-esp32p4-full.bin
Raspberry Pi Pico (RP2040)
- Hold BOOTSEL, plug the Pico into USB, and copy
PicoMultiLoader-v1.2.1-rp2040.uf2to theRPI-RP2drive. This replaces uf2loader. - Put the Pico in the PicoCalc and switch it on.
Raspberry Pi Pico 2 W (RP2350)
- Hold BOOTSEL, plug the Pico 2 W into USB, and copy
PicoMultiLoader-v1.2.1-rp2350.uf2to theRP2350drive. This replaces uf2loader. - Copy
pml2350.uf2to the root of the SD card (FAT16 or FAT32). - 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.