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.

CC2652R7: CC2652R7 Matter

Part Number: CC2652R7
Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG

Hi!  

I have already followed the step to load lock-app on my LP_CC2652R7 of matter branch successfully.  However, I could not make it work unless I mark off the following tag.

# chip_enable_ota_requestor = true
chip_enable_ota_requestor = false

I would like to confirm whether ota_requestor has been implemented on the matter branch or not.  In addition, how do I get the spare flash and memory I can still use during the process.  It striked me that other thread chip vendors with Matter protocol supported tend to embed a much larger flash size (>1M) compared to what TI put inside CC2652R7.  Could we pass the OTA requirements of Matter if we choose CC2652R7 as our main chip on our design?

Vincent

  • Hi Vincent,

    Can you please explain what does not work when chip_enable_ota_requestor is true?  Will the project not build or does the application not run on your device as expected?  I have not experienced any difficulty with running the chip-LP_CC2652R7-lock-example-bim.hex generated inside matter/examples/lock-app/cc13x2x7_26x2x7 output folder.  The OTA requestor has been implemented on the matter branch and further resources will be available within the upcoming months.  Flash and RAM consumption from the build are shown in the output *.map file and OTA on the CC2652R7 will require an off-chip solution through an external flash memory device.

    Regards,
    Ryan

  • Hi!  Ryan,

    With regard to the chip_enable_ota_requestor issue, I discovered that the EVB of LP_CC2652R7 won't start and send nothing to the Debug port after I uploaded the image of lock_app to the board.  After I switch that setting to 'false', the system sends a bunch of debug messages.  Is there additional setting of the test environment in order to make 'chip_enable_ota_requestor=true' work?

    In addition, I also discovered that the reset button on the LP_CC2652R7 won't work unless I change a few setting in the BUILD.gn and chip.syscfg  Have you tested the switch button LP_CC2652R7 with lock_app?  I wonder whether what I did is related to that at all.  There is a comment in chip.syscfg make me wonder that I may need additional project to load the code to the board.  That comment is 

    'Disable CCFG generation, this is added by the BIM project'

    Do I have to load a separate BIM project to the board in order to test it?

    BTW, the reason that I asked about the memory usage is that we worried that we may not be able to pass the Matter certification after we implement our code and put ota mechanism in place.  If there is a way to add external flash memory device, is there any document we could refer to to understand how we can wire the additional flash memory?

    Vincent

  • Hi! Ryan,

    We have already figured out the way to add an extra flash chip.  We just follow the same design in the LP_CC2652R7 board.  

    BTW, we tested the BIM project in the SDK and discovered that off-chip version is not compatible with the current project.  On the other hand, on-chip version could work.  We would like to know what causes the problem.  

    Vincent

  • Hi Vincent,

    There should not be any issue with using the default project settings to produce a chip-LP_CC2652R7-lock-example-bim.hex output file which can then be loaded onto a LP_CC2652R7 which has erased all flash memory.  Your comments suggest that the BIM has not been properly loaded which should not be the case with the hex image I've suggested.  You should not need to use any BIM projects from the SDK.  Internal analysis indicates that out-of-box FTD projects with OTA included have >40 kB of Flash and >70 kB of RAM remaining for further user development.

    Regards,
    Ryan

  • Hi! Ryan,

    When I turned on chip_enable_ota_requestor=true, I could not see and operate on any LEDs and BUTTONS.  Is there any extra environment configuration I need to prepare in order to make the lock-app work? 

    Vincent

  • Let us review the build environment.  Are you cloning https://github.com/TexasInstruments/matter with recursive submodules (i.e. "git clone --recurse-submodules https://github.com/TexasInstruments/matter.git")?  This is the recommended repository for TI devices.  Then, are you building examples/lock-app/cc13x2x7_26x2x7 without making any application changes (see the building guide)?  The output should contain a file similar to the one attached.

     https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/158/chip_2D00_LP_5F00_CC2652R7_2D00_lock_2D00_example_2D00_bim.hex

    Regards,
    Ryan

  • I followed your step and pull the git again!  I notice that the git command you suggested is not the same as I used before.  I did not place '--recurse-submodules' in my git command.  I did put that parameter this time and discovered the output is a little bit different.  In the 'out/debug' directory, there are a few files that they won't exist last time.   There is still one .out file which is 'chip-LP_CC2652R7-lock-example.out'.  However, I found there are two hex files. One is 'chip-LP_CC2652R7-lock-example.hex' and the other is 'chip-LP_CC2652R7-lock-example-bim.hex'.  In addition, there are files named 'chip-LP_CC2652R7-lock-example.ota' and 'chip-LP_CC2652R7-lock-example.bin'.  

    Nevertheless, I used uniFlash to upload 'chip-LP_CC2652R7-lock-example.out' into the board and still obtain no output on my debug console.  Could you elaborate on the test procedure I should follow after I flash the board with the 'out' file?  Should I start a ota-provider-app somewhere and upload the bin to my launchpad?

    Vincent

  • I followed your step and pull the git again!  I notice that the git command you suggested is not the same as I used before.  I did not place '--recurse-submodules' in my git command.  I did put that parameter this time and discovered the output is a little bit different.  In the 'out/debug' directory, there are a few files that they won't exist last time.   There is still one .out file which is 'chip-LP_CC2652R7-lock-example.out'.  However, I found there are two hex files. One is 'chip-LP_CC2652R7-lock-example.hex' and the other is 'chip-LP_CC2652R7-lock-example-bim.hex'.  In addition, there are files named 'chip-LP_CC2652R7-lock-example.ota' and 'chip-LP_CC2652R7-lock-example.bin'.  

    Nevertheless, I used uniFlash to upload 'chip-LP_CC2652R7-lock-example.out' into the board and still obtain no output on my debug console.  Could you elaborate on the test procedure I should follow after I flash the board with the 'out' file?  Should I start a ota-provider-app somewhere and upload the bin to my launchpad?

    Vincent

  • Do not only upload chip-LP_CC2652R7-lock-example.out as this is missing the BIM and intended for CCS debug.  I recommend that you only load chip-LP_CC2652R7-lock-example-bim.hex since this already contains the merged image of the BIM and application.

    Regards,
    Ryan

  • Hi! Ryan,

    I follow the git command you suggest and redo it again today.  I also used Uniflash 8.2 to upload the chip-LP_CC2652R7-lock-example.hex again.  Unfortunately I still could not get any output from my debug console.  

    It seems the red LED is not enabled even after I upload the image and restart the board.  Please give me some hints about the cause of the problem.  Thanks!

    Vincent

  • Hi! Ryan,

    I also discovered that I could not build all-cluster-minimal-app anymore.  The error I got is 

    =========

    [906/912] ld ./chip-LP_CC2652R7-all-clusters-minimal-example.out
    FAILED: chip-LP_CC2652R7-all-clusters-minimal-example.out chip-LP_CC2652R7-all-clusters-minimal-example.out.map
    arm-none-eabi-g++ -L../../third_party/connectedhomeip/third_party/ti_simplelink_sdk/repo_cc13xx_cc26xx/source gen/sysconfig/ti_utils_build_linker.cmd.genlibs -T../../third_party/connectedhomeip/src/platform/cc13xx_26xx/cc13x2_26x2/cc13x2x7_cc26x2x7_freertos.lds -march=armv7e-m -mcpu=cortex-m4 -mabi=aapcs -mfpu=fpv5-sp-d16 -mfloat-abi=hard -mthumb -Os --specs=nosys.specs --specs=nano.specs -Werror -Wl,--fatal-warnings -fdiagnostics-color -Wl,--gc-sections -nostartfiles -fno-exceptions -fno-unwind-tables -Wl,-Map,./chip-LP_CC2652R7-all-clusters-minimal-example.out.map @./chip-LP_CC2652R7-all-clusters-minimal-example.out.rsp -o ./chip-LP_CC2652R7-all-clusters-minimal-example.out
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: ./chip-LP_CC2652R7-all-clusters-minimal-example.out section `.text' will not fit in region `FLASH'
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: ./chip-LP_CC2652R7-all-clusters-minimal-example.out section `.bss' will not fit in region `SRAM'
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: section .ccfg LMA [0000000000057fa8,0000000000057fff] overlaps section .text LMA [00000000000000e0,000000000008ec1f]
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: section .nvs VMA [0000000000052000,0000000000055fff] overlaps section .text VMA [00000000000000e0,000000000008ec1f]
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: region `FLASH' overflowed by 0 bytes
    /home/vincent/matter/.environment/cipd/packages/arm/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld: region `SRAM' overflowed by 61680 bytes
    collect2: error: ld returned 1 exit status
    ninja: build stopped: subcommand failed.

    =========

    What is the reason behind this error?

    Vincent

  • Hi Vincent,

    There was an update to the Matter repository recently, so using the latest software you should now be loading the chip-LP_CC2652R7-lock-example-bim.hex firmware after building with Sysconfig 1.15 parameters, which I have tested and verified with my setup and attached for your reference.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/158/chip_2D00_LP_5F00_CC2652R7_2D00_lock_2D00_example_2D00_bim-_2800_1_2900_.hex

    Regards,
    Ryan

  • all-clusters-minimal-app is currently intended as test/development application for TI internally and should not be evaluated by customers at this moment. 

    Regards,
    Ryan

  • Hi! Ryan,

    I found your hex could work this time.  In fact, we load the 'chip-LP_CC2652R7-lock-example-bim.hex' file and it works as well.  I guess 'chip-LP_CC2652R7-lock-example.hex' is not working by itself.  Could you explain the usage scenario of these two hex files?

    Vincent

  • As Ryan had mentioned in his previous reply "chip-LP_CC2652R7-lock-example-bim.hex since this already contains the merged image of the BIM and application", 'chip-LP_CC2652R7-lock-example.hex' doesn't contain BIM which is a bootloader to start and jump to lock application. Without bootloader, 'chip-LP_CC2652R7-lock-example.hex'  won't work.

  • Hi! Ryan,

    Thanks for the update! This solves my question!

    Vincent

  • Hi! YiKai,

    Thanks for the explanation!

    Vincent