Bricked Radxa Zero? "** Invalid partition 1 **"

Another thread finally mentioned what the correct command sequence is. I spent hours on this… Frustrating that the documentation is so bad.

Install prerequisites:

sudo apt install python3-pip curl
sudo pip3 install pyamlboot
bash <(curl -s https://raw.githubusercontent.com/corbindavenport/nexus-tools/master/install.sh)

That bash script above is somewhat broken on some distros and will not correctly add ~/.nexustools to PATH. You might have to do this by hand or use ~/.nexustools/fastboot directly.

Then get these images:

wget https://dl.radxa.com/zero/images/loader/rz-udisk-loader.bin
wget https://dl.radxa.com/zero/images/loader/rz-fastboot-loader.bin
wget https://dl.radxa.com/zero/images/loader/factory-loader.img

Replug the Zero with the USB button pressed. Then do this one time only:

sudo boot-g12.py factory-loader.img
sudo fastboot flashing unlock_critical
sudo fastboot flashing unlock

Replug the Zero with the USB button pressed. Then erase the entirety of the eMMC (can be done many times):

sudo boot-g12.py rz-fastboot-loader.bin
sudo fastboot erase bootloader
sudo fastboot erase 0
sudo fastboot erase 1

Replug the Zero with the USB button pressed. After that we can go into usb-disk mode to use Etcher:

sudo boot-g12.py rz-udisk-loader.bin

Of note: It’s really useful to use the UART port for debugging. I don’t see how I would have ever figured it out otherwise. Not very user friendly for sure. But that leads me to a much bigger concern: UART1 is not user accessible anymore. My plan was to investigate if the Radxa Zero could be used as a drop in replacement for a Raspberry Zero for use in a Prusa 3D printer. In the way the UART1 port is used right now that will not work since the Einsy RAMBo expects UART1 to be a normal serial device :-(((

3 Likes