Download and install the tool

Overview of the SDK Manager tool
The SDK Manager is a command-line tool to generate and flash system images for the robotics development kits on your local host PC. Download the SDK Manager from Thundercomm's website here. The download is a Zip file that contains the installation package and a Readme file. The Readme file has some useful instructions to install the prerequisites and tips to resolve known issues.

Follow the steps below to use the SDK Manager:

  1. Launch the SDK manager on local host PC (Prerequisites listed below)
  2. Enter your login credentials
  3. Select your development platform. The SDK Manager currently supports two different development platforms:
    1. Qualcomm Robotics RB5 development kit
    2. Qualcomm Robotics RB6 development kit
  4. Select the type of system image. There are two types of system images that are available to generate or download using the tool. The “LE” version is based on the Yocto build system, whereas the “LU” version has an Ubuntu-based Rootfs. For the most part both options are designed to have feature parity, but below are some high-level similarities/differences between the two.

  5. Select the version of system image. For the selected development platform and system image type, there are multiple versions available through the tool. Once the version is selected, the final step to download all dependencies, repack, and generate the system images can take a long time depending on the network speed, and type of system image selected.
    More details for each version can be found in the SDK Manager release notes here.

Prerequisites for the local host PC
A workstation with one of the following setups is required to run the SDK Manager.

  • 18.04 Ubuntu Desktop recommended.
  • Other supported: Ubuntu Desktops (Ubuntu16.04, 20.04)
    Note: Using other versions of Ubuntu desktops requires you to run a Docker container with the Ubuntu 18.04 image. The SDK Manager includes a dockerfile that is designed to build the Ubuntu 18.04 docker image with all the dependencies needed for the SDK Manager.
  • Windows 10 Professional or Enterprise.
    Using Windows 10 requires a Docker Desktop for Windows and a container with Ubuntu 18.04. The SDK Manager includes a dockerfile that is designed to build the Ubuntu 18.04 docker image with all the dependencies needed for the SDK Manager.
    If you are using the Docker setup in Windows, the SDK Manager can only be used to generate the system images, it cannot be used to flash the images on to the Qualcomm Robotics RB5 development kit. The files need to be copied to the Windows subsystem and the “TFlash” tool is used to flash the images to the development kit. Instructions for this process are in the SDK Manager’s readme file and instructions to use TFlash are located on Thundercomm’s website.

Follow the steps below to use the SDK Manager:

Note: Before continuing, ensure you have created a username and password on Thundercomm's website.

  1. Install the SDK Manager package on the Linux workstation:$ unzip sdkmanager.zip
    Archive: sdkmanager.zip
    creating: sdkmanager/
    inflating: sdkmanager/README
    inflating: sdkmanager/tc-sdkmanager-v3.0.0_amd64.deb
    $ cd sdkmanager
    $ sudo dpkg -i tc-sdkmanager-v3.0.0_amd64.deb
  2. Run the tool. You should see the following menu. Enter your Thundercomm credentials when prompted:$sdkmanager
    ******************************************************************
    Welcome to SDKmanager version 3.0.0
    This software is designed for resource download/management.
    You can repack system image and flash image builds
    The full process of LU image generation takes at least 40 minutes, depending on the internet speed
    You will need a valid Thundercomm user account to continue
    ******************************************************************

    Setting up host system environment ...
    Hit:1 http://archive.ubuntu.com/ubuntu bionic InRelease
    Get:2 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
    Get:3 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
    Get:4 http://archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
    Get:5 http://security.ubuntu.com/ubuntu bionic-security/restricted amd64 Packages [1131 kB]
    Get:6 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [2318 kB]
    Get:7 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [1540 kB]
    Get:8 http://archive.ubuntu.com/ubuntu bionic-updates/restricted amd64 Packages [1172 kB]
    Get:9 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages [2965 kB]
    Get:10 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [3396 kB]
    Fetched 12.8 MB in 11s (1164 kB/s)
    Reading package lists... Done
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    python is already the newest version (2.7.15~rc1-1).
    0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

    Precondition Ubuntu 18.04 packages installed

    Credential Checking ...
    Enter your Thundercomm username:
    Enter your ThunderComm password:

    Connecting as ...
    Successful authentication

    Target directory stored: /root/
    Continue with this path(overwrites existing files) [Y/n]? Y

    Choose a product
    Enter 1 to use RB5, 2 to use RB6: 1
    You chose RB5 product

    Choose a platform for Robotics RB5 device
    Enter 1 to use LU platform, 2 to use LE platform: 1
    You chose LU platform

    Checking current versions of release ...

    Available versions: 1: QRB5165.UBUN.1.0-220711_debug (latest version)
    2: QRB5165.UBUN.1.0-220711_perf
    3: QRB5165.UBNU.1.0-220413_debug
    4: QRB5165.UBNU.1.0-220413_perf
    5: QRB5165.UBUN.1.0-220118_debug
    6: QRB5165.UBUN.1.0-220118_perf
    7: QRB5165.UBUN.1.0-211118
    8: QRB5165.UBUN.1.0-211112
    9: QRB5165.1.0.0.0.012.1_Post-CS5.r003006_debug
    10: QRB5165.1.0.0.0.012.1_Post-CS5.r003006_perf
    11: QRB5165.UBUN.1.0.0.0.009.1_r003005
    12: QRB5165.UBUN.1.0-210512
    13: QRB5165.UBUN.1.0-210320

    Recommended version: QRB5165.UBUN.1.0-220711_debug

    Select one number of available version ( 1 | 2 | 3 ...) to continue with: 1
    Selected version: QRB5165.UBUN.1.0-220711_debug

    --------------------------------------------------------
    SDK has been successfully set up and is ready to be used
    Type 'help' for commands
    --------------------------------------------------------
  3. Press 1 when prompted to download resources and a generate system image.

    This will take some time and you should see regular updates on the screen. At the end, the system.img will be generated and you will see the following message:
    ....
    commands:
    help = Show usage help
    1 = Download resources and generate system.img with current release
    2 = Flash full build (require system.img generation first)
    3 = Download framework SDKs
    q = exit sdk manager
    > 1
    ...
    [21:23:54] - Zipping - ./NHLOS_Binaries/xbl.elf
    [21:23:54] - Zipping - ./NHLOS_Binaries/m3.bin
    [21:23:54] - Zipping - ./NHLOS_Binaries/soter64.b04
    [21:23:54] - Zipping - ./NHLOS_Binaries/verinfo/Ver_Info.txt
    [21:23:54] - update_common_info.py:============ UPDATE COMMON INFO COMPLETE====================

    Copy system.img to full_build ...done
  4. Selecting Option 2 will proceed to flash the images on the development kit. This is only true if the host environment is running Ubuntu 18.04. For a host that is running 18.04 in a Docker container, refer to the Readme file or the SDK Manager Users Guide to flash the system images on your development kit.....
    > help
    commands:
    help = Show usage help
    1 = Download resources and generate system.img with current release
    2 = Flash full build (require system.img generation first)
    3 = Download framework SDKs
    q = exit sdk manager
    > 2
    Enter 'y' to continue, 'q' to main menu:
    SDK manager flashing full build...
    [sudo] password for :
    Performing Ubuntu downloading ...
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram_unsparse0.xml success
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram1.xml success
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram2.xml success
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram3.xml success
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram4.xml success
    program_load ~/sdkmanager/FC/full_build/ufs/rawprogram5.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch0.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch1.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch2.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch3.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch4.xml success
    patch_load ~/sdkmanager/FC/full_build/ufs/patch5.xml success
    Waiting for EDL device

    Once the system image is generated, proceed to Flashing the images on the development board.