/ble_examples

Additional examples to compliment TI BLE-Stack SDK.

Primary LanguageC

Extra examples for TI BLE-Stack SDK

This repository contains additional sample applications and components for the Texas Instruments Bluetooth® Low Energy software development kit. All Github sample apps are compatible with the latest BLE-Stack SDK.

To use the examples and tools in this repository, please download and install the SDK first, and if necessary buy an evaluation kit.

For other hardware and software resources, please visit our wiki. If you have any questions please refer to the FAQ page.

Note: Not all additional sample projects are migrated to GitHub - please refer to the Examples List below.

Installation

This repository can be cloned and tracked using Git. For instructions on how to clone a repository from Github please refer to this guide: Clone from Github

For users who are unfamiliar with Git, there is the option of downloading the contents of the repository as a zip file. See instructions below.

- Click the green "Clone or download" button
- Select "Download ZIP" option
- Zip folder will appear in your Downloads folder

    Download Github zip

This repository can be cloned/download anywhere on your computer. There is a dependency between this repository and the BLE SDK install location.

By default the BLE SDK will install to:

    C:\ti\simplelink\ble_sdk_2_02_01_18

If the BLE SDK must be installed to a different location, then the examples in this repo will need to have the following environment variable updated

    TI_BLE_SDK_BASE

Follow your IDE specific instructions for changing environment variables or simply do a global search and replace within the ble_examples folder. See the FAQ page for more details.

By default, TI_BLE_SDK_BASE points to C:\ti\simplelink\ble_sdk_2_02_01_18\. If you installed the SDK there, no change is required.

Required Tools

Similar to the BLE-Stack SDK, the examples in this repository support the IAR and CCS toolchains. Please pay careful attention to versions of these tools, the supported version are listed below. Using a non supported version is untested and may result in unexpected behavior.

  • IAR for ARM v7.70.2
  • CCS v6.2.0 with TI ARM Compiler v5.2.6

For more information on toolchain setup, please refer to our FAQ page.

FAQ

The FAQ page will try to address some of the common questions related to the ble_examples repo.

Examples List

The following examples are currently supported:

beacon_rfdriver

    Send BLE advertisements directly using the RF driver

    docs | project files | src

hid_adv_remote_privacy

    Taking the BLE SDK HID advanced remote example and enableing Privacy 1.2

    docs | project files | src

hid_emu_kbd

    Emulate emulate a HID keyboard using the LaunchPad

    docs | project files | src

multi_role

    Implement multiple GAP roles on a single device.

    docs | project files | src

security_examples

    Demonstrate BLE 4.2 Security Features on CC2650

    docs | central project files | peripheral project files | central src | peripheral src

simple_beacon

    Demonstrate an implementation of a beacon that uses iBeacon technology

    docs | project files | src

simple_central_audio_receiver

    Receive and decode a voice stream over BLE using CC2650 central device and SensorTag or
    HID Advanced Remote peripheral device

    docs | project files | src

simple_eddystone

    Demonstrate an implementation of a beacon that uses the Eddystone beacon format

    docs | project files | src

simple_peripheral_observer

    Demo Peripheral and observer roles on CC2650

    docs | project files | src

simple_proprietary_beacon

    Demonstrate an implementation of a beacon that uses a potential proprietary beacon format

    docs | project files | src

spp_over_ble

    Send bidirectional UART data over BLE, similar to Serial Port Profile (SPP) in Bluetooth Classic

    docs | client project files | server project files | client src | server src

throughput_example

    Demonstrate the maximum theoretical throughput of a BLE link using the 2x CC2650 devices.
    These projects include a demo of 4.2 Data Length Extension, which improves throughput.

    docs | central project files
    peripheral project files | central src | peripheral src

serial_bootloader

    Show implementation of the ROM Bootloader running from Flash memory.
    docs | project files | src

central_to_multiperiperipheral

    Demonstrate a central device disovering and connecting to multiple peripherals.
    docs | project files | src

References

The following reference pages may be helpful during general BLE development. New users of the CC26xx platform and BLE are encouraged to read the Software Developer's Guide and complete the SimpleLink Academy training.

Other resources can be found below: