CC2642R:Bluetooth communication issue between CC2642 and ESP32!

Part Number: CC2642R
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hello,

We have been using the CC2642 in our company for a long time and have manufactured tens of thousands of products. However, we are currently facing a major issue.

We communicate with the CC2642 via Bluetooth using our mobile application. On some smartphones, the Bluetooth broadcasts are not listed. While this is not a critical problem for us, we would still appreciate assistance with resolving this issue as well.

Our main problem is as follows:
Using the same code and the same hardware, we can easily connect to smartphones. However, when we scan with one of our products that uses an ESP32 at the central hub, we cannot see the BLE broadcasts from the CC2642. Sometimes the connection is established, but other times it is not established at all.

We are seeking your help with this significant issue. We are ready to share any details you may need.

By the way, we run NRF52832 without any problems with our existing esp32 device.

Looking forward to your assistance.

  • Hi,

    Thank you for reaching out. I have a few questions that may help us find an explanation for the behavior as quickly as possible. Can you share the SDK version you are using? Which advertising interval is the CC2642 device using and what are the scanning parameters (duration, period, etc.) of the ESP32?

    Best Regards,

    Jan

  • Thank you very much for your response. We are using simplelink_cc13x2_26x2_sdk_4_40_04_04 as the SDK. The CC2642 is set with an advertising interval of 500ms. The ESP32 is configured with a scan interval of 100 and a scan window of 100.

  • Hi,

    No problem. Thank you for the information. I would suggest migrating to the latest SDK as many releases, bug fixes and improvements have occured since the 4.40 release. With regards to the advertising interval and scanning interval, it is recommended to have a scan interval/window that is atleast twice as long as your advertising interval. As a quick test, could you try reducing the advertising interval to 50ms or modifying both values such that the scan is double the length of the adv interval?

    Best Regards,

    Jan

  • We have already tried your suggestions, but unfortunately, they did not resolve the issue.
    Regarding the SDK, the project is quite large, and migrating to the new SDK would be a long and labor-intensive process. However, I tested an example application with the latest SDK and observed that the advertisement for the CC2642 was visible. Migrating to the new SDK seems to be a solution, but do you have any tools or guidelines that could make this transition easier for us? If not, we are forced to find a solution using the current SDK.

  • Hi,

    As a quick test, can you check if the same behavior is seen in the example application in your SDK?I would like to see if the behavior is present in an unmodified example in your SDK to see if a migration is necessary. If migrating ends up being necessary, then we have migration guides available in the following User's Guide section

    https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_7_41_00_17/docs/ble5stack/ble_user_guide/html/ble-stack-5.x-guide/migration-cc13xx_cc26xx.html

    Best Regards,

    Jan

  • Hello Jan,

    We have identified the root cause of the issue, and unfortunately, it is not related to the SDK but rather a mistake by the hardware design team. A 12pF capacitor was added in parallel to the 48MHz crystal, which caused a frequency shift in the BLE channels.

    To address this issue, we aim to correct the frequency drift using the XOSC Cap Array Modification.

    In Smart RF Studio, we observed improvements on the signal analyzer when using this modification. However, in our own software, even though we configure the settings in SysConfig as shown in the attached image, we couldn’t find any generated code related to this configuration.

    Could you provide guidance on how to properly utilize the XOSC Cap Array Modification in this context?

    Note: We do not have the chance to remove the capacitors because more than 10,000 devices are working in the field.


  • Hi,

    Glad to hear you were able to find the cause of the behavior. You should be ab le to modify the cap array values through sysconfig. If you click the circled button, you will be able to see which files are modified when a sysconfig change is performed.

    Modifying the cap array value will update the ti_devices_config.c which should be used during the board initialization functions to set it to the newly provided delta.


    Best Regards,

    Jan

  • Dear Jan,
    Unfortunately, sysconfig does not display or create this file. Additionally, I cannot see the selection I made regarding the XOSC Cap Array Modification in the project files as code.
    How can I generate the ti_devices_config.c file?
    Thank you.

  • Hi,

    Can you share which version of CCS and SysConfig you are using?

    Best Regards,

    Jan

  • The version information for both is as follows.

    Best Regards

  • Hi,

    Thank you for providing the information. I missed that the project is an OAD-enabled project. I truly apologize for the inconvenience or any confusion that I may have caused. When using an OAD on-chip project, the CCFG is configured in the BIM project (included in the nortos directory within the SDK). You can manually configure the CCFG in that project and it will be used for the actual simple_peripheral OAD onchip application. Please refer to the ccfg_app.c file included in  the bim project to see how to modify it. You may use a non-oad simple_peripheral with the desired modifications placed in sysconfig to get a reference for how the CCFG should be modified.

    Best Regards,

    Jan

  • My teammate and I accessed the registers where the settings were written and made the edits. And we got the result we wanted, thank you for everything.