BLE5-Stack SysConfig Features¶
Warning
SysConfig integration for BLE5-Stack examples is not yet complete. As such, certain configurations settings may be generated by SysConfig, but not used by the application. Please modify the application file sources directly as needed to work around this.
Checking if SysConfig is used for BLE¶
Projects that are using SysConfig to configure BLE will have a green check mark next to BLE as shown in the green rectangle.
Note
Get started with SysConfig provides an overview of what SysCfg is and how to get started with it. Please take a look at this if you have not already.
Get started with SysConfig enabled BLE5-Stack projects¶
After importing a SysConfig enabled BLE5-Stack project into CCS, by double clicking on the *.syscfg
file, a GUI will appear where the project can be configured more easily. A number
of BLE5-Stack configurable features are included in this GUI. Figure 112.
shows what this looks like when importing the basic_ble
example.
Figure 112. Also shows many different configurable parameters
for the project. The first few configurable options inside the Software -> BLE
panel are as shown below. The generated file name for the BLE5-Stack feature is
ti_build_config.opt
.
The Device Role
configurable is an example of a drop down list where
you can select the specific Device Role
you wish to use. Device Role
refers to the GAP Roles that the project operates as. This can be seen
in Figure 114. There are many different options with
different input methods available.
When you first open a SysConfig project all of the settings for that project will be at their default values that are known to work with that example. Providing this amount of quick and easy configuration for a project is powerful. However, as we know, with great power comes great responsibility. Any one specific example is not guaranteed to function properly with any and all permutations of the available configurable options. More specifically, BLE5-Stack projects are written to implement one (or more) specific Generic Access Profile (GAP) Role Combinations, so one should not switch this unless you know what you’re doing. As long as the files that are generated from your input compile, the project will build. Whether or not it performs to the same degree depends on what you changed the options to.
Furthermore, the options that are available to modify will depend on the
GAP Roles that have been selected. Changing the Device Role
may
add or remove options below it. If changing the Device Role
option is
required, it is suggested to change this first so that you do not lose any work
you have already done below.
Open the SysConfig output (see Viewing SysConfig Output). After selecting a file you will be able, in real-time, to identify how the changes in the GUI effect the generated files. This will help you review the relationship between the GUI and the code.
Note
Changes will appear as a diff in the code view. Changes will be applied when the project is rebuilt.
Additional Configuration Categories¶
Note
Remember that the following Configuration Categories will depend on the
Role Combination
(GAP Roles) you’ve chosen. Change
Role Combination
before changing any of the below options.
Bond Manager¶
These settings control all the bond manager parameters and generate the function
setBondManagerParameters()
in ble_config.c. This function sets all the bond
manager parameters as configured by SysConfig, and should be called from the
main application.
Note
Currently, there is a limitation when using SysConfig to configure the number of bonds. SysConfig will only successfully configure up to 10 bonds. If the user configures more than 10 bonds in SysConfig, the first 10 connections will bond and pair successfully while the remaining connections will pair successfully, but fail bonding. Please refer to GAPBondMgr and NV for information on how to configure more than 10 bonds.
Advanced Settings¶
In this category you will find settings that configure the application such as Power Management. You can also configure whether to use RCOSC and/or PTM mode. You will also find ICall options. More information:
Extended Stack Settings, see Link Layer (LL)
RCOSC: See App Note on Running Bluetooth Low Energy on CC2640 Without 32 kHz Crystal
ICall, see: Creating Additional ICall Enabled Tasks
Broadcaster Configuration¶
- Advertisements
For each advertisement set, the advertisement parameters (Advertisment Type, Channels, TX Power…), the advertisement data and the scan response can be set. The TX Power parameter will not affect Legacy Advertisement sets.