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.

SIMPLELINK-CC13XX-CC26XX-SDK: Manufacturer Specific data gets additional 0x00 added

Part Number: SIMPLELINK-CC13XX-CC26XX-SDK
Other Parts Discussed in Thread: SYSCONFIG

Hi,

after I did the migration from SDK 6.20 to 7.10 I discovered an error in sysconfig. It told me that my ScanResponse Data is to large but I didn't change it.
I removed the Slave Connection Interval Range from the ScanResponse since I don't need it anyway.

But when I look at the ScanResponse with the nRF Connect App I can see an additional 0x00 added to my Manufacturer Specific Data.
This is probably the reason why sysconfig told me the ScanResponse is to large.

I only add one byte of additional data to my manufacturer specific data which is also shown in the generated file ti_ble_config.c

Is this a bug in the new SDK/sysconfig version?

Best regards

Sebastain

  • Hi Sebastain,

    What chip are you using here?

    Regards,

    Arthur

  • Hi Arthur,

    I use the CC2642R1F

    Regards

    Sebastian

  • Hello Sebastian,

    Thanks for reporting this.

    I was able to reproduce it and as you say it appears that sysconfig is not showing the extra 0x00 byte (although it is counting it).

    We have reported the issue and we are looking for a workaround. Please bear with us.

    However, I don't understand if sysconfig is at the moment indicating you that the scan response payload is too big considering that in the picture you posted there are only 25 bytes. Or is this a different case?

    BR,

    David.

  • Hi David,

    thanks, I am looking forward to your workaround.

    Yes it is a different case, I already removed the six bytes Slave Connection Intervalval Range (05 12 0C 00 24 00) from our Scan Response as a workarund since we dont use it.

    So at the moment we have a working application with 25 bytes Scan Response plus the additional 0x00 which would be nice if removed.

    Best regards

    Sebastian

  • Hello Sebastian,

    You can do two things here:

    1. Disable the ti_ble_config.c so that it is not included in build for you to modify it manually.                                                         
    2. You can cd into the SDK files: cd C:\ti\simplelink_cc13xx_cc26xx_sdk_7_10_01_24\source\ti\ble5stack\.meta\templates\ and modify ble_config.c.xdt with the following. Basically we make sure that the length variable is equal to the manufacturer and additional data real payload.
      % if(module.GAP_ADTYPE_MANUFACTURER_SPECIFIC)
      %{
      % length = 3 + _.divide(((module.additionalData.toString(16)).length-2),2);
        0x`common.addZeroFromLeft(length.toString(16))`,
        GAP_ADTYPE_MANUFACTURER_SPECIFIC,
        //Company Identifier
        `common.advDataHexValues(module.companyIdentifier.toString(16).padStart(4, "0"))`
        //Additional Data
      %  var data = module.additionalData.toString(16).toLowerCase()
      %  if(data.startsWith("0x")){
      %    data = data.slice(2)
      % }
        `common.advDataHexValues(common.addZeroFromLeft(data.toString(16)))`
      %}
      };

    Nevertheless, this issue has been reported and a proper fix will be soon implemented.

    Let me know if this helps.

    Best Regards,

    David.

  • Hi David,

    Thanks for your workaround.

    I can confirm that option 2) works. Anyway I am looking forward to the proper fix since option 2 has some drawbacks.

    Best Regards,

    Sebastian