This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2640R2F: ProjectZero for SimpleLink 1.50.00.71 (NEW EVAL SDK)

Part Number: CC2640R2F


I have a custom 'ProjectZero' which was added some services and characteristics using a TI plugin (tutorial) for Bluetooth Developer Studio. But, it relies on the 'ProjectZero' template (since the code for 'simple_peripheral' project is fairly polluted and different from the ProjectZero, even though it's said both projects are very related).

I would like to use the SimpleLink 1.50.00.71 (already have it), since it allows physical layer custom settings (125kbps for long range), and customize a 'ProjectZero' so I can use my custom services from Bluetooth Developer Studio. 

How one would do that?

  • Hi Leoni,

    The process of creating/adding a custom service is the same as seen in the Bluetooth Developer Studio guide for SDK 1.50: dev.ti.com/.../ble_01_bds.html

    If there are any additional changes relevant to the project, it can be found in the migration guide in the SDK: C:/ti/simplelink_cc2640r2_sdk_1_50_00_71/docs/ble5stack/ble_user_guide/html/ble-stack-5.x-guide/migration.html

    -Sy Su
  • Hi Sy Su.

    Those guides do not help because the plugin for Bluetooth Developer Studio generates code that requires a peripheral.h(.c), but as said here

    * All GAP Roles source files have been removed. These files such as peripheral.c, central.c, will produce build errors and must be removed.

    we can not use these files anymore, and we have a lot of errors.

    Things like 'INVALID_CONNHANDLE' beign changed to 'CONNHANDLE_INVALID' that makes TI projects, awfully weird to work with.

  • Hi Leoni,

    Apologies. Yes, an update for the BDS plugin is not yet available.

    However, the structure of the profile itself has not changed much with the removal of the GAP Roles. For example, the changes in simple_peripheral's simple_gatt_profile.c are the change from INVALID_CONNHANDLE to CONNHANDLE_INVALID (as you have mentioned) and linkDBNumConns to MAX_NUM_BLE_CONNS.

    Most of the changes will reside in your application as the removal of the GAP Roles does introduce a major structure change in the application.
    I would highly suggest opening the project_zero for the CC26x2 and compare that project's project_zero.c file to your project's project_zero.c file to help understand the structure change.
    dev.ti.com/.../

    In addition, there is an API Translation table near the bottom of the migration guide that provides details on how to replace the APIs removed in the absence of the GAP Role files.
    Although this migration guide is for the CC26x2, the process is very similar to what you are attempting to port over. It also provides additional incite as compared to the migration guide you are looking at: dev.ti.com/.../cc2640r2-to-cc26x2.html

    -Sy Su