CC1310: CC1310 On-Chip OAD Support

Part Number: CC1310
Other Parts Discussed in Thread: UNIFLASH

Tool/software:

I have a couple of questions regarding On-Chip OAD support on CC1310:

1)On-Chip OAD Support for CC1310

Does CC1310 officially support On-Chip OAD?

In some TI forum posts, I have read that CC1310 will not be supported for on-chip OAD. For reference, here is the link to one such discussion:
e2e.ti.com/.../cc1310-oad-with-on-chip-flash-only

Could you please clarify the current status of on-chip OAD support for CC1310?

2)Program Execution Issue (Uniflash vs. CCS)

When I flash the rfWsnNodeIntFlashOadClient program using Uniflash, it gets stored in flash but does not execute.

However, if I load the same program using Code Composer Studio (CCS), it executes as expected.

Why is there a difference in behavior between flashing with Uniflash and CCS? Is there something additional I need to configure in Uniflash for proper execution?

3)OAD Behavior Difference (On-Chip vs. Off-Chip)

I have successfully tested the off-chip OAD example (rfWsnNodeExtFlashOadClient) with rfWsnConcentratorOadServer. The firmware update completes correctly.

However, when I try the on-chip OAD example (rfWsnNodeIntFlashOadClient), the Concentrator shows that it is "sending block 0 of 1700" repeatedly, but on the client side there is no visible operation or task being triggered.

What could be the reason for this issue in the on-chip OAD case?

  • Hi Vinod,

    1) There is support for On-chip after release SDK 1.5 (SimpleLinkTm CC13x0 SDK 1.50.00.08 Release Notes),that's why you will find an example project rfWsnNodeIntFlashOadClient, however bear in mind the flash limitation. I suggest you use the latest one  4.20.02.07.

    2) Have you tried flashing the BIM hex file + the rfWsnNodeIntFlashOadClient bin generated as explained in the README file?

    3) Are you using the right BIM file? That is bim_onchip project for the on-chip solution?

    Best regards,

    Daniel

  • yes I followed the steps mentioned in the README for On-Chip OAD on CC1310 and im using bim_intflash_cc13x0lp.hex from workspace_v12\bim_intflash_cc13x0lp\FlashOnly , but I am facing issues where the program does not execute after flashing. Below are the steps I tried:

    *I took bim_intflash_cc13x0lp.hex
    *I took rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_tirtos_ccs.hex
    *I merged both files using Python intelhex command:

    C:\Python27\python.exe -c "from intelhex import IntelHex;
    a=IntelHex('C:\\Users\\AMPSW2\\Desktop\\cs\\rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_tirtos_ccs.hex');
    b=IntelHex('C:\\Users\\AMPSW2\\Desktop\\cs\\bim_intflash_cc13x0lp.hex');
    a.merge(b, overlap='error');
    a.write_hex_file('C:\\Users\\AMPSW2\\Desktop\\cs\\rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_all_v1.hex')"

    I flashed the merged rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_all_v1.hex using UniFlash.I verified the merged hex file contents, and the data looks correct, but after flashing, the code does not execute.

    I also tried flashing bim_intflash_cc13x0lp.hex and rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_tirtos_ccs.hex separately at once using UniFlash.
    The flash memory contents show both images present (verified via UniFlash memory view), but the code still does not run but this method is working for offchip OAD .

    ->Another attempt:

    *Flashed bim_intflash_cc13x0lp.hex with UniFlash
    *Flashed rfWsnNodeIntFlashOadClient_CC1310_LAUNCHXL_tirtos_ccs.hex using CCS

    In this case, when I initiate OAD from the server, it keeps showing repeatedly:

    "Info: OAD Block 0 of 1750"

    But on the client side, no operation happens.I have attached screenshots:

    Pic-1: Server side log
    Pic-2: On-Chip Client side

    My Doubt:
    Is the On-Chip OAD process dependent on the way BIM and Application hex files are flashed?
    Could this be why the client is not processing OAD packets even though the server starts sending them?

    Could you help me fast to overcome this so that I can go a step forward?