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.

CC2651R3: Device gets halted when more than 20bytes of data is transferred through BLE Indication

Expert 1760 points
Part Number: CC2651R3


Hi,

We use SimpleLinkTm cc13xx_cc26xx SDK 5.40.00.40 for our development purpose.

The code is working well if we set the MTU to 251 bytes, and transfer 20 bytes.

But when we try to transfer more than 20 bytes payload, the device is getting crashed.

Please find the logs below where we send 100bytes:

V 11:35:03.992 Connecting to F0:F8:F2:2C:20:64...
D 11:35:03.992 gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
D 11:35:04.577 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D 11:35:04.587 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I 11:35:04.587 Connected to F0:F8:F2:2C:20:64
V 11:35:04.594 Discovering services...
D 11:35:04.594 gatt.discoverServices()
I 11:35:04.962 PHY updated (TX: LE 2M, RX: LE 2M)
I 11:35:05.548 Connection parameters updated (interval: 7.5ms, latency: 0, timeout: 5000ms)
D 11:35:05.628 [Callback] Services discovered with status: 0
I 11:35:05.628 Services discovered
V 11:35:05.637 Generic Access (0x1800)
- Device Name [R W] (0x2A00)
- Appearance [R W] (0x2A01)
- Peripheral Preferred Connection Parameters [R] (0x2A04)
- Central Address Resolution [R] (0x2AA6)
- Resolvable Private Address Only [R] (0x2AC9)
Generic Attribute (0x1801)
Device Information (0x180A)
- System ID [R]
- Model Number String [R]
- Serial Number String [R]
- Firmware Revision String [R]
- Hardware Revision String [R]
- Software Revision String [R]
- Manufacturer Name String [R]
- IEEE 11073-20601 Regulatory Certification Data List [R] (0x2A2A)
- PnP ID [R] (0x2A50)
Unknown Service (0000xxx8-0000-1000-8000-00805f9b34fb)
- Unknown Characteristic [I W] (xxxxxxx2-0451-4000-b000-fb3210111989)
   Client Characteristic Configuration (0x2902)
   Characteristic User Description (0x2901)
D 11:35:05.637 gatt.setCharacteristicNotification(xxxxxxx2-0451-4000-b000-fb3210111989, true)
I 11:35:05.729 Connection parameters updated (interval: 45.0ms, latency: 0, timeout: 5000ms)
V 11:35:06.854 Enabling indications for xxxxxxx2-0451-4000-b000-fb3210111989
D 11:35:06.854 gatt.setCharacteristicNotification(xxxxxxx2-0451-4000-b000-fb3210111989, true)
D 11:35:06.857 gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x0200)
I 11:35:06.871 Connection parameters updated (interval: 30.0ms, latency: 0, timeout: 2000ms)
I 11:35:06.898 Data written to descr. 00002902-0000-1000-8000-00805f9b34fb, value: (0x) 02-00
A 11:35:06.898 "Indications enabled" sent
V 11:35:06.903 Indications enabled for xxxxxxx2-0451-4000-b000-fb3210111989
V 11:35:11.878 Requesting new MTU...
D 11:35:11.878 gatt.requestMtu(251)
I 11:35:11.937 MTU changed to: 251
V 11:35:19.641 Writing request to characteristic xxxxxxx2-0451-4000-b000-fb3210111989
D 11:35:19.641 gatt.writeCharacteristic(xxxxxxx2-0451-4000-b000-fb3210111989, value=0xxxxx010160)
I 11:35:19.707 Data written to xxxxxxx2-0451-4000-b000-fb3210111989, value: (0x) xx-xx-01-01-60
A 11:35:19.707 "(0x) xx-xx-01-01-60" sent
I 11:35:33.748 Indication received from xxxxxxx2-0451-4000-b000-fb3210111989, value: (0x) xx-xx-64-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15-16-17-18-19-20-21-22-23-24-25-26-27-28-29-30-31-32-33-34-35-36-37-38-39-40-41-42-43-44-45-46-47-48-49-50-51-52-53-54-55-56-57-58-59-60-61-62-63-64-65-66-67-68-69-70-71-72-73-74-75-76-77-78-79-80-81-82-83-84-85-86-87-88-89-90-91-92-93-94-95-96-97-98-99-64-C8
A 11:35:33.748 "(0x) xx-xx-64-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15-16-17-18-19-20-21-22-23-24-25-26-27-28-29-30-31-32-33-34-35-36-37-38-39-40-41-42-43-44-45-46-47-48-49-50-51-52-53-54-55-56-57-58-59-60-61-62-63-64-65-66-67-68-69-70-71-72-73-74-75-76-77-78-79-80-81-82-83-84-85-86-87-88-89-90-91-92-93-94-95-96-97-98-99-64-C8" received
D 11:35:35.867 [Callback] Connection state changed with status: 8 and new state: DISCONNECTED (0)
E 11:35:35.867 Error 8 (0x8): GATT CONN TIMEOUT
I 11:35:35.867 Disconnected
D 11:35:35.925 [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED

May i know why this issue could  happen?

  • Hello,

    Thank you for posting on the E2E forums. I have assigned this thread to an expert.

    Best,

    Nima

  • Hello,

    Can you clarify a few things for me to better assist you: Which example project are you using? Are you able to reproduce this on a minimally modified SDK example? Have you tried this on the latest SDK?

    But when we try to transfer more than 20 bytes payload, the device is getting crashed.

    What is meant by "crash" in this regard? Have any asserts been triggered? If you pause the debugger, what state is the device in? Is there a callstack you can trace? Please have a look at our Debugger's Guide for some information.