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.

CC1352P7: Device does not start from new image after onchip OTA

Part Number: CC1352P7
Other Parts Discussed in Thread: CC1352P, , UNIFLASH, Z-STACK

A customer is developing OTA application based on zr_sw_ota_client_onchip example from simplelink_cc13xx_cc26xx_sdk_6_40_00_13. The distributor is based on zc_ota_server_CC1352P_2_LAUNCHXL_tirtos7_ticlang and CC1352P-2 launchPad. bim_onchip_LP_CC1352P7_4_nortos_ticlang is used for bootloader.

OTA finished with  Download Completed Successfully”,and the image is confirmed with Uniflash. But after reset, the device still starts from old image.

What should the customer look into to debug this?

Best regards,

Shuyang

  • Hi Shuyang,

    Please have the customer confirm that they have followed all steps from the zr_sw_ota_client_onchip README, including loading a slot B image, making all necessary project changes for building a slot A image to send over-the-air, and consecutively loading the bim_onchip Dual Image configuration image.  Perhaps you can find some other tips from this relevant E2E thread and I recommend that you run the example so that you may be able to guide your customer accordingly.

    Regards,
    Ryan

  • Hi Ryan,

    I read the post you refered and found a few extra steps were missing which should cause the issue observed. I have a few questions still would like to double check:

    1. "This example enables on-chip OTA configuration by default (OTA_ONCHIP) using the Image B slot. The following modification should be made to the CCS project in order to build an image intended for slot A". What is the address of slot A and slot B? When I flash the original zr_sw_ota_client_onchip_LP_CC1352P7_4_tirtos7_ticlang_oad.bin, which address should I use to flash(slot B)?

    2. You mentioned changes in BIM and zr_sw_ota_client_onchip.syscfg besides the instructions in the readme are needed for SDK6.41, is it still needed for SDK7.10? I did not find any bug fixes or know issues about this in SDK7.10 release note.

    3. After the OTA is successful, image A should be running. For the next OTA, is there anything else needed besides building the new image with slot B settings?

    Best regards,

    Shuyang

  • 1. You could study the NVS and *.map to further understand the requirements, but essentially image A is 0x00 to 0x54000 and image B is 0x54000 to 0xA8000.  NV storage is 0xAA000 to 0xAE000, BIM is 0xAE000 to 0xAFFFF, 0xA8000 to 0xAA000 is unused.

    2. Please check whether the fixes have been applied to SDK v7.10, and add if necessary.  Everything appears to be in order based on my diff compare, note that on-chip BIM constants still need to be updated as expressed in the Z-Stack on-chip OAD project README.

    3. Be sure to increment the image version numbers for consistency, otherwise the process of swapping between images is understood.

    Regards,
    Ryan

  • Hi Ryan,

    I managed to perform a successful onchip OTA following the steps in the E2E post you provided, BIM and ZR projects need to be modified according to the post.

    And your explanation about slot A and slot B seems to be inverted, image A should start from 0x54000 and image B should start from 0x0. I flashed the original image with BIM to 0x0 to make it work, not 0x54000.

    In general I think we need a better ducoment to make it easier for customers to follow. A step by step guide like in the BLE stack user's guide would be very helpful to improve the user experience.

    Best regards,

    Shuyang

  • Hi Shuyang,

    You can e-mail me with your ideas for further consideration.

    Regards,
    Ryan