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 :-(((