Porting a CC2640R2F Project to a Newer Stack Version¶
This section will describe porting a CC2640R2F project from a previous BLE-Stack version to a newer BLE-Stack version.
Porting Instructions from BLE-Stack 3.0.0 to BLE-Stack 3.00.01¶
This section will describe a way to port a project from BLE-Stack 3.0.0 to a BLE-Stack 3.00.01 project.
For this porting guide, simple_peripheral from BLE-Stack 3.0.0 will be ported over to BLE-Stack 3.00.01. Because the directory structure is nearly identical between the two releases, the recommended approach is to start with a BLE-Stack 3.00.01 project that contains the same base functionality as the porting target project and merge in any custom functionality.
Choose a BLE-Stack 3.00.01 example project that contains your target project’s base functionality.
For reference, see available sample projects that start with simple_
In this example, we’re going to use simple_peripheral as the starting BLE-Stack 3.00.01 sample project.
Transfer all modified application files from BLE-Stack 3.0.0 into the BLE-Stack 3.00.01 example project.
In this example, the following files from BLE-Stack 3.0.0 were moved into simple_peripheral BLE-Stack 3.00.01 example:
simple_peripheral.c
simple_peripheral.h
simple_gatt_profile.c
simple_gatt_profile.h
Modify
main.c
in the BLE-Stack 3.00.01 example if additional tasks were added in the BLE-Stack 3.0.0 project.Attention
For applications using Directed Advertisements comment out
#define GBM_GATT_NO_CLIENT
ingapbondmgr.c
of BLE v3.0.0 project to remain compliant with BLE Core Specifications.1 2 3 4 5
#ifdef GATT_NO_CLIENT #ifndef GBM_GATT_NO_CLIENT //#define GBM_GATT_NO_CLIENT // <-- Comment this out #endif // !GBM_GATT_NO_CLIENT #endif // GATT_NO_CLIENT
See Directed Advertisements as GATT Server for more information.
If necessary, update the project to use the newer TI-RTOS drivers that are supplied with the SimpleLink CC2640R2 SDK.
The following drivers have changed from BLE-Stack 3.0.0. Please see the changes to these drivers by comparing the supplied headers between those in simplelink_cc2640r2_sdk_1_00_00_2 and those in the SimpleLink CC2640R2 SDK.
ADCCC26XX.h
RF.h
Also, refer to the Upgrade and Compatibility Information for additional information and the TI-RTOS examples included with SimpleLink CC2640R2 SDK.
For additional information on how BLE-Stack 3.00.01 uses TI-RTOS see TI-RTOS Overview
For any utilized TI Drivers, review TI-RTOS Kernel Users Guide and Driver APIs.