CC23xx SDK 7.10 to CC23xx SDK 7.20

This section will describe how to port a project from CC23xx SDK 7.10 to a CC23xx SDK 7.20 project.

Porting Bluetooth LE Projects

The recommended method for porting an existing project from CC23xx SDK 7.10 to CC23xx SDK 7.20 is to modify the ProjectSpec file to import the project as a CC23xx SDK 7.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 packageable 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 a Basic BLE project:

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 SDK 7.10 to CC23xx SDK 7.20.

  1. 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 line cgtVersion="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

  2. Also in the ProjectSpec file, update the path to file rcl_settings_ble.c from ${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/ble5stack_flash/common/cc26xx/rcl_settings_ble.c to ${COM_TI_SIMPLELINK_LOWPOWER_F3_SDK_INSTALL_DIR}/source/ti/boards/cc23x0r5/rcl_settings_ble.c.

  3. In the file cc23x0_app_freertos.cmd, in folder ./freertos/ticlang, append || defined(OAD_DUAL_IMAGE) to the end of any line beginning with #if defined(OAD_APP_OFFCHIP). Additionally, remove both instances of the line #define APP_BASE        (APP_HDR_BASE + MCU_HDR_SIZE); instead, this line should be placed directly under the line #define APP_HDR_BASE    APP_HDR_ADDR. Also, add the following lines to the end of the Memory Sizes section, before the Memory Definitions section:

    #ifdef OAD_DUAL_IMAGE
    #define APP_SIZE        ((FLASH_SIZE - NVS_SIZE - MCUBOOT_SIZE)/2 - MCU_HDR_SIZE)
    #endif //OAD_DUAL_IMAGE
    

    Finally, replace any typos PESISTENT or PERSITENT with PERSISTENT.

    Alternatively, replace cc23x0_app_freertos.cmd with the file provided by the new SDK.

  4. In the file basic_ble.syscfg, in folder ./freertos, add the line ble.basicBLE = true; under the definition var ble = scripting.addModule("/ti/ble5stack/ble"); in the BLE section.

    Alternatively, replace basic_ble.syscfg with the file provided by the new SDK.

  5. Afterwards, the project may be re-imported using the new ProjectSpec file. The newly imported project is now configured to use CC23xx SDK 7.20 instead of CC23xx SDK 7.10.

To learn more information about ProjectSpec files, please reference ProjectSpec Documentation.

If necessary, additional details are provided in A Few Noteworthy Changes from CC23xx SDK 7.10 to CC23xx SDK 7.20.

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 SDK 7.10 will be ported over to CC23xx SDK 7.20. The recommended approach is to start with the Basic BLE project on CC23xx SDK 7.20 and modify the base configuration to match the peripheral configuration used in the CC23xx SDK 7.10 project. Afterwards, the custom application code should be transferred to the new project.

  1. Import a CC23xx SDK 7.20 Basic BLE project.

  2. Change the default Basic BLE project configuration options in the BLE Module present in SysConfig to match the configuration used in the CC23xx SDK 7.10 project.

  3. Transfer all custom application logic from the CC23xx SDK 7.10 into the CC23xx SDK 7.20 Basic BLE project.

  4. Move any profiles and services that the application is using to the CC23xx SDK 7.20 project.

  5. 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.

  6. 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 SDK 7.10 to CC23xx SDK 7.20.

  7. 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 SDK 7.20 uses FreeRTOS see FreeRTOS (RTOS Kernel) Overview.

    For any utilized TI Drivers, review TI Drivers API Reference.

A Few Noteworthy Changes from CC23xx SDK 7.10 to CC23xx SDK 7.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.

  • Bug fixes