@@ -11,8 +11,7 @@ NC='\033[0m'
1111platforms=(" rp2040" " rp2350" )
1212boards=(" pico_w" " pico2_w" )
1313boards_arch=(" pico" " pico2" )
14- families=(" pico_w" " pico2_w" )
15- output_files=(" picoboot_full_pico.uf2" " picoboot_full_pico2.uf2" )
14+ families=(" rp2040" " rp2350-arm-s" )
1615build_type=" RelWithDebInfo"
1716
1817num_configs=${# platforms[@]}
@@ -44,8 +43,9 @@ for (( i=0; i<num_configs; i++ )); do
4443 platform=" ${platforms[i]} "
4544 board=" ${boards[i]} "
4645 board_arch=" ${boards_arch[i]} "
47- output_file=" ${output_files[i]} "
46+ output_file=" picoboot_full_ ${board_arch} .uf2 "
4847 build_dir=" ${platform} _${board} "
48+ family=" ${families[i]} "
4949
5050 echo -e " ${BLUE} ##########################################################${NC} "
5151 echo -e " 🚀 ${YELLOW} Building for Platform:${NC} ${GREEN}${platform}${NC} , ${YELLOW} Board:${NC} ${GREEN}${board}${NC} "
@@ -62,9 +62,15 @@ for (( i=0; i<num_configs; i++ )); do
6262 echo -e " \n🔨 ${YELLOW} Copying to dist...${NC} "
6363 cp build/${build_dir} /picoboot.uf2 dist/picoboot_${board_arch} .uf2
6464
65+ if [ " ${platform} " == " rp2350" ]; then
66+ # RP2350 workaround for invalid core+payload uf2 file
67+ echo -e " \n🔨 ${YELLOW} RP2350 workaround: Building core uf2 file...${NC} "
68+ picotool uf2 convert build/${build_dir} /dist/picoboot.bin build/${build_dir} /picoboot.uf2 --family rp2350-arm-s
69+ fi
70+
6571 echo -e " \n🔨 ${YELLOW} Merging binaries...${NC} "
6672
67- uf2tool join -o dist/${output_file} build/${build_dir} /picoboot.uf2 dist/payload_${board_arch} .uf2 --family ${platform }
73+ uf2tool join -o dist/${output_file} build/${build_dir} /picoboot.uf2 dist/payload_${board_arch} .uf2 --family ${family }
6874
6975 echo -e " ✨ ${GREEN} Build finished for ${platform} (${board} )!${NC} \n"
7076done
0 commit comments