If two devices lose a connection after the supervisor timeout set in lel2cap_sendConnParamUpdateReq() expires, what should be done to fix it? Should I expect that an attempt to reconnect will work? I am trying to determine if I should use a low supervisor timeout and then quickly try to reestablish communication again OR set a long supervisor timeout and let the devices keep trying to talk with each other for as long as possible.
I can help you with your third question, but we'll need someone else for 1 and 2.
From this thread:
Connection Interval and Connection Slave Latency
and the BT Spec:
The connSupervisionTimeout shall be a multiple of 10 ms in the range of 100 ms to 32.0 s and it shall be larger than
(1+connSlaveLatency)*connInterval*2.
Thanks lucyli. That is helpful.
Anyone else on the reconnect procedure?
Hello sabertron,
Here are the answers to questions:
1. But is there anyway to get a callback when one of the communication slots every 7.5ms is clobbered by noise or congestion?
[JT] No.
2. Once a disconnect occurs due to devices going out of range, how can I quickly reconnect when they come back into range?
[JT] When a timeout occurs, you will not be able to see it. You can reconnect 500ms after the last full Null exchange.
3. Assume that some of the responses will be lost
Hope this helps.
JT