Skip to content

Additional examples to compliment TI's Bluetooth Low Energy Stack offerings.

Notifications You must be signed in to change notification settings

TexasInstruments/ble_examples

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

Introduction

These examples and demos are for TI SimpleLink CC2640R2 SDK 1.40.00.45

This repository contains experimental Bluetooth® 5 and Bluetooth® 4.2 Low Energy sample applications for Texas Instruments' SimpleLink CC2640R2 SDK. These examples have not been validated as production-ready.

Do not use GitHub's bug tracking feature for support. For inquiries, see the Bluetooth® low energy Forum.

To use the examples and tools in this repository, please download and install the SimpleLink CC2640R2 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.

For extra examples for TI BLE-Stack 2.2.x SDK (CC26x0R1), see Branch: ble_examples-2.2.

Navigating the Repository

The examples provided on this GitHub page serve as a plugin to a corresponding BLE-Stack SDK release. The master branch will always point to the latest release.

Older releases can be accessed by checking out/downloading their corresponding branch. For more information on supported examples please consult the readme.md of the desired branch/release.

Note: As of CC21640R2 SDK 1.35 and later the ble5apps component was added.

  • ble5apps: Supports the Bluetooth 5 Core Specification and TI's BLE5-Stack.
  • bleapps: Supports the Bluetooth 4.2 Core Specification and TI's BLE-Stack component.

For for more information about different SDK components, please consult the stack's User Guide.

Change Log

Note: The version numbers below are related to GitHub ble_examples releases. The numbering scheme is in the form of M.mm.pp.bb. The fields pp.bb are incremented as GitHub examples are released, M.mm will map a GitHub release to a SimpleLink SDK release.

1.40.03.03

  • Addition of Peripheral Observer Project
  • Audio project establish link bugfix
  • Audio disovery cleanup
  • Readme updates

1.40.02.02

  • Memory optimized Duplex Audio demo (Central Peripheral)
  • SPP over BLE bug-fixes
  • Throughput demo fixes and porting to 1.40 SDK

1.40.01.01

  • Added SPP over BLE (client/server) projects for BLE5- Stack and BLE-Stack
  • Minor ANCS updates

1.40.00.00

Initial offering of Simplelink CC2640R2 SDK 1.40.00.45 examples.

  • BLE5-Stack: Throughput Demo (Central/Peripheral)
  • BLE5-Stack: Long Range Demo (Central/Peripheral)
  • BLE5-Stack: Serial Port Profile (SPP) Server/Client
  • BLE-Stack: Serial Port Profile (SPP) Server/Client
  • BLE-Stack: Bidirectional Audio Demo (Central/Peripheral)
  • BLE-Stack: Apple Notification Center Service (ANCS) Demo (Peripheral)
  • Tools: voice.py script for Voice-over-HOGP

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.

  1. Click the green "Clone or download" button
  2. Select "Download ZIP" option
  3. Zip folder will appear in your Downloads folder

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

By default the SimpleLink CC2640R2 SDK will install to:

C:\ti\simplelink_cc2640r2_sdk_1_40_00_45

If the Simplelink CC2640R2 SDK must be installed to a different location, then see the FAQ page for IDE specific instructions for changing environment variables.

Required Tools

Similar to the Simplelink CC2640R2 SDK, the examples in this repository support the CCS and IAR 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.

  • CCS v7.2.0 with TI ARM Compiler v16.09
  • IAR for ARM v8.11.2

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 / Demo List

Full Duplex Bidirectional Audio Demo

Encode and transmit a full duplex bidirectional audio stream over BLE using two CC2640R2 LaunchPads with CC3200AUDBOOST.

Bluetooth 5 Throughput Demo

This is a 2 part demo where a throughput_central and throughput_peripheral connect with one another, demonstrating the BLE5-Stack's 1 Mbps, 2 Mbps, 1 2 Mbps, and Coded PHYs.

Bluetooth 5 Long Range Demo

This is a 2 part demo where a longrange_central and longrange_peripheral connect with one another, demonstrating the BLE5-Stack's long range capabilities using the Coded PHY (S8).

Serial Port Profile (SPP) BLE Examples

This is a 2 part example where a spp_ble_client and spp_ble_server connect with one another and exchange data over UART.

The demo supports Bluetooth 5 demonstrating the BLE5-Stack's new high speed 2Mbps PHYs:

The example also supports Bluetooth 4.2 demonstrating the BLE-Stack's Data Length Extension with OAD support:

Simple Peripheral Observer BLE Example

This sample project is used to add observer role to a BLE peripheral device to show scanning functionality in a peripheral based project.

The example supports Bluetooth 4.2:

Apple Notification Center Service (ANCS) Demo

This is an example that demonstrates the use and functionality of the ANCS. ANCS is a GATT service present on iOS devices used to retrieve and interact with iOS notifications.

Tools

This is script allows developers to evaluate the Voice over HID-over-GATT-Profile (HoGP) profile which is demonstrated as part of the voice_hogp_remote example. The voie_hogp_remote is available as part of the Simplelink CC2640R2 SDK BLE Example Pack. The voice.py Python script is compatible with Python 2 or Python 3 and depends on the Windows® only pywinusb python module. The script has been tested to work on a Window 10 host with a BLE 4.0 compatible BLE controller. For help on how to use the voice.py script, simply invoke its help menu voice.py --help.

References

The following reference pages may be helpful during general Bluetooth Low Energy development. New users of the Simplelink CC2640R2 platform and Bluetooth 5 development are encouraged to read the BLE5-Stack User's Guide. Users developing Bluetooth 4.2 applications are encouraged to read the BLE Software Developer's Guide.

As an additional resource, users are encouraged to complete the SimpleLink Academy training.

Other resources can be found below: