CC23xx or CC27xx SDK 8.10 to CC23xx or CC27xx SDK 8.20¶
This section will describe how to port a project from CC23xx or CC27xx SDK 8.10 to a CC23xx or CC27xx SDK 8.20 project.
Note
Vulnerability reports and mitigations can be found on Report potential product security vulnerabilities.
Porting Bluetooth LE Projects¶
The recommended method for porting an existing project from CC23xx or CC27xx SDK 8.10 to CC23xx or CC27xx SDK 8.20 is to modify the ProjectSpec file to import the project as a CC23xx or CC27xx SDK 8.20 project.
Porting by modifying the CCS ProjectSpec file (.projectspec
) can be done
when a ProjectSpec file has been updated and maintained throughout the
project’s development. All example projects included in the SDK each come with
their own ProjectSpec file. During development, the included ProjectSpec file
should be updated to match any changes or additions made to the project. This
will make a project more easily package-able and ease migration efforts when
future SDK’s are released. For example, the ProjectSpec file of the basic_ble
project is located in
{SDK_INSTALL_DIR}/examples/rtos/{BOARD}/ble5stack/basic_ble/freertos/ticlang
The following steps will detail the changes needed when porting an out of the box
example from the SDK such as basic_ble
:
Note
This porting method might be more complex for customer specific projects. The following steps are the minimum set of changes required to port a project from CC23xx or CC27xx SDK 8.10 to CC23xx or CC27xx SDK 8.20.
Open the ProjectSpec file in a text editor and modify the product definition line to reflect the new SDK revision and the corresponding SysConfig revision.
products="com.ti.SIMPLELINK_LOWPOWER_F3_SDK:x.xx.xx.xx;sysconfig:x.xx.x"
Also update linecgtVersion="TICLANG_x.x.x"
if it exists in the file. Refer to the Dependencies section in the SDK release notes for the correct SysConfig (and compiler) version. The SDK release notes may be found in{SDK_INSTALL_DIR}/docs/simplelink_mcu_sdk/release_notes_coresdk_lpf3_x_xx_xx_xx.html
In the ProjectSpec file, add the following file paths:
<file path="${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/inc/debugInfo.h" openOnCreation="false" excludeFromBuild="false" action="link" targetDirectory="common/HealthToolkit/inc"></file>
<file path="${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/inc/debugInfo_errno.h" openOnCreation="false" excludeFromBuild="false" action="link" targetDirectory="common/HealthToolkit/inc"></file>
<file path="${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/src/debugInfo.c" openOnCreation="false" excludeFromBuild="false" action="link" targetDirectory="common/HealthToolkit"></file>
In the ProjectSpec file, erase
-DUSE_RCL
from thecompilerBuildOptions
.In the ProjectSpec file, erase
-I${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/drivers/rcl
To learn more information about ProjectSpec files, please reference ProjectSpec Documentation.
It is also possible to migrate a project only using Code Composer Studio interface.
The following steps will detail the changes needed when porting an out of the box
example from the SDK such as basic_ble
:
Import the project into Code Composer Studio.
In order to modify the SDK version and corresponding SysConfig version, do right click on the imported project folder inside the Project Explorer. Go to
General
and selectProducts
and choose theSimpleLink Low Power F3 SDK
version as well as theSysConfig
version. Refer to the Dependencies section in the SDK release notes for the correct SysConfig (and compiler) version. The SDK release notes may be found in{SDK_INSTALL_DIR}/docs/simplelink_mcu_sdk/release_notes_coresdk_lpf3_x_xx_xx_xx.html
![]()
Figure 202. Code Composer Studio - Change SDK and SysConfig Version.¶
In order to add the new file paths, go to
Arm Compiler
and selectInclude Options
. Then select the option to add another entry and add the following paths:${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/inc/debugInfo.h
${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/inc/debugInfo_errno.h
${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/bleapp/health_toolkit/src/debugInfo.c
Please refer to BLE Health Toolkit for more information about this debugging tool.
Figure 203. Code Composer Studio - Add file paths.¶
Please take into consideration that the linker command file has been renamed in this new SDK from
cc23x0_app_freertos
tolpf3_app_freertos
. Thelpf3_app_freertos
uses features from GenMap (See: GenMap). Therefore, in case of modifyinggenMap
, please consider these changes will not be taken into account in the linker command file unless you modified the file to use the GenMap functionality.Please take into consideration that the
Util_constructClock
prototype has been modified. The callback function parameter is no longervoid
but must be defined now asUtilTimerCback
.Remove
-DUSE_RCL
, right click on the project → Properties → Build → Arm Compiler → Predefined Symbols.Remove
-I${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/drivers/rcl
, right clik on the project → Properties → Build → Arm Compiler → Include Options.
Legacy Porting¶
Warning
The following section covers a legacy porting method. Current SDK porting does not require this process and should instead see Porting Bluetooth LE Projects.
For this guide, a peripheral project from CC23xx or CC27xx SDK 8.10 will be ported over to CC23xx or CC27xx SDK 8.20. The recommended approach is to start with the Basic BLE project on CC23xx or CC27xx SDK 8.20 and modify the base configuration to match the peripheral configuration used in the CC23xx or CC27xx SDK 8.10 project. Afterwards, the custom application code should be transferred to the new project.
Import a CC23xx or CC27xx SDK 8.20 Basic BLE project.
Change the default Basic BLE project configuration options in the BLE Module present in SysConfig to match the configuration used in the CC23xx or CC27xx SDK 8.10 project.
Transfer all custom application logic from the CC23xx or CC27xx SDK 8.10 into the CC23xx or CC27xx SDK 8.20 Basic BLE project.
Move any profiles and services that the application is using to the CC23xx or CC27xx SDK 8.20 project.
Transfer the SysConfig settings either visually through the GUI or open both the old and the new project
.syscfg
files and copy-paste the desired settings.If necessary, update the project to use the newer TI drivers that are supplied with the SimpleLink Low Power F3 SDK. Additional details are provided in A Few Noteworthy Changes from CC23xx or CC27xx SDK 8.20 to CC23xx or CC27xx SDK 8.40.
Refer to the Core SDK release notes for additional information and the FreeRTOS examples included with SimpleLink Low Power F3 SDK. The Core SDK release notes may be found in
{SDK_INSTALL_DIR}/docs/simplelink_mcu_sdk/release_notes_coresdk_lpf3_x_xx_xx_xx.html
For additional information on how CC23xx or CC27xx SDK 8.20 uses FreeRTOS see FreeRTOS (RTOS Kernel) Overview.
For any utilized TI Drivers, review TI Drivers API Reference.
A Few Noteworthy Changes from CC23xx or CC27xx SDK 8.10 to CC23xx or CC27xx SDK 8.20¶
You can follow the guide above without addressing these updates; they are listed for your information only. All fine grained details might not be mentioned. Please refer to the specific example you need to port and do a compare between the old and new project files. Please refer to the BLE5-Stack Release Notes for all the details.
Support for new CC23xx or CC27xx variants. Please refer to Comparison of the CC23xx or CC27xx platform devices for more information.
Extended Advertising Support and Qualification.
Periodic Scannning Support and Qualification.
Periodic Advertising Support and Qualification.