Bluetooth Application for Qualcomm® Robotics RB3 Platform

Skill LevelArea of FocusOperating SystemPlatform/Hardware
BeginnerEmbedded, RoboticsLinuxArtificial Intelligence
This project is intended to help you get familiar with the Qualcomm Robotics RB3 Bluetooth application and to verify the initial setup and working of the Bluetooth functionality.
Test the basic functionalities and features of Bluetooth settings on the Qualcomm Robotics RB3 Development Kit using Bluetooth application.
  • Robotics DragonBoard™ 845c development board - Based on the Qualcomm® SDA845 processor
  • Power Adapter - 12 V with 2500 mA required by the 96Boards specification
  • USB to Micro USB cable - For serial console interface and ADB, Fast boot commands
  • USB to USB Type C cable - For connecting the USB3.0 Type C port and flashing images
  • Ubuntu 14.04 LTS Linux distribution for 64-bit architecture - Host PC OS for RB3 SDK build process

bt-app_test.tar

(found on the Thundercomm Qualcomm Robotics RB3 Development Kit web page, under the Technical Documents tab in the “Sample-apps-codes” section)

Prerequisites:

Complete the build instructions in the "Hello RB3" project, and make sure that the following steps are done before proceeding with running the application on device:

1. Setup the development environment

  • 1.1) Install Android SDK tools (ADB, Fastboot)
  • 1.2) Install and configure the USB driver
  • 1.3) Flash the firmware image on the board
  • 1.4) Setup serial port for debugging purpose
  • 1.5) Install the App Toolchain SDK,/li>

2. Bluetooth application:

  • 2.1. From the Thundercomm Qualcomm Robotics RB3 Development Kit web page, under the Technical Documents tab in the “Sample-apps-codes” section, download source code for the Bluetooth application : “bt-app_test.tar”

    bt-app sample-code location
  • 2.2. After decompressing the .tar file, the directory is as follows:

    $ cd “Path to downloaded source code”
    $ tree btapp-samplecode -L 2
    directory structure of bt app

3. Build and transfer the application:

  • 3.1. Check the configuration script for running makefile by using ‘cat’ command. Compile and build the application using makefile.

    $ cd btapp-samplecode/bt/bt-app/
    $ cat configure.sh
    Navigate to btapp directory Command to view contents of configuration file
  • 3.2. Build the application:

    Load the environment setup for arm7 using ‘source’ command

    $ source /usr/local/oecore-x86_64/environment-setup-armv7a-neonoemllib32-linux-gnueabi
    $ ./configure.sh
    System environment configuration
    $ make
    Output of make
  • 3.3. Transfer the application:

    Connect the Qualcomm Robotics RB3 board to the host PC via Type C cable and ensure that the ADB port can be used (check using ‘adb devices’ and connect using ‘adb shell’)

    Transfer the application on to the Qualcomm Robotics RB3 board:

    $ adb push main/btapp /usr/bin/main/btapp
    Push Audio btapp binary to RB3
  • 3.4. Once the application is pushed on the Qualcomm Robotics RB3, run btproperty in the background (only once at the beginning) before running btapp

    Command to run btproperty in background
  • 3.5. After executing the “btapp”, type “gap_menu” command and press Enter

    btapp steps

    Next, as a result of the "gap_menu" command, the below menu of options will display for activities to be done using Bluetooth, such as enable, disable, inquiry etc.

    Expected output of gap_menu

    If the gap_menu command is successful in displaying the menu for Bluetooth settings, external devices can then be connected to the board to perform various Bluetooth operations.

NameTitle/Company
Rakesh SankarSr, System Architect
Global Edge Software Ltd
Akshay KulkarniTechnical Lead
Global Edge Software Ltd
Vihari SreeramSenior Software Engineer
Global Edge Software Ltd
Vengamamba PatchaSoftware Engineer
Global Edge Software Ltd
By submitting your content (“Submission”), you are granting Qualcomm a royalty-free, perpetual, non-exclusive, unrestricted, worldwide license to: (a) post, use, copy, sublicense, adapt, transmit, publicly perform or display any such Submission, (b) use, reproduce, modify, adapt, publish, translate, create derivative works from, distribute, perform, play, host, communicate, make available and publish your Submission without restriction and (c) sublicense to third parties the unrestricted right to exercise any of the foregoing rights granted with respect to the Submission. The foregoing grants shall include the right to exploit any ideas, concepts, intellectual property, or proprietary rights in such Submission, including but not limited to rights under copyright, trademark, service mark or patent laws under any relevant jurisdiction without Qualcomm owing any monies to you whatsoever. You represent and warrant that you own all right, title and interest in and to the Submission, or you have been granted sufficient rights in and to the Submission allowing the foregoing use of such Submission.