Cannot update eMMC image with SD Card

I’m trying to follow these instructions to create a Burning Card for the VIM3:

Everything seemed to go well. I changed the package name in aml_sdc_burn.ini to:

package = VIM3_Ubuntu-server-focal_Linux-5.16-rc2_arm64_SD-USB_V1.0.10-220131-develop.img

Which is the name of the image I built. I copied both files on the SD card on a partition that starts at 4096.

I had previously loaded Android on the VIM3. I hold power, then hit reset, and keep holding power for a few seconds. The LED turns white for a few seconds, then begins to blink. Unfortunately, Android boots up, so the image clearly wasn’t updated. I also tried using u-boot.bin instead of u-boot.bin.sd.bin, but that didn’t work either.

How do I update the eMMC image on the VIM3?

let me give you the easiest way.

Download Burn Tool on a windows PC, link below:
https://dl.khadas.com/Tools/USB_Burning_Tool_v2.2.4.zip

Download an EMMC Ubuntu Image from below link:

Connect your vim3 (type-C port) to PC via USB cable. It should auto boot to flash mode, if not then press its middle button 3-times quickly.

Wait for the drivers to recognize etc, and then import above image in Burn tool and flash.

If flash fails, take another attempt and it will succeed. Then you can disconnect the board and power it up normally.

Above method will be same for flashing android to EMMC, link for those shared below:

USB Burn Tool is the safest and foolproof method to acheive this, however if you are comfortable with KRESCUE, thats much easier.

Thanks for the response. However, I already have the burn tool working. The problem is, I am working on Linux, and I’m trying to avoid having to transfer images between computers and switching from PC to Linux every time I want to load a new image.

Then your best bet is to flash mainline uboot to SPI, set bootmode to SPI and prepare a KRESCUE SDCARD. Then you can always boot to krescue no matter what you do on emmc and you will always have an independently booting vim3 and if you have wifi, you can install all the OSes available on Khadas website.

Furthermore you can keep different OSes installed on different USB flash drives. They will always be bootable because uboot is on SPI and whatever you do on EMMC wont matter. the only downside is you need many USB drives and they are slightly slower compared to EMMC.

@LydiaJ I see that you wrote “update”, but you seem to be talking about replacing Android with Ubuntu on the eMMC, so I’ll assume you meant “replace” not “update”.

For that to work, you need to download an SD/USB image from Khadas VIM3 Ubuntu Firmware | Khadas Documentation, then use dd write it to an SD card (see dd section of Install System into SD/USB Storage | Khadas Documentation, at the bottom). The card will be overwritten, and after that, in it you will find the files that were contained in the .img, not the .img file itself. That’s how it should be.

Then you can put that SD card in the VIM3, and let it boot from that. Once booted, login and run emmc-install . That will reformat the eMMC and copy on it the files from the SD. Then you can power off, remove the SD card, reboot, and enjoy Linux.

Beware that emmc-install have a bug right now. I wrote about it earlier