- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What is the best way to set the connection parameters? I am experiencing timeouts using CySmart as a client. Should the client parameters match the peripheral? I understand that the peripherals parameters are "suggestions" to the client, not sure what this really means.
Thanks
Rich
Solved! Go to Solution.
- Labels:
-
BLE
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Connection parameters are always decided by the master or the initiator or the central. The peripheral can just indicate the parameters it is comfortable with but the entire power lies with the central. It can choose whatever connection parameters it wants to, without considering the params suggested by the peripheral.
You can send a connection parameter update request to change the parameters.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Connection parameters are always decided by the master or the initiator or the central. The peripheral can just indicate the parameters it is comfortable with but the entire power lies with the central. It can choose whatever connection parameters it wants to, without considering the params suggested by the peripheral.
You can send a connection parameter update request to change the parameters.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The "best" way would be to have a static connection parameters, but with varying clients, then you will need to adjust your code to handle various connection parameters as yssu said above. Also of note is the "slave latency" setting in the peripheral/central (I forget which side had it), but it will allow that number of missed connection windows before assuming the other device disconnected. If your connection parameters have a really short window, then the number of missed windows might be higher for you application (due to EMI, noise, interrupts, timing, etc.). This means that to get a fixed time for the timeout for connections, you will want to increase the slave latency proportionally based on how short the connection parameters are.
Regards,
Epratt