Controller firmware using a USB flash drive
Attention! This method only works on Armbian 20.11 and HAOS 6.x firmwares. After updating to Armbian 22.02/HAOS 8.x, it is not possible to update the firmware using this method.
You can flash the controller using a USB flash drive (hereinafter referred to as a flash drive) with a partition formatted in W95 FAT32 LBA (NTFS partitions are not readable by u-boot).
You need to put the jethome_burn.ini file and the firmware file on the USB flash drive (hereinafter in the example - firmware.img).
Contents of the jethome_burn.ini file:
[common] reboot=0 erase_bootloader=1 erase_flash = 1 [burn_ex] package=firmware.img
The jethome_burn.ini file must end with a newline.
If you set the "reboot" parameter to 1, then the controller will flash, reboot and immediately flash in a circle. You can do without specifying the "reboot" property, since "reboot" is assumed to be 0 by default.
Insert the flash drive into the controller and apply power. After loading u-boot, if the flash drive was successfully detected, the flashing process will automatically begin.
Since the controller will not reboot itself after flashing, in order to determine the end of the software update process, you can control the software update process through the UART console (see the documentation for the controller on connecting the UART console). At the end of the firmware process, unplug the flash drive and reboot the controller.
Supported USB flash drives
Tested to work with the following USB flash drives:
- SanDisk Cruzer Fit USB 2.0 16GB (idVendor=0781, idProduct=5571) factory formatted.
Description of the contents of jethome_burn.ini
erase_bootloader - two values (0 or 1): 1 - erase bootloader, 0 - do not erase bootloader
erase_flash - five values (from 0 to 4):
0 - Do not erase flash (do not erase)
1 - Normal erase (normal erase, as with normal firmware via USB Burning Tool)
2 - Force Erase (no information)
3 - Erase all (erase the contents of NAND / eMMC and bootloader that are in the protected area)
4 - Force erase all (complete erasure, including protected NAND / eMMC / SPI areas, formatting and repartitioning partitions)
reboot - Two values (0 and 1): 1 - reboot when procedures are finished, 0 - do not reboot.
package - the name of the *.img file for flashing from a memory card. You can change to what you need.
You can edit the parameter values in this file, but you should understand what you are doing and remember that you do it at your own risk.
That is, if you need, for example, to completely remap NAND during firmware, you should edit the corresponding line in the aml_sdc_burn.ini file: erase_flash = 4