Professional Documents
Culture Documents
Qualcomm Robotics RB5 Development Kit User Guide: 80-88500-5 Rev. AE December 7, 2023
Qualcomm Robotics RB5 Development Kit User Guide: 80-88500-5 Rev. AE December 7, 2023
Qualcomm Robotics RB5 Development Kit User Guide: 80-88500-5 Rev. AE December 7, 2023
Guide
80-88500-5 Rev. AE
December 7, 2023
© 2023 Qualcomm Technologies, Inc. and/or its subsidiaries. All rights reserved.
Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Hardware overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 What is included . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 What you will need . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 RB5 mainboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.1 RB5 mainboard connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.2 RB5 mainboard power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.3 RB5 mainboard LEDs and buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3.4 RB5 DIP switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.5 RB5 mainboard RF antennas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.4 Thermal management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.5 RB5 mezzanine boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3 Update software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1 Host system prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.1 Update Ubuntu-based packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.2 Install Android Debug Bridge and fastboot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.3 Install Qualcomm Package Manager (QPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.4 Install Product Configuration Assistant Tool (PCAT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Flash RB5 software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.1 Flash system with PCAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.2 Flash system with fastboot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2.3 Flash Linux with fastboot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4 Set up the device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.1 Set up Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Set up Bluetooth technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Set up Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4 Set up HDMI display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Set up camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.5.1 Set up USB webcam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
80-88500-5 Rev. AE 2
Qualcomm Robotics RB5 Development Kit User Guide Contents
80-88500-5 Rev. AE 3
Tables
80-88500-5 Rev. AE 4
Figures
80-88500-5 Rev. AE 5
1 Introduction
®
This document provides a description of the Qualcomm Robotics RB5 Development Kit hardware
elements, instructions for setting up the platform and updating the system software, and guidance for
getting started with software application development in a Linux environment. This document is
intended for software developers who are interested in application software development and system
®
software customization for products based on the Qualcomm Robotics RB5 Platform.
The Robotics RB5 Platform supports both Linux Ubuntu and Linux Embedded operating systems. In
this document, information that is unique to an operating system is presented using separate heads.
For technical support, see https://www.qualcomm.com/support.
80-88500-5 Rev. AE 6
2 Hardware overview
The Qualcomm Robotics RB5 development kit includes the Qualcomm QRB5165 system-on-module
(SoM), which includes the main processor, SDRAM, Flash memory, and wireless connectivity
components. The SoM is mounted on the Robotics RB5 development kit mainboard, which also
includes multiple connectors to support a variety of different peripheral interfaces and stackable
mezzanine cards.
80-88500-5 Rev. AE 7
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
DSI to HDMI bridge Lontium LT9611UCX 4K at 60-Hz HDMI support with I2S audio
USB hub Genesys GL3590 USB 3.1 Gen2 10 Gb 4-port hub controller
USB to LAN ASIX AX88179 USB 3.0 Gb to 1 Gb Ethernet controller
Audio amplifiers x2 Qualcomm WSA8815 Class-D SoundWire audio amplifier
CAN bus controller Microchip MCP2518FD External CAN controller with SPI
Sensor TDK ICM-42688-P 3-axis gyroscope and 3-axis accelerometer
Onboard digital TDK T5818 PDM digital MEMS microphone
microphone
USB connector USB Type-C USB Type-C with display port (direct connect to
processor)
USB connector USB Type-A (host mode) USB 3.1 Gen 2 through USB hub
HDMI HDMI Type-A Up to 4K at 60 Hz with audio
Power DC power input +12 V from wall supply
microSD card microSD card microSD card tray
Antenna Antenna 0 2.4/5 GHz printed antenna
Antenna Antenna 1 2.4/5 GHz printed antenna
Debug UART microUSB connector Connector with FTDI USB to UART converter
Ethernet RJ45 Ethernet connector Ethernet through USB 3.0 (1 Gb)
80-88500-5 Rev. AE 8
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
To flash an appropriate build, you need to identify the appropriate RB5 hardware variant. To identify
the hardware variant, run the following command:
adb shell `cat /sys/devices/soc0/soc_id`
An output of 455 denotes that the hardware is a POP variant, and an output of 496 denotes a non-
POP variant.
NOTE The development kits do not include pre-installed system software. Therefore, the LEDs
on the board do not switch ON until you download the required tools and complete the
build and flash processes.
80-88500-5 Rev. AE 9
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
■ USB mouse
■ WLAN connection
80-88500-5 Rev. AE 10
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Mainboard
Label Name Details
connectors
80-88500-5 Rev. AE 11
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Mainboard
Label Name Details
connectors
8 USB connector USB Type-C USB Type-C with display port (direct connect to
processor). ADB works on this port.
9 USB connector USB Type-A (host USB 3.1 Gen 2 through USB hub
mode)
10 USB connector USB Type-A (host USB 3.1 Gen 2 through USB hub
mode)
11 Ethernet RJ45 Ethernet Ethernet through USB 3.0 (1 GB)
connector
12 Power DC power input +12-V wall power supply
13 Antenna Antenna1 2.4/5 GHz printed antenna
14 Antenna Antenna0 2.4/5 GHz printed antenna
15 microSD card microSD card microSD card tray
16 Debug UART microUSB Connector with FTDI USB to UART converter
connector
80-88500-5 Rev. AE 12
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Low-speed interfaces can be used to control various peripherals, such as audio functions.
– – – – GND 1 2 GND – – – –
– QUP13 E42 36 UART0_CTS 3 4 PWR_BTN_N – A40 PHONE_ON –
– QUP13 D42 38 UART0_TXD 5 6 RST_BTN_N – A42 VOL- –
Yes QUP13 D40 39 UART0_RXD 7 8 SPI0_SCLK 54 C42 QUP17 –
– QUP13 D41 37 UART0_RTS 9 10 SPI0_MISO 52 G36 QUP17 –
Yes QUP12 C45 35 UART1_TXD 11 12 SPI0_CS 55 F36 QUP17 Yes
– QUP12 B46 34 UART1_RXD 13 14 SPI0_MOSI 53 F37 QUP17 –
– QUP4 D35 9 I2C0_SCL 15 16 PCM_FS 141 A10 PCM_FS/I2S0_WS –
– QUP4 A46 8 I2C0_SDA 17 18 PCM_CLK 138 D37 PCM_CLK/I2S0_CLK Yes
– QUP15 E43 45 I2C1_SCL 19 20 PCM_DO 140 D38 PCM_DO/I2S0_D1 –
Yes QUP15 F44 44 I2C1_SDA 21 22 PCM_DI 139 F40 PCM_DI/I2S0_D0 –
Yes QUP1 H33 4 GPIO-A 23 24 GPIO-B 136 K39 PCM0_MCLK Yes
– QUP1 H31 5 GPIO-C 25 26 GPIO-D 7 H32 QUP1 Yes
– QUP1 H30 6 GPIO-E 27 28 GPIO-F* 46 E41 DISPLAYMIPI_ERR_FG/ –
QUP15
Yes DISPLAYVSYNC F43 66 GPIO-G a 29 30 GPIO-H* 116 K41 DISP_RST_N –
Yes CAM0_RST_N K37 93 GPIO-I b 31 32 GPIO-J~ 114 J30 CAM0_PWDN –
Yes CAM1_RST_N G42 92 GPIO-K 33 34 GPIO-L~ 109 J31 CAM1_PWDN Yes
– VREG_S4A_1P8 D45 N/A 1.8 V-A 35 36 SYS_DCIN N/A – DC12V from barrel jack –
– From on board – N/A 5V 37 38 SYS_DCIN N/A – DC12V from barrel jack –
regulator
– – – – GND 39 40 GND – – – –
a dedicated display GPIOs (can be used for other functions)
b dedicated camera GPIOs (can be used for other functions)
80-88500-5 Rev. AE 13
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 14
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Low-speed interfaces can be used to control various peripherals, such as audio functions.
80-88500-5 Rev. AE 15
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 16
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 17
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
The GPIOs labeled QUP have additional low-speed interface capabilities (UART, SPI, I2C). Several GPIOs can be used to wake up the application
processor.
80-88500-5 Rev. AE 18
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 19
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 20
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Wake-up Wake-up
Additional info SoM pin GPIO Signal Pin number Signal GPIO SoM pin Additional info
function function
80-88500-5 Rev. AE 21
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Wake-up Wake-up
Additional info SoM pin GPIO Signal Pin number Signal GPIO SoM pin Additional info
function function
80-88500-5 Rev. AE 22
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 23
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 24
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 25
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 26
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Wake-up Wake-up
Additional info SoM pin GPIO Signal Pin number Signal GPIO SoM pin Additional info
function function
80-88500-5 Rev. AE 27
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Wake-up Wake-up
Additional info SoM pin GPIO Signal Pin number Signal GPIO SoM pin Additional info
function function
80-88500-5 Rev. AE 28
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
NOTE If you plug only the USB Type-C cable, the green LED keeps flashing and the device
does not boot. Ensure to connect the power adapter.
1 LEDs Wi-Fi and Bluetooth Yellow: reflects the status of the Wi-Fi device
technology LEDs
Blue: reflects the status of the Bluetooth technology
device
2 LEDs 4 User LEDs Green: driven directly by the SoC
3 Push-button Force USB boot Momentary switch (F_DL): used for emergency USB
switch boot
4 Push-button Power on Momentary switch: serves as the power ON/OFF/Sleep
switch button
80-88500-5 Rev. AE 29
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 30
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
1 BOOT_CONFIG_1 [GPIO_27] Selects external boot devices (see Table 2-13) OFF
2 BOOT_CONFIG_2 [GPIO_47] OFF
3 BOOT_CONFIG_3 [GPIO_76] OFF
4 BOOT_CONFIG_0 [GPIO_128] ON – disables watchdog OFF
OFF – enables watchdog
The following table indicates the external boot device selection for the RB5 platform based on the
DIP_SW_1 (1, 2, and 3):
Table 2-13 External boot device selection for RB5 platform
GPIO number
FAST_BOOT
90 76 47 27 Order of boot device selection
GPIO bit (3:0)
NOTE If the board is not powering up, check the setting on DIP switch 3 for the intended
behavior. If the DIP_SW_0 switch 3 is OFF, the boards will not automatically power up
unless USB Type-C is plugged in. To automatically boot up, set the DIP_SW_0 switch 3
to ON.
80-88500-5 Rev. AE 31
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 32
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 33
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
80-88500-5 Rev. AE 34
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Vision mezzanine
The vision mezzanine is intended to support interfacing cameras to the RB5 platform. This mezzanine
also adds gigabit multimedia serial links (GMSL) as well as 4 DMICs.
Camera
■ 2x GMSL2 camera inputs (using MAX9296A), CSI4 and CSI5
■ Five CAM/CSI camera ports with identical pinouts: CSI0 is split into two cameras (CAM0A and
CAM0B)
■ CAM3 connector includes an option for a higher supply voltage of 5 V and accommodates the
Panasonic TOF camera
■ CAM0B has a parallel/duplicated connector
■ Main camera (IMX577); part number: CMK-IMX577-B-V2.0, intended to be plugged into connector
CAM2, CSI2
■ Tracking camera (OV9282); part number: CMK-VR-OV9282-V1.0, intended to be plugged into
connector CAM1, CSI1
Sensors
■ TDK ICM-42688-P IMU (located on the back side of the board)
■ AKM compass/magnetometer AK09919
■ TDK pressure sensor (ICP-10111)
80-88500-5 Rev. AE 35
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
Audio
■ Four digital PDM mics that interface directly with the RB5 platform
■ Speaker connectors
80-88500-5 Rev. AE 36
Qualcomm Robotics RB5 Development Kit User Guide Hardware overview
5G mezzanine
The 5G mezzanine provides support to interface a 5G M.2 module with the RB5 platform. Other WAN
M.2 components can also be used; for example, 4G LTE modules.
80-88500-5 Rev. AE 37
3 Update software
The system software for the RB5 development kit is a combination of multiple subsystem binaries for
the application processor and various subsystems available on the chipset. There are various
methods to flash the latest software release on to the RB5 development board.
■ Procedure from Thundercomm
If you intend to flash the original system software from the manufacturer, then you must follow the
steps that are described in the Thundercomm SDK Manager User Guide. For this procedure, you
need the following tool:
□ Qualcomm Robotics RB5 SDK Manager
This tool is available from Thundercomm and the instructions for downloading, installing, and
using this tool are available on the Thundercomm website. To use this tool, you must have an
active account with Thundercomm.
■ Procedure from Qualcomm
If you intend to flash a selected system software release provided by Qualcomm, then you must
follow the procedures that are described in this document. For these procedures, you need the
following tools:
□ Qualcomm Package Manager (QPM)
□ Qualcomm Product Configuration Assistance (PCAT) tool
□ Qualcomm USB driver (QUD)
□ Qualcomm Unified Tools Service (QUTS)
These tools are available from Qualcomm and the instructions for downloading and installing
these tools are included in this document. To use these tools, you need to have an active account
with Qualcomm.
NOTE To download, build, and compile the software, see a selected software Release Notes
from Qualcomm.
80-88500-5 Rev. AE 38
Qualcomm Robotics RB5 Development Kit User Guide Update software
■ Minimum of 16 GB RAM.
■ Quad-core CPU, for example, Intel i7-2600 at 3.4 GHz (equivalent or better).
NOTE ■ To flash the device, install the platform tools based on version r29.0.5 from https://
androidsdkmanager.azurewebsites.net/Platformtools.
■ Verify the adb version on the host system by running the following command:
adb --version
Sample output:
Android Debug Bridge version 1.0.41
Version 29.0.5-5949299
NOTE In case of a missing dependency for libgtkmm-3.0-1v5, run the following command to
install the package file:
sudo dpkg -i --ignore-depends=<package(s) to ignore> <QPM
Linux .deb package file>
80-88500-5 Rev. AE 39
Qualcomm Robotics RB5 Development Kit User Guide Update software
2. Install the following tools in the specified order. By default, the tools are installed in the /dev
directory. If you choose to install the tools in a different directory, ensure to use the updated file
path appropriately.
a. Qualcomm USB driver (QUD)
b. Qualcomm unified tools service (QUTS)
c. PCAT
3. To verify if you have access to the QUD, QUTS, and PCAT tools, run the following command:
qpm-cli --product-list
The command displays all the products and tools that you have access for.
Sample output:
---- List of products ---- alpaca apex apex7 deepmap .... .... pcat
qcat .... .... qud quts qxdm5
4. To activate QUD, QUTS, and PCAT licenses, run the following commands:
qpm-cli --license-activate qud
qpm-cli --license-activate quts
qpm-cli --license-activate pcat
5. Install QUD, QUTS, and PCAT. Ensure that the tools are installed in the specified order.
qpm-cli --install qud
qpm-cli --install quts
qpm-cli --install pcat
80-88500-5 Rev. AE 40
Qualcomm Robotics RB5 Development Kit User Guide Update software
NOTE If the build is flashed with Ubuntu, then the build ID displays UBUN, otherwise it is
understood that the device contains Linux Embedded software.
NOTE For more information, see a selected software Release Notes from Qualcomm.
The following procedure provides information on how to download system software on to the device by
using the PCAT tool.
To enter the Qualcomm Download (QDL) mode, do the following:
1. With USB and power not plugged in, hold down the F_DL key.
2. Connect the device to the host system through the USB Type-C.
3. Connect the device to a +12-V wall power supply.
80-88500-5 Rev. AE 41
Qualcomm Robotics RB5 Development Kit User Guide Update software
4. After the device is visible in the download or 9008 mode, release the F_DL key. The download or
9008 mode is visible on the PCAT tool interface.
80-88500-5 Rev. AE 42
Qualcomm Robotics RB5 Development Kit User Guide Update software
Bus 002 Device 014: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL
mode)
7. To check if the device is recognized by the PCAT, run the following command on the host:
pcat -devices
Sample output:
Searching devices in Device Manger, please wait for a moment… ID |
DEVICE TYPE | DEVICE STATE | SERIAL NUMBER | ADB SERIAL NUMBER |
DESCRIPTION | | EDL | d16770b2 |
Qualcomm USB Composite Device: QUSB_BULK_CID:0404_SN:D16770B2
NOTE If the device does not enter the fastboot mode, follow the procedure in Flash system
with PCAT.
The fastboot script is downloaded along with the software release package from the Qualcomm
ChipCode™ portal.
1. To check if device is connected to the host through USB, run the following command on the host:
adb devices
Sample output:
List of devices attached 84ba9b5f device
To flash the device in the fastboot mode, use one of the following options:
□ Option 1: If the device is detected in the adb mode, run the adb reboot bootloader
command to place the device into the fastboot mode.
□ Option 2: If adb does not detect the device or if the device fails to boot, place the device into
the fastboot mode using the following steps:
i. With USB and power not plugged in, hold down the VOL- key.
ii. Connect the device to the host system through the USB Type-C port.
iii. Plug in the +12-V wall power supply.
iv. Release the VOL- key.
80-88500-5 Rev. AE 43
Qualcomm Robotics RB5 Development Kit User Guide Update software
2. To verify if the device has entered the fastboot mode, run the following command:
fastboot devices
Sample output: 84ba9b5f fastboot
3. When the device is in the fastboot mode, run the following script to flash the full system software:
<base_build_root>/QRB5165.UBUN.2.0/common/build/fastboot_complete.py
NOTE □ The <base_build_root> is the local workspace path where the build is
located.
□ To run the fastboot_complete.py script, you must use the Python version
2.7.
80-88500-5 Rev. AE 44
Qualcomm Robotics RB5 Development Kit User Guide Update software
Linux Embedded
1. Navigate to the application processor build software location, for example,
<base_build_root>/apps_proc/build-qti-distro-fullstack-debug/tmpglibc/
deploy/images/qrb5165-rb5/qti-robotics-image
2. To flash in the fastboot mode, run the following commands on the host:
adb reboot bootloader
fastboot flash abl_a abl.elf
fastboot flash boot_a boot.img
fastboot flash boot_b boot.img
fastboot flash system_a system.img
fastboot flash system_b system.img
fastboot flash persist persist.img
fastboot flash userdata userdata.img
fastboot reboot
80-88500-5 Rev. AE 45
4 Set up the device
To establish communication between the host PC and the RB5 platform, connect a USB cable to
enable the use of the Android Debug Bridge (ADB) utility, and connect a universal asynchronous
receiver-transmitter (UART) cable to enable access to diagnostic messages.
Connect to ADB
Using the USB Type-C cable, connect the RB5 kit with the host system. Ensure that the device is listed
as an ADB device.
adb devices
Sample output: List of devices attached 68f592a device
Set up UART
To view the boot up message logs on a serial console, use the debug microUSB port.
1. Select the proper COM port and set the baud rate to 115200.
80-88500-5 Rev. AE 46
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. Change the SSID and password to match with the router Wi-Fi SSID/password.
5. Wait for 1 minute after the device boots up. To check if the device is autoconnected to the router,
run the following command:
ifconfig wlan0
6. Ping the router to confirm the connection using the following command:
ping www.google.com
80-88500-5 Rev. AE 47
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
1. Kill wpa_supplicant after reboot. To retrieve the PID of wpa_supplicant, run the following
command:
pgrep wpa_supplicant
kill -9 <wpa_supplicant_PID>
80-88500-5 Rev. AE 48
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
3. From the hostapd.conf file, identify the SSID and password information. You can also run the
iw wlan0 info command to retrieve the SSID details.
4. To set up the software access point on the dynamic host configuration protocol (DHCP) server, run
the following commands:
ifconfig wlan0 192.168.2.1 netmask 255.255.255.0 up
dnsmasq --dhcp-range=192.168.2.10,192.168.2.100,12h --port=5353
5. To test the connection, navigate to the Wi-Fi settings on the phone and identify the RB5 SSID (for
example, QSoftAP).
6. Select RB5 SSID and provide RB5 hostapd password to connect the device. An IP address from
the dhcp-range is selected for the phone, implying that the connection is established. The
following figure shows that the station (STA) is connected to the software access point:
7. To verify the connection, ping the IP address of the phone from the RB5 device.
80-88500-5 Rev. AE 49
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
Pair a device
To pair a Bluetooth technology device, do the following:
1. Enable Bluetooth technology and run the pair command in the gap_menu.
pair <BD ADDRESS of device intending to connect>
For example,
pair 40:4D:7F:9D:BB:8C
A notification message displays.
1. Connect the Ethernet port and router with the Ethernet cable.
a. Run the following adb shell command:
ifconfig eth0
b. If the command returns the eth0 and IP address, then this result confirms that the Ethernet is
connected.
80-88500-5 Rev. AE 50
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. Ping the router <IP address> to verify if the RB5 device is successfully connected.
3. Ping a website, for example www.qualcomm.com, to verify if the online connection is established.
80-88500-5 Rev. AE 51
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
Figure 4-2 Connecting RB5 platform to display monitor with HDMI cable
80-88500-5 Rev. AE 52
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. Connect the HDMI cable to the display monitor and power-on the device. Weston starts
automatically when the device boots up. The following Weston flower pattern should be seen on
the display monitor:
The following figure shows the Weston simple EGL client application running on the display
monitor:
80-88500-5 Rev. AE 53
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
The USB camera supports UVC-compliant devices, webcams, digital camcorders, and still-image
cameras.
3. If the camera enumeration is successful, try starting the camera by running a program such as
Yavta.
4. To build Yavta, run the following commands:
cd poky
MACHINE=qrb5165-rb5 DISTRO=qti-distro-ubuntu-debug . qti-conf/
set_bb_env.sh (choose target accordingly)
bitbake yavta
6. Connect the USB camera to the device with USB3.0 COM, and then run the following command to
verify the device ID of the USB camera:
adb shell ls -l /dev/video*
7. To verify if the Yavta application exists on the device, run the following command:
adb shell ls -l /usr/bin/
80-88500-5 Rev. AE 54
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
10. To verify if the camera launched successfully using the generated file inside /data, run the
following command:
ls -l /data/*.yuv
80-88500-5 Rev. AE 55
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 56
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
To assemble the Qualcomm Robotics RB5 Platform camera (without bracket), do the following:
1. Plug the vision mezzanine into the mainboard.
2. Plug the tracking camera sensor to the tracking camera flex cable, and plug into the CAM1
(tracking camera) connector on the vision mezzanine.
3. Plug the main camera sensor to the main camera flex cable and plug into the CAM2 (main
camera) connector on the vision mezzanine.
WARNING Plug the flex cables and cameras exactly as shown in the following figure; otherwise,
damage might occur.
80-88500-5 Rev. AE 57
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
NOTE The default output directory is /data where all the output files are created. If you
want to change the output directory, create a new directory under /data and modify
80-88500-5 Rev. AE 58
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
the location accordingly so that all the output files are created in the specified
directory.
2. To view the video files, run the following commands:
cd data
ls
Sample output:
4k30_h264.mp4 audio misc persist security-tests tombstones vendor
NOTE The default output directory is /data where all the output files are created. If you
want to change the output directory, create a new directory under /data and modify
the location accordingly so that all the output files are created in the specified
directory.
2. Enter the number that appears next to the displayed options. Enter 9 to select camsrc.
80-88500-5 Rev. AE 59
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
NOTE The default output directory is /data where all the output files are created. If you
want to change the output directory, create a new directory under /data and modify
the location accordingly so that all the output files are created in the specified
directory.
2. Follow the instructions described in Camera snapshot with display.
80-88500-5 Rev. AE 60
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
Dual-camera concurrency
1. Ensure that the main and tracking cameras are connected to the RB5 device hardware. For more
information on MIPI camera setup, see Set up MIPI camera.
□ Main camera (Process 1):
– Stream1: 4K at 30 AVC/HEVC mp4 muxed
– Stream2: 1080p at 30 YUV preview
2. Run the following test commands in different adb shell windows at the same time:
□ Command 1:
gst-pipeline-app -e qtiqmmfsrc camera=0 name=qmmf ! video/x-raw\
(memory:GBM\),format=NV12,width=3840,height=2160,framerate=30/1 !
waylandsink fullscreen=true async=true sync=false qmmf. ! video/x-raw\
(memory:GBM\),format=NV12,width=3840,height=2160,framerate=30/1 !
queue !qtic2venc ! queue ! h264parse ! mp4mux ! queue ! filesink
location="/data/mux1.mp4" qmmf. ! "image/
jpeg,width=3840,height=2160,framerate=30/1" ! multifilesink location="/
data/frame%d.jpg" sync=true async=false
□ Command 2:
gst-launch-1.0 -e qtiqmmfsrc camera=1 name=qmmf ! video/x-
raw,format=NV12,width=1280,height=720,framerate=30/1 ! multifilesink
enable-last-sample=false location="/data/client2_frame%d.yuv" max-
files=5
NOTE The default output directory is /data where all the output files are created. If you
want to change the output directory, create a new directory under /data and
modify the location accordingly so that all the output files are created in the
specified directory.
80-88500-5 Rev. AE 61
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
Multicamera concurrency
The following command will access the camera sensors namely 0-4 using the camera parameters and
helps in encoding the videos with 1280 × 720 resolution of 30 fps in folder/data/.
gst-launch-1.0 -e qtiqmmfsrc name=qmmf camera=0 ! video/x-raw\(memory:GBM
\),format=NV12,width=1280,height=720,framerate=30/1 ! qtic2venc ! h264parse !
mp4mux ! queue ! filesink location="/data/mux1.mp4" qmmf.qtiqmmfsrc
camera=1 ! video/x-raw\(memory:GBM
\),format=NV12,width=1280,height=720,framerate=30/1 ! qtic2venc ! h264parse !
mp4mux ! queue ! filesink location="/data/mux2.mp4" qtiqmmfsrc camera=2 !
video/x-raw\(memory:GBM\),format=NV12,width=1280,height=720,framerate=30/1 !
qtic2venc ! h264parse ! mp4mux ! queue ! filesink location="/data/mux3.mp4"
qtiqmmfsrc camera=3 ! video/x-raw\(memory:GBM
\),format=NV12,width=1280,height=720,framerate=30/1 ! qtic2venc ! h264parse !
mp4mux ! queue ! filesink location="/data/mux4.mp4"
Multicamera multiclient
To run the multicamera multiclient, do the following:
1. To start the main camera process1, run the following command:
export XDG_RUNTIME_DIR=/run/user/root/ && gst-pipeline-app -e qtiqmmfsrc
camera=0 name=qmmf ! video/x-raw\(memory:GBM
\),format=NV12,width=3840,height=2160,framerate=30/1 ! waylandsink
sync=false x=0 y=0 width=500 height=500 enable-last-sample=false qmmf. !
video/x-raw\(memory:GBM
\),format=NV12,width=3840,height=2160,framerate=30/1 ! queue ! qtic2venc !
queue ! h264parse ! mp4mux ! queue ! filesink location="/data/
main_client1_4k30fps_h264.mp4" qmmf. ! "image/
80-88500-5 Rev. AE 62
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
NOTE The default output directory is /data where all the output files are created. If you
want to change the output directory, create a new directory under /data and modify
the location accordingly so that all the output files are created in the specified
directory.
2. To start the main camera process2 for the slave stream, after the master stream-up, run the
following command:
export XDG_RUNTIME_DIR=/run/user/root/ && gst-pipeline-app -e qtiqmmfsrc
slave=true camera=0 name=qmmf ! video/x-raw\(memory:GBM
\),format=NV12,width=3840,height=2160,framerate=30/1 ! waylandsink
sync=false x=400 y=400 width=500 height=500 async=true sync=false
4. To start tracking the camera process2 for the slave stream, after tracking the camera master
stream-up, run the following command:
export XDG_RUNTIME_DIR=/run/user/root/ && gst-pipeline-app -e qtiqmmfsrc
slave=true camera=1 name=qmmf ! video/x-raw\(memory:GBM
\),format=NV12,width=1280,height=720,framerate=15/1 ! waylandsink
sync=false x=800 y=500 width=500 height=500 enable-last-sample=false
5. Run the display on the local host for 1 minute in the main camera primary stream command
window1.
6. Enter the snapshot item by typing qmmf and then specify the number that appears next to the
displayed options to take the snapshot.
7. Enter q to stop the slave stream command window2.
8. Enter q to stop the master stream command window1 after you have finished testing.
9. Stop tracking the camera slave stream first and then the master stream using the CTRL + C keys.
The main camera video is saved.
80-88500-5 Rev. AE 63
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
To capture audio recording through Advanced Linux Sound Architecture (ALSA), do the following:
2. After recording the voice, press CTRL + C to stop the recording. After the recording is completed,
pull the output clip from the /data/ location of the RB5 device.
adb pull /data/dmic0.wav
80-88500-5 Rev. AE 64
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 65
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 66
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. After recording the voice, press CTRL + C to stop the recording. After the recording is complete,
pull the output clip from the /data/ location of the device.
adb pull /data/dmic2.wav
80-88500-5 Rev. AE 67
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. After recording is completed, pull the output clip from the /data/audio location in the device by
running the following command:
adb pull /data/audio/rec1.wav
80-88500-5 Rev. AE 68
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 69
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. After recording the voice, press CTRL + C or use the adb shell kill -2 `pidof gst-
launch-1.0 to stop the recording. When the recording is completed, pull the output clip from
the/data/ location of the device.
80-88500-5 Rev. AE 70
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 71
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
2. Download the /data/mux4K.mp4 file from the device and open it with a video player. The video
plays as expected.
H.265 video encoding
2. Download the /data/mux4K.mp4 file from the device and open it with a video player. The video
plays as expected.
Video decoding
To decode the video using qtic2vdec, do the following on the RB5 development kit:
80-88500-5 Rev. AE 72
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
To enable video playback on display, run the following command on the RB5 development kit:
export XDG_RUNTIME_DIR=/run/user/root && gst-launch-1.0 filesrc location=/
data/7680_4320_30fps.mp4 ! qtdemux ! queue ! h264parse ! qtic2vdec ! video/x-
raw\(memory:GBM\),compression=ubwc ! queue ! waylandsink x=100 y=100
width=960 height=540
80-88500-5 Rev. AE 73
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
80-88500-5 Rev. AE 74
Qualcomm Robotics RB5 Development Kit User Guide Set up the device
example, accel for accelerometer, gyro for gyroscope, and pressure for pressure/
barometer.
80-88500-5 Rev. AE 75
5 Develop applications
The current Ubuntu-based platform of QRB5165 is validated for ROS2/Foxy. As the Foxy release is
not a part of the default repository, you must run the following steps to add the ROS2 package
repository to the Ubuntu-based focal sources list before installing ROS2.
Prerequisites:
■ To use ROS2, install the ROS2/Foxy package and ssh.
■ Use ssh to update the gpg key of the ROS2 repository with apt.
■ Ensure that the device is connected to an active Internet connection. For information on how to set
up Wi-Fi on the device, see Set up Wi-Fi.
To install ssh and ROS2 and get a basic ROS2 application running on the RB5 development kit, do the
following:
1. Install ssh.
adb root
adb remount
adb shell
apt update
apt upgrade
apt install openssh-server
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
/etc/init.d/ssh restart
80-88500-5 Rev. AE 76
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
2. To install usbutils, git, bc, and set the locale, run the following commands:
apt install usbutils git bc
apt install libvulkan1=1.2.131.2-1
apt update && apt install locales
locale
locale-gen en_US en_US.UTF-8
update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
locale
3. To ensure that the Ubuntu-based universe repository is enabled, run the following commands:
apt install software-properties-common
add-apt-repository universe
4. To add ROS2 gpg key with apt, run the following commands:
apt update && apt install curl -y
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -
o /usr/share/keyrings/ros-archive-keyring.gpg
5. To add the repository to the sources list, run the following command:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/
ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-
release && echo $UBUNTU_CODENAME) main" | tee /etc/apt/sources.list.d/
ros2.list > /dev/null
apt upgrade
apt install ros-foxy-desktop
80-88500-5 Rev. AE 77
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
b. On the other terminal, test the subscribe mechanism using the following commands:
adb shell
export ROS_HOME="/tmp/ros"
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_py listener
Linux Embedded
80-88500-5 Rev. AE 78
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
You must clone the Git repository before building and deploying sample applications.
The sample code to test the device functionality is available on GitHub. To clone the repository on the
RB5 development kit, do the following:
1. To retrieve the list of devices, run the following command:
adb devices
2. Enter the terminal through the adb shell or ssh. For example:
ssh root@qrb5165-rb5#
Sample applications for the Qualcomm Robotics RB5 Development Kit are available on GitHub.
The sample applications are grouped into categories and each category has a corresponding folder.
See the README file in the respective sample application folders for instructions to build, deploy, and
test the sample application. The following is a list of the available sample applications:
■ AI-ML-apps
This category includes applications that enable AI workloads on the Qualcomm Robotics RB5
development kit and applications that implement selected AI use cases.
□ snpe_classification
This application sets up the environment, compiles, and runs object classification using a DLC
format (generated from Qualcomm® Neural Processing SDK) TFLite model as an input.
□ snpe_detection
This application sets up the environment, compiles, and runs object detection using a DLC
format (generated from Qualcomm Neural Processing SDK) TFLite model as an input.
□ tflite_classification
This application sets up the environment, compiles, and runs object classification using a
TFLite model as an input and implementing the GStreamer pipeline.
80-88500-5 Rev. AE 79
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
□ tflite_posenet
This application sets up the environment, compiles, and runs pose estimation using a TFLite
model as an input and implementing the GStreamer pipeline.
□ tflite_segmentation
This application sets up the environment, compiles, and runs image segmentation using a
TFLite model as an input and implementing the GStreamer pipeline.
■ Codec2-video
This category contains GStreamer-based application for H.264 video encoding and decoding. You
can compile and test the H.264 video encoding and decoding capabilities for different file formats.
■ GStreamer-apps
This category contains a set of Python and C sample applications that show the use of GStreamer
plugins on the Qualcomm Robotics RB5 development platform.
□ gst-alsa
This application implements the playback and recording functions of GStreamer and ASLA on
the RB5 development platform.
□ gst_audio
This application demonstrates audio recording and playback with PulseAudio for WAV, AAC,
and MP3 file formats.
□ gst_camera
This application demonstrates camera live view on display. There are two samples: one is
display from the ISP camera (main onboard camera) and the other is display from the USB
camera.
□ gst_encode_decode
This application demonstrates how to encode camera video into an MP4 file and play back
from the file. There are two samples: one is encoding from the ISP camera (main onboard
camera) and the other is playback of the MP4 file.
□ gst_streaming
This application demonstrates two ways to stream video on the network. The first sample
creates a TCP streaming server with GStreamer. The second sample demonstrates how to
run a Real-Time Streaming Protocol (RTSP) server on the board.
□ gst_tflite
This application shows how to set up the environment, compile, and run object classification
using a TFLite model as an input and implementing the GStreamer pipeline.
□ gst_transform
This application shows how to transform an ISP camera video to the Weston display.
80-88500-5 Rev. AE 80
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
■ ROS-apps
This category contains applications that show the use of ROS middleware for building robotics
applications.
□ ROS-Caffe
This application integrates the Caffe framework into ROS on Qualcomm Robotics RB5
development platform.
□ ROS-TFLite
This application integrates the Tensorflow framework into ROS with object detection API on
the Qualcomm Robotics RB5 development platform.
■ OpenCL-Application
This application demonstrates OpenCL sample code using the following examples:
□ FFT shows the use of OpenCL for fast fourier transform.
□ Benchmark shows the reading and writing rate when the memory unit is Byte, KB, or MB,
respectively.
□ Matrix_multiply shows the multiplication of two 20 × 20 matrices and prints the output of the
input matrices and multiplication of the two matrices on the screen.
■ platform-bringup
This category contains applications to fetch device information, GPIO samples, Weston-Client,
and Wi-Fi hotspots.
□ Device-info
This application provides the following information: list of peripherals to which the device is
connected, status of subsystem through kernel node, CPU and GPU information, display
information, and memory size.
□ GPIO-samples
This application handles the following functions: LED light control, GPIO input and output,
receive GPIO interrupt events, button event catching, simple PWM output, and read the SoC
thermal temperature.
□ WiFi-OnBoarding
Wi-Fi onboarding includes scanning the surrounding hotspots in the STA mode, creating a
new Wi-Fi connection, and obtaining the SSID and PSK of the currently connected Wi-Fi. After
switching to the SAP mode, you can create a new hotspot and get the SSID and PSK of the
current hotspot.
□ Weston-Client-Application
The Weston sample code shows how to compile and run a simple client in Weston.
Prerequisites:
80-88500-5 Rev. AE 81
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
Use system.img
Before you begin, check whether system.img is an Android sparse image. If it is a sparse image,
unsparse the image before mounting.
1. To check whether the system.img is an Android sparse image, run the following command:
file qti-Ubuntu-robotics-image-qrb5165-rb5-sysfs.ext4
qti-Ubuntu-robotics-image-qrb5165-rb5-sysfs.ext4: Android sparse image,
version: 1.0, Total of 8192000 4096‑byte output blocks in 11950 input
chunks.
80-88500-5 Rev. AE 82
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
5. To install libxml2 to the sysroot folder mounted from the raw image, run sudo.
[sudo] make install
For packing on the host system, use sysroot from Yocto and system.img.
80-88500-5 Rev. AE 83
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
Use system.img
1. To repack the sysroot, run the following command:
sudo make_ext4fs -s -l 33554432000 -b 4096 sysfs.ext4 <sysroot mount
point>
For example:
sudo make_ext4fs -s -l 33554432000 -b 4096 sysfs.ext4 data
2. To check if the system.img output is an Android sparse image, run the following command:
file sysfs.ext4
sysfs.ext4: Android sparse image, version: 1.0, Total of 8192000 4096-byte
output blocks in 12234 input chunks
3. Connect to the USB port and ensure that the device is detected in the Android Debug Bridge
mode.
80-88500-5 Rev. AE 84
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
Write a simple program on the Qualcomm Robotics RB5 Platform shell terminal. Print a line of
characters: Hello World! using the following commands:
adb shell
sh-4.4#vi hello.c
sh-4.4#gcc hello.c -o hello
sh-4.4# ./hello
Hello world!
sh-4.4#
A terminal-based snake game written in C with ncurses. The program uses vim-style to move
around. For more information, see https://github.com/mnisjk/snake.
NOTE To clone with SSH, create SSH keys and add it to GitHub.
Install dependencies
The snake.c source file relies on ncurses to draw on the terminal. To install on Ubuntu/Debian,
run the following command:
sh-4.4#apt install libncurses5-dev
80-88500-5 Rev. AE 85
Qualcomm Robotics RB5 Development Kit User Guide Develop applications
80-88500-5 Rev. AE 86
A References
80-88500-5 Rev. AE 87
Qualcomm Robotics RB5 Development Kit User Guide References
80-88500-5 Rev. AE 88
LEGAL INFORMATION
Your access to and use of this material, along with any documents, software, specifications, reference board files, drawings, diagnostics and other
information contained herein (collectively this “Material”), is subject to your (including the corporation or other legal entity you represent,
collectively “You” or “Your”) acceptance of the terms and conditions (“Terms of Use”) set forth below. If You do not agree to these Terms of Use,
you may not use this Material and shall immediately destroy any copy thereof.
1) Legal Notice.
This Material is being made available to You solely for Your internal use with those products and service offerings of Qualcomm Technologies, Inc.
(“Qualcomm Technologies”), its affiliates and/or licensors described in this Material, and shall not be used for any other purposes. If this Material is
marked as “Qualcomm Internal Use Only”, no license is granted to You herein, and You must immediately (a) destroy or return this Material to
Qualcomm Technologies, and (b) report Your receipt of this Material to qualcomm.support@qti.qualcomm.com. This Material may not be altered,
edited, or modified in any way without Qualcomm Technologies’ prior written approval. Unauthorized use or disclosure of this Material or the
information contained herein is strictly prohibited, and You agree to indemnify Qualcomm Technologies, its affiliates and licensors for any damages
or losses suffered by Qualcomm Technologies, its affiliates and/or licensors for any such unauthorized uses or disclosures of this Material, in whole
or part.
Qualcomm Technologies, its affiliates and/or licensors retain all rights and ownership in and to this Material. No license to any trademark, patent,
copyright, mask work protection right or any other intellectual property right is either granted or implied by this Material or any information disclosed
herein, including, but not limited to, any license to make, use, import or sell any product, service or technology offering embodying any of the
information in this Material.
THIS MATERIAL IS BEING PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESSED, IMPLIED, STATUTORY OR OTHERWISE. TO
THE MAXIMUM EXTENT PERMITTED BY LAW, QUALCOMM TECHNOLOGIES, ITS AFFILIATES AND/OR LICENSORS SPECIFICALLY DISCLAIM ALL
WARRANTIES OF TITLE, MERCHANTABILITY, NON-INFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE, SATISFACTORY QUALITY, COMPLETENESS
OR ACCURACY, AND ALL WARRANTIES ARISING OUT OF TRADE USAGE OR OUT OF A COURSE OF DEALING OR COURSE OF PERFORMANCE.
MOREOVER, NEITHER QUALCOMM TECHNOLOGIES, NOR ANY OF ITS AFFILIATES AND/OR LICENSORS, SHALL BE LIABLE TO YOU OR ANY THIRD PARTY
FOR ANY EXPENSES, LOSSES, USE, OR ACTIONS HOWSOEVER INCURRED OR UNDERTAKEN BY YOU IN RELIANCE ON THIS MATERIAL.
Certain product kits, tools and other items referenced in this Material may require You to accept additional terms and conditions before accessing
or using those items.
Technical data specified in this Material may be subject to U.S. and other applicable export control laws. Transmission contrary to U.S. and any other
applicable law is strictly prohibited.
Nothing in this Material is an offer to sell any of the components or devices referenced herein.
In the event of a conflict between these Terms of Use and the Website Terms of Use on www.qualcomm.com or the Qualcomm Privacy Policy
referenced on www.qualcomm.com, these Terms of Use will control. In the event of a conflict between these Terms of Use and any other agreement
(written or click-through, including, without limitation any non-disclosure agreement) executed by You and Qualcomm Technologies or a Qualcomm
Technologies affiliate and/or licensor with respect to Your access to and use of this Material, the other agreement will control.
These Terms of Use shall be governed by and construed and enforced in accordance with the laws of the State of California, excluding the U.N.
Convention on International Sale of Goods, without regard to conflict of laws principles. Any dispute, claim or controversy arising out of or relating
to these Terms of Use, or the breach or validity hereof, shall be adjudicated only by a court of competent jurisdiction in the county of San Diego,
State of California, and You hereby consent to the personal jurisdiction of such courts for that purpose.
Snapdragon and Qualcomm branded products referenced in this Material are products of Qualcomm Technologies, Inc. and/or its subsidiaries.
Qualcomm patented technologies are licensed by Qualcomm Incorporated.