I was able to source a Raspberry Pi 3B V1.2 locally for a discount. It was discounted as the Mico-SD card slot cover was broken off. I was able to boot regularly by clamping the SD card onto the connectors, but this wasn’t the best. I wanted to boot via USB so it would be usable.
I followed this tutorial from The Pi.
First, I updated the Pi and rebooted it.
sudo apt-get update
sudo apt-get upgrade
Next, I added the boot option to the config.
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
I did another
sudo reboot and checked that the output of
vcgencmd otp_dump | grep 17.
3020000a, so it should be done.
sudo nano /boot/config.txt to remove the line I added earlier in case I used it in another Pi.
I flashed a USB drive with Raspbian, but didn’t get any output. This might be due to some USB’s not working. It was a Kingston USB, so I tried a 32 GB Sandisk Cruzer Dial instead. Booting with this resulted in a rainbow screen, and then it started generating SSH keys. However, the screen suddenly went black and after a few minutes I didn’t have any output and it didn’t show up on my network.
I bought a 32 GB SanDisk Ultra Fit USB 3.1 USB since it was small and the low profile would make it less obtrusive. Since I got it from Amazon, I wasn’t sure if the flash drive was genuine or fake. I tested the drive with F3XSwift and it passed.
After writing Raspbian onto the drive, I was able to plug it into the Pi and boot. I saw a rainbow again like last time, but it didn’t go black and continued starting up. I was able to get to the login screen without any issues.
It might not have been worth getting the Pi with its damaged MicroSD slot, but it was interesting learning about USB booting on Pi’s. It’s great to have another Pi for any future projects.