Overview

This section describes the high level design and functionality of the Micro BLE Stack that provides a non-connectable undirected advertising feature for a broadcaster application or a dual-mode application where a broadcaster and another communication protocol stack-based application are integrated.

Constraints and Requirements

The Micro BLE Stack has the following internal constraints and requirements:

  • This design optionally depends on partial integration of ICall to save system resources if there already is an application using ICall in the dual-mode use case. In the case of using the ICall module, ICall’s system heap management and TI-RTOS service abstraction will be used.
  • There is no HCI because there is no separation between the controller and the host.
  • The privancy feature is not supported, but random address generation is supported
  • To minimize the memory overhead and remove redundant context switching, the Micro BLE Stack doesn’t have a separate TI-RTOS tastk. It is instead integrated in the application task.

Functional Overview

The Micro BLE Stack consists of two layers: The Micro Link Layer (Micro LL or uLL) and Micro Generic Access Profile (Micro GAP or uGAP).

Micro LL performs:

  • Radio management
  • Device state management between stanby and advertising

Micro GAP performs:

  • Broadcaster role
  • Initialization and configuration of the Micro LL
  • State Management within the role
  • Interfacing with the application

Using the Micro BLE Stack

The source files for the Micro BLE Stack can be found in: <SDK_INSTALL_DIR>\source\ti\ble5stack\microstack, and the header files can be found in: <SDK_INSTALL_DIR>\source\ti\ble5stack\inc. The Micro Eddystone Beacon example demonstrates the use of the Micro BLE Stack, and it can be found at: <SDK_INSTALL_DIR>\examples\rtos\CC2640R2_LAUNCHXL\ble5stack\micro_eddystone_beacon An explanation and overview of this project can be found in the README.html within this folder.