The ConnectCore 8X SBC device ships without an operating system loaded. Only U-Boot is programmed in the device. The following instructions demonstrate how to install Android in your device.

1. Download the firmware

  1. Download the firmware images from https://ftp1.digi.com/support/android/11.0/r2/images/ccimx8xsbcpro-installer.zip.

  2. Decompress ccimx8xsbcpro-installer.zip in a directory of your choice.

2. Program the firmware

Once you have established a serial connection with your device, you can start the firmware update process. There are multiple methods of programming the firmware to the target:

Program the firmware using UUU

  1. Set up the device:

    1. Connect a USB type-C cable to your development PC and the other end to the target USB type-C connector.

    2. Change the boot mode configuration to boot from USB. To do so, set the boot mode micro-switches as follows:

      • BOOT.1 ON

      • BOOT.2 ON

        USB boot
    3. Reset the device by pressing the Reset button on the board. No output is displayed in the console.

  2. Set up the development PC:

    1. Download the latest Universal Update Utility (UUU), a software tool from NXP.

      UUU version should be 1.5.11 or higher.
    2. Place the uuu executable in a directory in your PATH, such as /usr/bin.

    3. Install udev rules to allow any user to run uuu to access the USB port:

      $ sudo sh -c "uuu -udev >> /etc/udev/rules.d/70-uuu.rules"
      $ sudo udevadm control --reload
  3. Install the firmware:

    1. On your development PC, change to the directory where you extracted the ZIP file:

      $ cd <zip-folder>
    2. Run the install_android_fw_uuu.sh script to program the downloaded image files:

      $ ./install_android_fw_uuu.sh first-deploy -u u-boot-ccimx8xsbcpro2GB-<variant>.imx

      See U-Boot files by variant to verify which U-Boot binary you need.

  4. Boot from the internal eMMC.

    1. Change the boot mode configuration to boot from the internal eMMC. To do so, set the boot mode micro-switches as follows:

      • BOOT.1 OFF

      • BOOT.2 OFF

        eMMC boot
    2. Reset the device by pressing the Reset button on the board.

Program the firmware using uSD card

  1. Place the decompressed files in the root of a FAT formatted microSD card and insert it in the microSD socket of your device.

  2. Open a serial connection with the device. You can use any serial terminal program such as Tera Term, Minicom, CoolTerm, or HyperTerminal.

    PuTTY terminal program is not recommended due to an incompatibility with the USB/serial driver.

    Open a serial connection with the following settings:

    Parameter Value

    Port

    Serial port where the device is connected

    Baud rate

    115200

    Data bits

    8

    Parity

    None

    Stop bits

    1

    Flow control

    None

  3. Reset the device by pressing the Reset button on the board, and immediately press any key in the serial terminal to stop the auto-boot process. The U-Boot bootloader prompt displays:

    U-Boot SPL dub-2020.04-r2.2 (Jan 18 2021 - 15:54:04 +0000)
    Normal Boot
    Trying to boot from MMC1
    Primary set selected
    Load image from MMC/SD 0x5f400
    
    
    U-Boot dub-2020.04-r2.2 (Jan 18 2021 - 15:54:04 +0000)
    
    CPU:   NXP i.MX8QXP RevB A35 at 1200 MHz at 25C
    DRAM:  2 GiB
    MCA:   HW_VER=1  FW_VER=1.01
    MMC:   FSL_SDHC: 0, FSL_SDHC: 1
    In:    serial
    Out:   serial
    Err:   serial
    Model: Digi International ConnectCore 8X SBC Pro Board.
    ConnectCore 8X SOM variant 0x02: 2 GiB LPDDR4, Wi-Fi, Bluetooth, MCA, Crypto-auth
      Board version 3, ID 135
    Boot:  MMC0
    
     BuildInfo:
      - SCFW 56682d58, SECO-FW 0e4b9cee, IMX-MKIMAGE 8da5cd23, ATF c949a88
      - U-Boot dub-2020.04-r2.2
    
    flash target is MMC:0
    Net:   eth0: ethernet@5b040000 [PRIME], eth1: ethernet@5b050000
    Fastboot: Normal
    Normal Boot
    Hit any key to stop autoboot:  0
    => 
  4. Install the firmware into the internal eMMC, executing the following commands:

    => run install_android_fw_sd

    During installation, error messages appear when the installation process attempts to override MAC addresses. These messages are expected.

    ## Resetting to default environment
    oldval: 00:40:9D:7D:17:9A  defval: 00:04:f3:ff:ff:fa
    ## Error: Can't overwrite "ethaddr"
    himport_r: can't insert "ethaddr=00:04:f3:ff:ff:fa" into hash table
    oldval: 00:40:9D:7D:17:9B  defval: 00:04:f3:ff:ff:fb
    ## Error: Can't overwrite "eth1addr"
    himport_r: can't insert "eth1addr=00:04:f3:ff:ff:fb" into hash table
    oldval: 00:40:9D:7D:17:9C  defval: 00:04:f3:ff:ff:fc
    ## Error: Can't overwrite "wlanaddr"
    himport_r: can't insert "wlanaddr=00:04:f3:ff:ff:fc" into hash table
    oldval: 00:40:9D:7D:17:9D  defval: 00:04:f3:ff:ff:fd
    ## Error: Can't overwrite "btaddr"
    himport_r: can't insert "btaddr=00:04:f3:ff:ff:fd" into hash table

3. Verify Android has started

Once the firmware is installed, the device boots automatically.

The first Android boot takes several minutes due to system deployment.

Work with your device as with any standard Android device. From the home screen, swipe up from the dock to navigate and explore the applications or configure your device in the Settings application.