<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/338/slave-latency-and-interval-connection-for-gap-advices</link><description>Dear Nordic Developer Zone, 
 In order to synchronize some tasks (motor-driving), I have recently implemented the radio notification interrupt. 
 In this interrupt, I toggle a LED on the nRF6310 board to see when the radio communication begins and stops</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 28 Feb 2017 11:23:23 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/338/slave-latency-and-interval-connection-for-gap-advices" /><item><title>RE: Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/thread/1770?ContentTypeID=1</link><pubDate>Tue, 28 Feb 2017 11:23:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f74c14eb-426e-4e90-bfec-c37da29b3de2</guid><dc:creator>BHAGYESH</dc:creator><description>&lt;p&gt;Hey Guys, Any one could help me for android??? What should be the parameters for ANDROID???&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/thread/1769?ContentTypeID=1</link><pubDate>Fri, 23 Aug 2013 10:27:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5e4c259-59eb-439e-8854-030f8944e9c2</guid><dc:creator>S&amp;#233;bastien Despont</dc:creator><description>&lt;p&gt;Thank you for your answer.&lt;/p&gt;
&lt;p&gt;It is clear for me now. I have updated the ble_conn_params.c file as you said to specify the new connection interval and slave latency.&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/thread/1768?ContentTypeID=1</link><pubDate>Thu, 22 Aug 2013 10:03:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:be709e3b-a4c5-49b0-a2c6-5a000cf52be5</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;How often do you see the LED toggle currently? What could be a problem here is that the default implementation in ble_conn_params only checks the connection interval and not slave latency when checking whether current parameters are good. I belive that later versions of iOS often uses an interval of 30 ms when connecting, and if that is the case, there may never be sent an update request, since this is within your max and min. If this is the case, you should see connection events every 30 ms.&lt;/p&gt;
&lt;p&gt;One way to change this is to modify ble_conn_params to also check slave latency when considering parameters. This check is done in is_conn_params_ok() in ble_conn_params.c, and it should be fairly easy to extend this to also check slave latency. Doing so, you should see radio notification for every slave-latency-th connection event, if no data is pending.&lt;/p&gt;
&lt;p&gt;Remember that the device will wake up and send data every event if any data is queued; the slave latency is only used when no data is currently queued.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/thread/1767?ContentTypeID=1</link><pubDate>Thu, 22 Aug 2013 08:31:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7d56cb1c-c814-4f2a-b06d-29cf2ea24db8</guid><dc:creator>S&amp;#233;bastien Despont</dc:creator><description>&lt;p&gt;Thanks for your quick reply.&lt;/p&gt;
&lt;p&gt;My parameters now meet the Apple requirements :&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#define SECOND_1_25_MS_UNITS 800
#define SECOND_10_MS_UNITS 100
#define MIN_CONN_INTERVAL (SECOND_1_25_MS_UNITS / 100) * 2 /*20ms*/
#define MAX_CONN_INTERVAL (SECOND_1_25_MS_UNITS / 10) * 4 /*400ms*/
#define SLAVE_LATENCY 4
#define CONN_SUP_TIMEOUT (4 * SECOND_10_MS_UNITS) /*4s*/
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I am aware that the peripheral can send data immediatly as you explained in &lt;a href="https://devzone.nordicsemi.com/index.php/what-is-connection-parameters#reply-61"&gt;this thread&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;But in my case, there is no connection problem between the device and the chip. I am able to receive and send data to the chip with my IOS app.&lt;/p&gt;
&lt;p&gt;I added breakpoints in the ble_conn_param in the event handler to check if some errors occurred, but I never reach one of the error checked  :&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// Parameters are not ok, send connection parameters update request.
// Negotiation failed, disconnect automatically if this has been configured
// Notify the application that the procedure has failed
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I just want be able to increase the interval connection to move my motors without radio interrupt perturbation.&lt;/p&gt;
&lt;p&gt;As I said in my question, I can see when the radio connection event handler is called because I am eneabling and disabling a LED on the dev kit.&lt;/p&gt;
&lt;p&gt;Could help me to understand why the connection parameters don&amp;#39;t change the frequeny where the event handler for radio notificaiton is called by the softdevice?&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Slave latency and interval connection for GAP advices</title><link>https://devzone.nordicsemi.com/thread/1766?ContentTypeID=1</link><pubDate>Thu, 22 Aug 2013 08:04:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ebbcc0ac-3d21-4803-a4f5-5d544b88ca33</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;I assume you&amp;#39;re aware of how connection parameters work with BLE, and how the Peripheral can send requests for updated parameters, for example by using the ble_conn_params module from the SDK. When the Peripheral sends such requests, it&amp;#39;s up to the Central to either accept or reject them, and if you implement the event handler that the ble_conn_params module suggests, you can get an event when either of this happens with SDK 4.3. If you don&amp;#39;t seem to get the connection parameters you want, it&amp;#39;s useful to implement this, to see whether you get the FAILED event.&lt;/p&gt;
&lt;p&gt;If you&amp;#39;re working with Apple devices, it&amp;#39;s useful to be aware of the fact that they have their own document detailing their recommendations for connection parameters. This document can be found &lt;a href="https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf"&gt;here&lt;/a&gt;. If things doesn&amp;#39;t work as you expect, I&amp;#39;d therefore make sure that you comply with these requirements.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>