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.

CC1354P10: Bluetooth data receive issue an Memory Storage issue

Part Number: CC1354P10

Good evg sir,

1.am using BLE role as peripheral and am sending a data from android phone using bluetooth but CC1354 not receiving more than 20bytes .how to solve this sir

2.and am storing some data in cc1354 in NVC but once power off the data goes OFF.but the data should retained even when power goes off .kindly give you suggestion to Move on sir .Thank you

 

  • Hello,

    Thank you for reaching out!

    1.am using BLE role as peripheral and am sending a data from android phone using bluetooth but CC1354 not receiving more than 20bytes .how to solve this sir

    To send larger messages over BLE, the MTU size must be increased. To do this, you can use the GATT_ExchangeMTU() API when a connection has been established.

    2.and am storing some data in cc1354 in NVC but once power off the data goes OFF.but the data should retained even when power goes off .kindly give you suggestion to Move on sir .Thank you

    You are correct, non-volatile storage should survive any power event. How are you using the NVS? How are you checking that the data is not being retained? Please let me know your answers and we can hopefully solve your issue! 

    I would also recommend taking a look at the NVS driver API documentation, as well as the flash section of the BLE user's guide.

    I hope this helps!

    Best Regards,

    Tarek D

  • I’m storing data in NVS, but after power off the CC1354, the data becomes zero. Do I need to change any configuration for this?

    Also, where should I use the GATT Exchange function in the code? Is it already there, or do I need to add it sir?

    I’m using the Datastream example for BLE peripheral and NVS.

  • Hello,

    To use the NVS driver, please follow the example seen inside the NVS driver API documentation, or you could check out the nvsinternal example found inside the SDK ({SDK Location} -> examples -> rtos -> {your board} -> drivers -> nvsinternal). However, please note that if you're using the NVS region defined by the BLE stack (CONFIG_NVSINTERNAL), then you will need to use SNV API. If this doesn't work, please share code snippets that show how you configure and use the NVS driver.

    I would recommend using the GATT exchange function once a connection is established, inside the BLEAPPUTIL_LINK_ESTABLISHED_EVENT

    event (app_connection.c).

    I hope this helps!

    Best Regards,

    Tarek D



  • I'm implemented in app_connection.c but it receive only 20bytes packet, kindly review the code it is correct or not and give the solution sir.

  • Hello,

    This code is certainly correct! If you're still unable to send larger packets I would recommend checking the return status of GATT_ExchangeMTU and let me know what it returns. Also, could you try changing the clientRxMTU value to 200?

    Also, it's worth noting that if the other device does not support larger MTU sizes, you will not be able to modify the MTU size.

    I hope this helps!

    Best Regards,

    Tarek D

  • am getting return response as 251 but am not able to send from client it accepts only 20 bytes and next 15 bytes its receiving seperately .i totally sent 35 bytes .and also my board is getting Hangs and no function is running .until manual restart is done.

  • Hello,

    By return status, I meant the hex value returned from the function GATT_ExchangeMTU. If it's returning 0x00 (Success), then the issue may be on the sender side. The device on the other end may not support payloads larger than 20 bytes. 

    In regards to the board hangs, could you elaborate more? Where is the device hanging? If this is an unrelated issue, please open a different thread.

    Best Regards,

    Tarek D

  • in this am getting return status as 0x00 as discussed earlier its sucess but am not able to receive more than 20 bytes.but  i tried with different sender devices.is this any specific device or app to be used for this one sir

  • Hello,

    This is certainly strange behavior. Do you have access to a BLE packet sniffer? I would be interested in seeing whether the other device's MTU is. Typically when a GATT MTU exchange occurs, both devices exchange their respective MTUs, and the final MTU is typically the minimum of the two devices.

    I believe what you are doing is correct, the issue is with the other device or app. I would recommend using the TI SimpleLink connect app.

    If this issue persists, please share your code for handling the GATT messages, along with a description of the data being sent.

    We'll hopefully figure this out soon!

    Best Regards,

    Tarek D