BLE5-Stack 2.02.02 (SDK 5.20) to BLE5-Stack 2.02.03 (SDK 5.30)

This section will describe a way to migrate a project from BLE5-Stack 2.02.02 to a BLE5-Stack 2.02.03 project.

The best way to migrate is to open a new project from the new SDK and transfer your changes and application code over to the new example.

Porting Simple Peripheral

For this migration guide, Simple Peripheral from BLE5-Stack 2.02.02 will be ported over to BLE5-Stack 2.02.03. The recommended approach is to start with a BLE5-Stack 2.02.03 project that contains the same base functionality as the porting target project and merge in any custom functionality.

  1. Choose a BLE5-Stack 2.02.03 example project that contains your target project’s base functionality.

  2. Transfer all modified application files from BLE5-Stack 2.02.02 into the BLE5-Stack 2.02.03 example project.

    In this example, the following files from BLE5-Stack 2.02.02 were moved into Simple Peripheral BLE5-Stack 2.02.03 example:

    • simple_peripheral.c

    • simple_peripheral.h

  3. Move any profiles and services that the application is using to the BLE5-Stack 2.02.03 project.

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

  5. If necessary, update the project to use the newer TI-RTOS drivers that are supplied with the SimpleLink CC13xx/CC26xx SDK.

  6. Refer to the Core SDK release notes for additional information and the TI-RTOS examples included with SimpleLink CC13xx/CC26xx SDK.

    For additional information on how BLE5-Stack 2.02.03 uses TI-RTOS see TI-RTOS (RTOS Kernel) Overview.

    For any utilized TI Drivers, review TI-RTOS Kernel (SYS/BIOS) User’s Guide and TI Drivers API Reference.

Porting Simple Central

This section of the migration guide will focus on porting Simple Central from BLE5-Stack 2.02.02 to the BLE5-Stack 2.02.03. The recommended approach is to start with a BLE5-Stack 2.02.03 project that contains the same base functionality as the porting target project and merge in any custom functionality.

  1. Choose a BLE5-Stack 2.02.03 example project that contains your target project’s base functionality.

  2. Transfer all modified application files from BLE5-Stack 2.02.02 into the BLE5-Stack 2.02.03 example project.

    In this example, the following files from BLE5-Stack 2.02.02 were moved into Simple Central BLE5-Stack 2.02.03 example:

    • simple_central.c

    • simple_central.h

  3. Modify main.c in the BLE5-Stack 2.02.03 example if additional tasks were added in the BLE5-Stack 2.02.02 project.

  4. Move any profiles and services that the application is using to the BLE5-Stack 2.02.03.

  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-RTOS drivers that are supplied with the SimpleLink CC13xx/CC26xx SDK.

  7. Refer to the Core SDK release notes for additional information and the TI-RTOS examples included with SimpleLink CC13xx/CC26xx SDK.

    For additional information on how BLE5-Stack 2.02.03 uses TI-RTOS see TI-RTOS (RTOS Kernel) Overview.

    For any utilized TI Drivers, review TI-RTOS Kernel (SYS/BIOS) User’s Guide and TI Drivers API Reference.

A Few Noteworthy Changes from BLE5-Stack 2.02.02 to BLE5-Stack 2.02.03

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.

  • Added host_test example for all the devices with 704 kB of flash (CC13x2x7, CC26x2x7)

  • Added BLE examples for the PSIP and RSIP devices (CC2652RSIP, CC2652PSIP)

  • Added host_test and project_zero examples for the CC2651P3 device

  • Add new API to Set Channel Map Per Connection (HCI_EXT_SetHostConnChanClassificationCmd)

  • Add new API to Update/Configure Default Channel Map (HCI_EXT_SetHostDefChanClassificationCmd)

Porting from BLE5-Stack 2.02.02 to BLE5-Stack 2.02.03 with SysConfig Disabled

Attention

Due to a new feature addition on the SysConfig Tool with regards to the TI kernel, customers who have disabled SysConfig will have to re-run the SysConfig tool and regenerate ti_drivers_config.c/h on the latest SDK. Without doing so, some drivers will not be configured correctly and may not work.

The project.syscfg(ex: simple_peripheral.syscfg) file additionally expects one more argument in the latest SDK. The argument is to set the rtos version for the project either tirtos or freertos. Without the argument, it will result linker error, missing symbols for kernel objects. When porting to the latest SDK, the project’s .syscfg file needs to be manually updated to include the argument highlighted below:

” // @cliArgs –board /ti/boards/CC26X2R1_LAUNCHXL –rtos tirtos

A few noteworthy changes that may affect users who are porting a project to the latest SimpleLink CC13xx/CC26xx SDK are listed below. This is not an exhaustive list. Therefore, it is recommended that customers perform a diff of both SDKs when porting to ensure all required changes to the application are made. This section largely covers changes made outside the BLE5STACK folder inside the SimpleLink CC13xx/CC26xx SDK.

  • The SPICC26X2DMA_HWAttrs struct inside SPICC26X2DMA.h has been modified to refactor the management of different SPI channels. Entries were added to this struct. This should not functionally impact the application. Be sure to re-run SysConfig on the latest SimpleLink CC13xx/CC26xx SDK to ensure the correct configuration of this driver.

  • The UART2CC26X2_HWAttrs struct inside UART2CC26X2.h has been modified in a similar fashion to that listed above.

  • Instances of the PIN driver (e.g. PIN_State, PIN_Handle, etc) have been removed in many places and replaced with instances of the GPIO driver. For more information, see GPIO++ Driver Porting Guide.