pico and pico2 binaries are swapped #121

Closed
opened 2026-01-06 06:09:26 +08:00 by StStME · 5 comments

I wondered for quite a while why I were not able to install the pico-hsm image onto my PR2350_One.
It seems the binaries are swapped:

******@MacBook picotool % ./picotool info                                               
Program Information
 name:          RP2350_One_Test
 version:       0.1
 features:      USB stdin / stdout
 binary start:  0x10000000
 binary end:    0x10007d28
 target chip:   RP2350
 image type:    ARM Secure
******@MacBook picotool % ./picotool load -v -x ../../Downloads/pico_hsm_pico-5.6.uf2 -f
Family ID 'rp2040' cannot be downloaded anywhere
ERROR: This file cannot be loaded onto a device with no partition table
******@MacBook picotool % ./picotool load -v -x ../../Downloads/pico_hsm_pico2-5.6.uf2 -f
Family ID 'rp2350-arm-s' can be downloaded in absolute space:
  00000000->02000000
Loading into Flash:   [==============================]  100%
Verifying Flash:      [==============================]  100%
  OK

The device was rebooted to start the application.
I wondered for quite a while why I were not able to install the pico-hsm image onto my PR2350_One. It seems the binaries are swapped: ```bash ******@MacBook picotool % ./picotool info Program Information name: RP2350_One_Test version: 0.1 features: USB stdin / stdout binary start: 0x10000000 binary end: 0x10007d28 target chip: RP2350 image type: ARM Secure ******@MacBook picotool % ./picotool load -v -x ../../Downloads/pico_hsm_pico-5.6.uf2 -f Family ID 'rp2040' cannot be downloaded anywhere ERROR: This file cannot be loaded onto a device with no partition table ******@MacBook picotool % ./picotool load -v -x ../../Downloads/pico_hsm_pico2-5.6.uf2 -f Family ID 'rp2350-arm-s' can be downloaded in absolute space: 00000000->02000000 Loading into Flash: [==============================] 100% Verifying Flash: [==============================] 100% OK The device was rebooted to start the application. ```

Could you try with this version? https://github.com/polhenarejos/pico-hsm/releases/download/v6.4/pico_hsm_pico-6.4.uf2

I fixed a problem with the flash write for boards of 2MB like Pico.

Could you try with this version? https://github.com/polhenarejos/pico-hsm/releases/download/v6.4/pico_hsm_pico-6.4.uf2 I fixed a problem with the flash write for boards of 2MB like Pico.

Hi @polhenarejos ,

I tested it but with the same result. I have a RP2350 based Board which should run with the pico_hsm_pico build.
However it does not work, instead I still have to flash the pico2 binary for the UF2 to be detected and also in case of the pico flash tools to be loaded.

This is a Picture of the Chip I am running on:

Image
Hi @polhenarejos , I tested it but with the same result. I have a RP2350 based Board which should run with the pico_hsm_pico build. However it does not work, instead I still have to flash the [pico2 binary](https://github.com/polhenarejos/pico-hsm/releases/download/v6.4/pico_hsm_pico2-6.4.uf2) for the UF2 to be detected and also in case of the pico flash tools to be loaded. This is a Picture of the Chip I am running on: <img width="459" height="369" alt="Image" src="https://github.com/user-attachments/assets/3c4f135d-c0e3-4572-8b54-29976bcf2543" />

Pico -> rp2040
Pico2 -> rp2350

Your board works with pico2 release.

Pico -> rp2040 Pico2 -> rp2350 Your board works with pico2 release.

Okay, I think I get the issue. I am not so familiar with the pico types (yet).

Leaving a small hint bevor closing the issue:

I [read the docs](https://www.picokeys.com/getting-started/#:~:text=Finder%20named%20RPI%2DRP2%20(for%20RP2040%20boards)%20or%20RP2350%20(for%20RP2350%20boards) and I was very sure that the 2350 will need the pico uf2. Maybe that could be refined a bit to be clearer.

Thanks for the support and sorry for wasting our time :D

Okay, I think I get the issue. I am not so familiar with the pico types (yet). Leaving a small hint bevor closing the issue: I [read the docs](https://www.picokeys.com/getting-started/#:~:text=Finder%20named%20RPI%2DRP2%20(for%20RP2040%20boards)%20or%20RP2350%20(for%20RP2350%20boards) and I was very sure that the 2350 will need the pico uf2. Maybe that could be refined a bit to be clearer. Thanks for the support and sorry for wasting our time :D

It's a bit confusing. The mounted unit for RP2040 is called RP2 and for RP2350 is RP2350. This name cannot be changed since it's hardcoded in the bootloader, but I'll put a clarification.

It's a bit confusing. The mounted unit for RP2040 is called RP2 and for RP2350 is RP2350. This name cannot be changed since it's hardcoded in the bootloader, but I'll put a clarification.
Sign in to join this conversation.