Once you have generated the images, you can use them to update your Android system from U-Boot. This process is recommended to:
-
Test and evaluate changes and/or new features during the development phase (see Build your development images).
-
Flash final release images already signed with your own private keys in the manufacturing process (see Generate release custom images).
If your device is not booting U-Boot see Recover your device. |
Follow these steps to update eMMC partitions:
1. Set up your computer
-
Download the latest Universal Update Utility (UUU), a software tool from NXP.
UUU version should be 1.5.11 or higher. -
Place the
uuu
executable in a directory in your PATH, such as/usr/bin
. -
Install
udev
rules to allow any user to runuuu
to access the USB port:$ sudo sh -c "uuu -udev >> /etc/udev/rules.d/70-uuu.rules" $ sudo udevadm control --reload
2. Obtain the firmware image files
The list of files built by Digi Embedded for Android is:
-
u-boot-ccimx8mmdvk.imx
. See U-Boot files by variant to select the appropriate file for your hardware variant. -
partition-table.img
-
dtbo-imx8mm.img
-
boot.img
-
vendor_boot.img
-
vbmeta-imx8mm.img
-
super.img
These image files can be:
-
Development images located inside the
out/target/product/ccimx8mmdvk
directory after building the development firmware. See Build your development images for more information about building the Android system. -
Production images, already signed with your release keys. See Generate release custom images.
-
Digi pre-built images, which you can download from:
3. Set up your device
-
Connect a micro USB cable to your development PC and the other end to the target USB recovery connector. See Step 2 - Set up the hardware for instructions.
-
Change the boot mode configuration to boot from USB. To do so, set the boot mode micro-switches as follows:
-
S1.1: ON
-
S1.2: ON
-
S1.3: N/A
-
S1:4: N/A
-
-
Reset the device by pressing the Reset button on the board.
4. Update firmware with UUU
-
On your development PC, change to your Digi Embedded for Android output directory,
out/target/product/ccimx8mmdvk
:$ cd out/target/product/ccimx8mmdvk
-
Run the
install_android_fw_uuu.sh
script withhelp
parameter to check the syntax:$ ./install_android_fw_uuu.sh help Usage: install_android_fw_uuu.sh MODE <options> MODE help Displays this help message. first-deploy Completely erases and programs images including the bootloader from the USB. development Programs Android images. tf-deploy Similar to 'first-deploy' but for TrustFence images in closed devices. 'first-deploy' options: -u <uboot_filename> U-Boot file name located at images directory. -p <part_table_filename> Partition table file name located at images directory. 'partition-table.img' if not specified. -d <images_dir> Directory where images are located. Current directory if not specify. -n No wait. Skips 10 seconds delay to stop script. 'development' options: -d <images_dir> Directory where images are located. Current directory if not specify. -wipe Wipe data partitions. 'tf-deploy' options: -lu <uboot_filename> U-Boot file to load from USB. It must be a signed bootloader image without Trusty. -u <uboot_filename> U-Boot file name located at images directory. It must be a signed bootloader image with Trusty. -p <part_table_filename> Partition table file name located at images directory. 'partition-table.img' if not specified. -d <images_dir> Directory where images are located. Current directory if not specify. -n No wait. Skips 10 seconds delay to stop script. $
-
Program images in the device executing the script:
-
Program Android images. Use
-wipe
option to wipe data partitions:$ ./install_android_fw_uuu.sh development -wipe
-
Program Android images and the bootloader. This option always wipe data partitions:
$ ./install_android_fw_uuu.sh first-deploy -u u-boot-ccimx8mmdvk.imx
-
Specify the directory where you downloaded the pre-built images with
-d
:-
To flash Android images:
-
$ ./install_android_fw_uuu.sh development -d <pre-built-images-folder> -wipe
-
To flash Android images and the bootloader:
$ ./install_android_fw_uuu.sh first-deploy \ -d <pre-built-images-folder> \ -u u-boot-ccimx8mmdvk.imx
-
Uncompress the signed images zip (see Generate release custom images).
-
Specify the directory where you extracted the ZIP file with
-d
to flash only Android images:
$ ./install_android_fw_uuu.sh development -d <zip-folder>
For a closed device, see Program a closed device. -
-
-
Boot from the internal eMMC.
-
Change the boot mode configuration to boot from the internal eMMC. To do so, set the boot mode micro-switches as follows:
-
S1.1: OFF
-
S1.2: OFF
-
S1.3: OFF
-
S1:4: OFF
-
-
Remove the micro USB cable from the target USB recovery connector.
-
Reset the device by pressing the Reset button on the board.
-
The first Android boot takes several minutes due to system deployment. |