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.

LAUNCHXL-CC1352R1: On-Chip OAD Persistent Application Problem

Part Number: LAUNCHXL-CC1352R1
Other Parts Discussed in Thread: UNIFLASH

Hi,

I have run into some problems when try to use the example project simple peripheral on-chip OAD.

Hardware and software as follows:

Hardware: LAUNCHXL-CC1352R1 and iPhone.

Software: Code Composer Studio 9.3.0, SDK simplelink_cc13x2_26x2_sdk_3_40_00_02, UniFlash 6.0.0.2710, BLE Scanner and TI SimpleLink Starter.

I build and flash the persistent application(ble5_simple_peripheral_oad_onchip_cc13x2r1lp_persistent_app) through UniFlash, then I build and flash user application(simple_peripheral_oad_onchip_app_CC13X2R1_LAUNCHXL_tirtos_ccs) through UniFlash. Finally, I flash BIM(cc13x2r1lp_bim_onchip.hex) in TI SDK Debug_unsecure dirctory through UniFlash.  As shown below:

Then I can scan "SP OAD on-chip" and connect it by iOS app BLE Scanner(This time I will enter the user application). I write 0x01 to service FFDO characteristic FFD1 on this user application. This would reset the device and boot the persistent application which has FFC0 OAD Service. And I notice the connection does break. Then the device boots to persistent application. At this time(Enter the persistent application), I can scan "Simple peripheral" but I can't connect it successfully by iOS app BLE Scanner or TI SimpleLink Starter. Could you please help me analyze the root cause ?

Another question:

Where dose the incoming OAD firmware(User App + Stack Library) store at the very beginning in the internal flash during the On-Chip OAD process? Or say which one (1 or 2) does the incoming OAD image store at the very beginning in the following picture?

Thank you.

BRs.

  • Hi,

    I'll assign an expert in OAD to answer your questions.

    -Luis

  • Hi,

    I apologize for the delayed response.

    After the connection breaks, you should find the "OAD Persistent App" device when you perform a scan. When you performed the scan, what device name appeared in BLE Scanner/TI SimpleLink Starter app? Also, how long did it take until the connection dropped and you re-scanned for devices? Also, are the images flashed unmodified example projects from the SDK, or has custom code been added?

    In regards to your second question of where the OAD image is downloaded, it is stored at the beginning of flash, at location #1 you listed on the picture (as it overwrites the previous user application you have on the device).

    Regards,
    Michael

  • Hi, 

    At the beginning, I had thought I should find the "OAD Persistent App" when I performed a scan. However, when I used BLE Scanner/TI SimpleLink Starter app to scan, I only just found device name "Simple Peripheral" on Apps and it is confusing. I am sure the running application changed to Persistent App because I can see the OAD Service(0xFFC0) through TI SimpleLink Starer. Sometimes I waited for one minutes or several minutes. I don't modify the example projects from the SDK.

    BRs.

  • Hi,

    Okay then, here are some more ideas/questions to help debugging the issue:

    1. You mention the connection breaks, yet you also say that you can see the OAD service 0xFFC0 on the device. When does the connection break for you? Does the connection break only when you start the OAD process, or does it occur shortly after connecting to the persistent app?
    2. Do you have another phone available to see by any chance if connection break issue is an issue specific to the phone? 
    3. If you still have issues connecting to the launchpad when in the persistent app, we can try using BTool to perform the on-chip OAD to verify the device setup and overall process is correct. You will need another launchpad flashed with the host_test image to do this. Information on how to do off-chip and on-chip OAD via BTool can be found here: http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/3.40.00.02/exports/docs/ble5stack/ble_user_guide/html/ble-stack-oad/setting-up-environment.html#oad-distributor-setup

    If you can successfully perform on-chip OAD via BTool, then we can take a closer look at the phone application side and how its connecting to the device.

    Regards,
    Michael

  • 1. When I write 0x01 to service FFDO characteristic FFD1 on user application, the connection will break after several seconds. The connection break only when I start the OAD process.

    2. Yes. I will check it for another smart phone.

    3. Sorry for that. I just have only one launchpad at present. Maybe I will consider to get another launchpad to debug the issue later.

  • Thanks. If possible, do you have access to a sniffer? It may help if you can collect some sniffer logs and share so we can do further debugging.

    Also, what phone model are you using when you encountered this issue? 

    Regards,
    Michael

  • Hi,

    Sorry for the delayed response.

    Currently, I don't have access to a sniffer. Later If I get some sniffer logs related to the OAD problem, I will share with you for further debugging. For now, I have something else to do with the CC1352. 

    When I have encountered this issue, I use iPhone 7.

    Thanks.

    BRs.