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.
Hello,
we are working on a CC2640 custom board application using SimpleLink BLE-Stack 2.2.1 (and related toolchain). Code Composer Studio version is: 7.1.0.00016. Our application is derived from "simple_peripheral" example. The problem we are experiencing is the following:
Tracing the communication this is what we see:
Have someone encountered similar problem? What could have caused disconnection?
Thank you very much.
Thank you very much JXS,
it seems you've driven us in the right direction, but we didn't yet solved completely. Some more details of our tests.
We are using 3 different devices:
After your suggetion we checked out oscillator accuracy: it is 40ppm on our board (same value of CC2640 default), but for safety we increased the sleep clock accuracy to 200ppm in initialization with the command:
HCI_EXT_SetSCACmd(200);
This modification solved the problem for device 2 (it hold connection for 3 hours), but didn't solve for device 3, that stiil loose connection.
We tried to further encrease oscillator accuracy with the command
HCI_EXT_SetSCACmd(500);
But still device 3 loose connection.
Any other suggestion?
Thanks.
Hi,
I've looked at RF front end and bias, they are correctly set for our board:
#define RF_FE_MODE_AND_BIAS ( RF_FE_DIFFERENTIAL | RF_FE_INT_BIAS )
About "Connection Control Service" i don't have such a service in my BLE profile, but I think we can test by modifying connection parameters in code and recompiling. Is that correct?
We need a slow connection, and we are observing iOS compliance rules so we set:
intervalMin: 1600ms
intervalMax: 1800ms
slaveLatency: 0
connSupervisionTimeout: 5600ms
Are this parameters good for Androis devices also?
Another detail about disconnection: we put a breakpoint in gapRole_ProcessGAPMsg (peripheral.c). When disconnection happens, we got:
pMsg->opcode == GAP_LINK_TERMINATED_EVENT
pPkt->reason == LL_SUPERVISION_TIMEOUT_TERM
Can this help in undertanding disconnection cause??
Thank you.