Skip to main content

Android 6.0.1.1 - i.MX6

IoTGateway/BSP/Android​

Introduction​

This user guide provides comprehensive instructions for setting up and building Advantech Android BSP (Board Support Package) for RISC platform devices.

Setup Host Computer​

Setup Ubuntu Host Computer​

Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.

Go to http://releases.ubuntu.com/14.04/ and download 64-bit PC (AMD64) desktop image: http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso for the installation.

Install Required Packages​

Java​

$ sudo apt-get install openjdk-7-jdk

Freescale Android User's Guide Dependencies​

$ sudo apt-get update
$ sudo apt-get install uuid uuid-dev
$ sudo apt-get install zlib1g-dev liblz-dev
$ sudo apt-get install liblzo2-2 liblzo2-dev
$ sudo apt-get install lzop
$ sudo apt-get install git-core curl
$ sudo apt-get install u-boot-tools
$ sudo apt-get install mtd-utils
$ sudo apt-get install android-tools-fsutils

Android Open Source Project (AOSP)​

Reference: http://source.android.com/source/initializing.html

sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
libgl1-mesa-dev libxml2-utils xsltproc unzip

Setup Advantech Android BSP In RISC Platform​

The BSP contains cross toolchain, linux kernel source code, u-boot source code, Android root file system and some scripts. It consists of three top folders: "android", "image", "scripts".

Directory Structure​

prebuilt/gcc/linux-x86/host/   : cross toolchain
bootable/bootloader/uboot-imx/ : u-boot source code
kernel_imx/ : linux kernel source code
device/fsl/ : Android device related settings
fsl-proprietary/ : modules & firmware (e.g. WiFi, GPU)
processors/imx/ : HAL (Hardware Abstraction Layer)
image/ : all built images located in
scripts/ : to simplify building process

Naming Rule​

The naming convention consists of the model name followed by "AB" plus version number. For example, 4410ABV2080 where:

  • "4410" stands for RSB-4410
  • "AB" is acronym of Android BSP
  • "V2080" stands for Version 2.080

Supported Model Names:​

"3420" stands for ROM-3420
"5420" stands for ROM-5420
"7420" stands for ROM-7420
"DS31" stands for UBC-DS31
"U220" stands for UBC-220

Build Instructions​

To Build Boot Loader​

Perform the following command in terminal console:

$ make -j4 bootloader

The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory: ./out/target/product/product_name

To Build Boot Image​

Perform the following command in terminal console:

$ make -j4 bootimage

To Build System Image​

Perform the following command in terminal console:

$ make -j4 systemimage
$ out/host/linux-x86/bin/simg2img out/target/product/$PRODUCT/system.img out/target/product/$PRODUCT/system_raw.img
$ mv out/target/product/$PRODUCT/system_raw.img out/target/product/$PRODUCT/system.img

Note: simg2img is a tool that converts a sparse system image to a raw system image on a Linux host PC and is located in myandroid/out/host/linux-x86/bin/simg2img.

To Build Recovery Image​

Perform the following command in terminal console:

$ make -j4 recoveryimage

To Build OTA Package​

Perform the following command in terminal console:

$ make -j4 otapackage

Boot Up from SD Card or eMMC​

To Create SD Card​

Perform the following command in terminal console:

$ cd {BSPHOME}/scripts
$ ./mksd-android.sh ${SD_DEVICE}

To Flash to eMMC​

Perform the following command in terminal console:

$ cd /data/mkimage/scripts
$ sh ./mksd-android.sh ${MMC_DEVICE}

Additional Resources​