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.

CC2541: I want to perform OAD using Android or iOS App, not using Btool or Bluetooth device manager with USB dongle

Part Number: CC2541

Hi Bluetooth®︎ Bluetooth forum

I want to do the OAD using App, not using any dongle or BTool. 

I followed the process like:

1. I flashed the BIM hex file on CC2541 keyfob hardware by TI.

2. I appended the IMAGE-A.

3. I created the IMAGE-B .bin file.

4. When I'm using Bluetooth device monitor App from TI, then the OAD is happening without fail. 

5. When I'm connecting the CC2541 Keyfob hardware with SimpleLink App, the device is connecting and I can see the TI OAD section but when I'm selecting that section, It is blank like I can't see the current firmware version and not able to select the .bin file to perform OAD as the selection button to choose the .bin file is closed.

I really help on this!

Do I need to do something OAD Manager code ? Do I need to append or flash OAD Manager hex file to perform OAD on the CC2541 Keyfob hardware. 

  • It seems TI Simplelink Starter App doesn’t CC2541 OAD now. You can try to get TI SensorTag Android App example code from to build App to support OAD by yourself.

  • Hi ,

    Thanks for the reply. If I download TI sensor Tag App from google play store then it will work ?? 

    Actually I did that but still the same problem I faced with Simple link starter App.

    Regards,

    Yatin Baluja

  • I test latest SensorTag App and find it seems not support CC2541 OAD too. That's why I give you the example source code to do it by yourself.

  • okay. Thanks I cloned the link and shared with the my App developer to develop the App. 

    Thanks,

    Yatin Baluja 

  • Hey Yatin,

    Glad this has been resolved. Feel free to post any follow up questions you have in a new post by clicking "Ask a related question".

  • Hi

    This is not resolved yet. My App developer created the App for me as per the  file and when I'm trying to scan the device nothing is showing up whereas in my phone's bluetooth settings I can see the SimpleBLEPeripheral. 

    I am also attaching the video for the reference. 

    Regards,

    Yatin Baluja 

  • Hi

    This is not resolved yet. My App developer created the App for me as per the file link shared by Yikai Chen, I am trying to scan the device nothing is showing up whereas in my phone's Bluetooth settings I can see the SimpleBLEPeripheral. 

    I am also attaching the video for the reference. 

    Regards,

    Yatin Baluja

  • Try to replace scanRspData, advertData, and attDeviceName with the following code to build and test again.

    // GAP - SCAN RSP data (max size = 31 bytes)
    static uint8 scanRspData[] =
    {
      // complete name
      0x0A,   // length of this data
      GAP_ADTYPE_LOCAL_NAME_COMPLETE,
      0x53,   // 'S'
      0x65,   // 'e'
      0x6E,   // 'n'
      0x73,   // 's'
      0x6F,   // 'o'
      0x72,   // 'r'
      0x54,   // 'T'
      0x61,   // 'a'
      0x67,   // 'g'
    
      // connection interval range
      0x05,   // length of this data
      GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,
      LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),
      HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),
      LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),
      HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),
    
      // Tx power level
      0x02,   // length of this data
      GAP_ADTYPE_POWER_LEVEL,
      0       // 0dBm
    };
    
    // GAP - Advertisement data (max size = 31 bytes, though this is
    // best kept short to conserve power while advertisting)
    static uint8 advertData[] =
    {
      // Flags; this sets the device to use limited discoverable
      // mode (advertises for 30 seconds at a time) instead of general
      // discoverable mode (advertises indefinitely)
      0x02,   // length of this data
      GAP_ADTYPE_FLAGS,
      DEFAULT_DISCOVERABLE_MODE | GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED,
    };
    
    // GAP GATT Attributes
    static uint8 attDeviceName[] = "TI BLE Sensor Tag";
    

  • Hi

    I tested with the configuration you send, same result. Not showing in the App but showing in the phone's bluetooth settings.

    Regards,

    Yatin Baluja

  • If you run TI Simplelink Starter App on the same smartphone, can it scan your CC2541 BLE device successfully?

  • On Simplelink App, it is showing and connecting and by the way after changing it to sensor tag, I can actually see the sensor tag icon inside SimpleLink App and when I'm performing TI OAD service an error message is popping up saying CC254x is supported for OAD in this App.

  • I can only suggest you to debug the App code to see where it goes wrong.

  • Hi

    I tested with the SensorTag iOS App and OAD happened successfully on CC2541 keyfob hardware but on Android phone it is not happening.

    Regards,

    Yatin Baluja

  • It’s good to know you can use ios SensorTag app to do OAD test.

  • Hi Yatin,

    It seems like there is something missing on your Android app side. Unfortunately, I do not have the expertise to assist in this area. Here's a related post that may help with the OAD part of the App.

    :https://e2e.ti.com/support/wireless-connectivity/bluetooth/f/538/t/642133 

  • Thanks  I will check the link you shared.