Hi everyone,
I've developed a multirole firmware for CC2640R2 starting from multirole example (SDK 1.35.00), but I'm trying to configure and use my device as a central. All works fine.
I want to set a supervision timeout in order to terminate connection if an already connected peripheral go out of my central range.
I've tried to set in multirole_init function
the TGAP_CONN_EST_SUPERV_TIMEOUT parameter as follow
GAP_SetParamValue(TGAP_CONN_EST_SUPERV_TIMEOUT, RESP_ERR_TIMEOUT);
where RESP_ERR_TIMEOUT is defined as
#define RESP_ERR_TIMEOUT 10
from TGAP_CONN_EST_SUPERV_TIMEOUT definition
/**
* @brief Connection supervision timeout for connection establishment (n * 10 mSec)
*
* default: 2000
*
* range: 10-3200
*/
the TGAP_CONN_EST_SUPERV_TIMEOUT is normally setted to 2000 => 20000 mSec => 20 seconds
Because I've setted this timeout to 100 => 1 seconds to terminate connection if a connected peripheral goes out of central range
Unfortunately it seems have not effect, because when I turn off my perifheral without close connection first, or when I bring my peripheral out from central range, I must wait 20 seconds first that connection is closed.
My question is:
Is sufficient configure the TGAP_CONN_EST_SUPERV_TIMEOUT value to set the supervision timeout?
Thanks for the help
Regards