The Bluetooth® Mesh Software Product Brief describes the overall Bluetooth Mesh software content provided by Texas Instruments (TI). This document provides a high-level overview of the features and capabilities of our Bluetooth Mesh stack without specific details. The Bluetooth Mesh stack is provided inside TI’s Bluetooth 5 Stack’s Software Development Kit (SDK). For further information on APIs and implementation details, see the “BLE5-Stack User’s Guide” [9] inside the SIMPLELINK-CC13XX-CC26XX-SDK.
Bluetooth® is a registered trademark of Bluetooth SIG, Inc.
Zephyr® is a registered trademark of The Linux Foundation.
All trademarks are the property of their respective owners.
Bluetooth Mesh [2] is standardized by the Bluetooth Special Interest Group (SIG) [1] in the Bluetooth Mesh Specification [3] and defines fundamental requirements to enable an interoperable mesh networking solution for Bluetooth Low Energy (LE) wireless technology. Built upon existing Bluetooth LE technology, Bluetooth mesh extends the range of wireless connectivity, supports large device networks, and offers mandatory security to offer a proven and scalable software solution.
TI’s Bluetooth Mesh solution [14] is based on the open source Zephyr® Project’s Bluetooth Mesh library. A translation layer is provided that bridges TI’s Bluetooth 5 stack [9] with the Zephyr Project solution [4], allowing for additional proprietary feature support through TI’s Bluetooth 5 stack implementation.
TI’s Bluetooth Mesh solution is designed to support most Bluetooth Mesh specified profiles [3], including both foundation models as well as custom vendor commands.
Component | Version |
---|---|
TI’s Bluetooth Mesh solution | 2.02.xx.xx |
Distribution | Included in simplelink_cc13x2_26x2_sdk_5_10_00_xx and later https://www.ti.com/tool/SIMPLELINK-CC13XX-CC26XX-SDK |
IDE Support | CCS 10.3+ for Windows® 10, Linux®, and
macOS® IAR EWARM-8.50.9 for Windows® 10 |
Compiler support | TI Arm 20.2.4.LTS+ TI Clang 1.2.1+ |
Supported devices | CC2642R, CC2652R, CC2652RSIP, CC1352R, CC1352P, CC2652R7 |
Recommended development kits | PC (host) + CC26x2R1
Launchpad CC1352P Launchpad Launchpad™ SensorTag LPSTK-CC1352R |
Certifications | Bluetooth mesh profile specification v1.0.1 - QDID 162204 |
Application | Usage |
---|---|
simple_mesh_node | Implements a basic Bluetooth Mesh node with Relay, Proxy, Friend, and Low Power Node capabilities using GATT/ADV bearer.Concurrent operation of a Bluetooth Mesh node and a Bluetooth LE peripheral is also supported. |
simple_mesh_node_oad_offchip | Same as simple_mesh_node above with off-chip OAD functionality to enable wireless firmware updates over the Bluetooth LE connection. |
simple_mesh_node_oad_onchip | Same as simple_mesh_node above with on-chip OAD functionality to enable wireless firmware updates over the Bluetooth LE connection. |
mesh_app_python | A Python based network processor project that utilizes eRPC to interface with a simple_mesh_node. |
Code Example and Wireless MCU | Consumed FLASH (in bytes) |
Consumed RAM (in bytes) |
Configuration |
---|---|---|---|
simple_mesh_node | 178929 | 27175 | Basic node |
simple_mesh_node | 200277 | 25594 | Basic node + ERPC (2-chip) |
simple_mesh_node | 182665 | 27351 | Low Power Node |
simple_mesh_node | 204690 | 25770 | Low Power Node + ERPC (2-chip) |
simple_mesh_node | 179095 | 27175 | Relay |
simple_mesh_node | 200440 | 25594 | Relay + ERPC (2-chip) |
The above data is taken based off the simple_mesh_node example with select configurations. Additionally, devices that were compiled with ERPC support consequently have UART enabled, as ERPC enables a 2-chip configuration over serial port (i.e. UART). This leads to a slightly higher memory footprint with the ERPC configured projects. For more information about ERPC and our host tool, refer to the following section of our User's Guide: TI Bluetooth Mesh Host PC Tool. Note: the links provided in this document pertain to SDK version 5.30.01.01. For the most accurate information, be sure to leverage the documentation dedicated to the SDK version you are using. Actual results may vary slightly based on the SDK you are leveraging, device type, and other factors like IDE and compiler. The results shown above were taken using a CC2652R1 Launchpad example on the following SDK: simplelink_cc13xx_cc26xx_sdk_5_30_01_01 using CCS v11.0 and the TI Clang compiler v1.3.0 LTS. The data provided above should be used for reference purposes only.
TI’s Bluetooth mesh stack is a certified mesh stack, implemented per the specification [3] provided by the Bluetooth SIG [1]. TI’s Bluetooth Mesh solution is based on the open source Zephyr Project’s Bluetooth Mesh library [4]. A translation layer is provided that bridges TI’s Bluetooth 5 stack with the Zephyr Project solution. Shown below is the software flow diagram with regards to Zephyr Mesh and TI’s BLE5 stack.
For more details on the software layers of the Zephyr Mesh stack, please refer to the Bluetooth Mesh Basics section of the BLE5-Stack’s User Guide. In addition to the User’s Guide section mentioned above, users can refer directly to documentation provided on the Zephyr Project page.
TI’s Bluetooth mesh solution supports all node features defined by the specification, including:
Node Features | Supported |
---|---|
Relay | Yes |
Proxy | Yes |
Friend | Yes |
Low Power | Yes |
As part of the specification [3], nodes can be configured to support multiple node features at one time. For example, a node can be configured to support Proxy features and Relay Features. However, a node configured as a Low Power Node may not be configured for any additional role.
TI’s Bluetooth mesh solution also supports the following Bluetooth SIG [1] defined models. At this time, the below models are supported by TI but not qualified by the Bluetooth SIG (with the exception of Foundation models) [1]. In addition to the below list, TI supports the creation of custom Vendor models as well.
Model Group | Mesh Models | Supported |
---|---|---|
Foundation | Foundation Models (configuration & health server/client) | Yes |
Vendor | Custom Vendor Model | Yes |
Generic | Generic OnOff Server | Yes |
Generic OnOff Client | Yes | |
Generic Level Server | Yes | |
Generic Level Client | Yes | |
Generic Default Transition Time Server | Yes | |
Generic Default Transition Time Client | Yes | |
Generic Power OnOff Server | Yes | |
Generic Power OnOff Setup Server | Yes | |
Generic Power OnOff Client | Yes | |
Generic Power Level Server | No | |
Generic Power Level Setup Server | No | |
Generic Power Level Client | No | |
Generic Battery Server | Yes | |
Generic Battery Client | Yes | |
Generic Location Server | No | |
Generic Location Setup Server | No | |
Generic Location Client | No | |
Generic Admin Property Server | No | |
Generic Manufacturer Property Server | No | |
Generic User Property Server | No | |
Generic Client Property Server | No | |
Generic Property Client | No | |
Sensor | Sensor Server | Partial |
Sensor Client | Partial | |
Sensor Setup Server | No | |
Time and Scenes | All | No |
Lighting | All | No |
Our solution supports provisioning over both GATT (PB-GATT) and Advertisement (PB-ADV) Bearer’s, as defined in the Bluetooth Mesh Profile Specification [3].