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.

LP-CC1352P7: OpenThread syscfg is not loading board specific CCFG settings

Part Number: LP-CC1352P7
Other Parts Discussed in Thread: CC1352P7, SYSCONFIG

We noticed that bootloader backdoor is not working on our Openthread RCP builds.

Building LP1352P7-4 from this branch:
https://github.com/TexasInstruments/ot-ti/commits/release/thread-1.3-certification-support

The settings are in lprf_ccfg_settings.js:

    LP_CC1352P7_4_CCFG_SETTINGS: {
        xoscCapArray: true,
        xoscCapArrayDelta: 0xC1,
        enableBootloader: true,
        enableBootloaderBackdoor: true,
        dioBootloaderBackdoor: 15,
        levelBootloaderBackdoor: "Active low"
    },

However after build these are not applied in `ti_devices_config.c`

As a work around I have applied these manually in syscfg which does seem to get picked up ok

Device.enableBootloaderBackdoor =  true;
Device.dioBootloaderBackdoor = 15;

  • Hi Tim,

    Thank you for alerting us to this behavior, your workaround is the correct and suggested method to overcome this issue.  I'll ask the Software Development Team to further consider what is happening with the SysConfig file generation.

    Regards,
    Ryan

  • Can you provide any insight of how to implement custom 

    `rfDriverCallbackAntennaSwitching` function within the CMake build system use in the thread repo?

    I've tried defining my own function but the linker seems to prefer weak definition in ti_drivers_config.c
  • How are you defining the new rfDriverCallbackAntennaSwitching function within your application?  How do you debug and confirm that the original version existing inside of ti_drivers_config.c is still being used?  I had success when adding the following to examples/apps/cli/main.c:

    #include <ti/drivers/GPIO.h>
    #include <ti/devices/DeviceFamily.h>
    #include DeviceFamily_constructPath(driverlib/ioc.h)
    #include <ti/drivers/rf/RF.h>
    
    oid rfDriverCallbackAntennaSwitching(RF_Handle client, RF_GlobalEvent events, void *arg)
    {
        //CONTENT HERE
    }

    It may be possible to remove ti_drivers_config.c from being generated inside of src/CMakeLists.txt and copy/pasting your own version in the build folder, but I personally have not tested this approach.

    Regards,
    Ryan

  • I created a new source file rfswitching.c in the src/ folder and added it to openthread-cc13xx_cc26xx library in CMakeLists. Its builds into the library, but the linker not picking it up.

    I will try instead putting it into "ncp/main.c", this is what is used for rcp build? 

  • ncp/main.c is the correct location for RCP build.

    Regards,
    Ryan

  • yes, that worked.