<?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>Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/33392/need-help-with-timeslot-extensions</link><description>I am currently trying to minimize radio noise when collecting data via the ADC, on a custom board powered by a battery (when the radio fires, it introduces a lot of noise into the captured values). 
 I have a capturing routine that runs for 10 seconds</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 27 Apr 2018 12:17:23 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/33392/need-help-with-timeslot-extensions" /><item><title>RE: Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/thread/130107?ContentTypeID=1</link><pubDate>Fri, 27 Apr 2018 12:17:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b449d6d5-bcf4-4a4e-8686-afa395407b16</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Mason&lt;/p&gt;
&lt;p&gt;I am a bit unsure why your code isn&amp;#39;t working, so I made a small example on my own to get timeslot extension working in a BLE example.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can find the code &lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-bedbaa422b2c4e74b44e18f8a7074630/ble_5F00_app_5F00_uart_5F00_max_5F00_timeslot.zip"&gt;here&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It will compile under SDK v15. Just copy the content of the zip into one of the example folders (for instance&amp;nbsp;\nRF5_SDK_15.0.0_a53641a\examples\ble_peripheral\ble_app_uart_max_timeslot\)&lt;/p&gt;
&lt;p&gt;Could you have a look at this example and see if you can spot the difference?&lt;/p&gt;
&lt;p&gt;All the timeslot related code is available in max_timeslot.c/h.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/thread/129843?ContentTypeID=1</link><pubDate>Wed, 25 Apr 2018 16:32:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f1f14891-b737-46fd-92f6-cb56e2d45126</guid><dc:creator>Mason</dc:creator><description>&lt;p&gt;NRF_RADIO_CALLBACK_SIGNAL_TYPE_EXTEND_FAILED and NRF_RADIO_SIGNAL_CALLBACK_ACTION_REQUEST_AND_END both evaluate to a value of 3, so I had to replace NRF_RADIO_CALLBACK_SIGNAL_TYPE_EXTEND_FAILED with NRF_RADIO_SIGNAL_CALLBACK_ACTION_REQUEST_AND_END&amp;nbsp; in order to compile the switch statement.&lt;br /&gt;&lt;br /&gt;In effect, absolutely nothing changes from before. The total timeslot length sits at about 19000us with roughly 21 successful extensions. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/thread/129735?ContentTypeID=1</link><pubDate>Wed, 25 Apr 2018 11:30:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dc68a422-9fe5-453d-ad4b-aaf1be8a4082</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Mason&lt;/p&gt;
&lt;p&gt;What happens if you try to request a new timeslot&amp;nbsp;as early as possible, using the&amp;nbsp;NRF_RADIO_SIGNAL_CALLBACK_ACTION_REQUEST_AND_END callback action?&lt;/p&gt;
&lt;p&gt;In theory that should give you a new timeslot as soon as there is some available time.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/thread/129411?ContentTypeID=1</link><pubDate>Mon, 23 Apr 2018 17:43:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c9c0e69-e481-4af1-87a6-de39cd6db1a8</guid><dc:creator>Mason</dc:creator><description>&lt;p&gt;I&amp;#39;m not able to get a new timeslot after the first one is unable to be extended yes.&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve changed the extension request failed case to the following:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;        case NRF_RADIO_CALLBACK_SIGNAL_TYPE_EXTEND_FAILED:
            fail_count++;

            configure_next_event_earliest();
            signal_callback_return_param.params.request.p_next = &amp;amp;m_timeslot_request;
            signal_callback_return_param.callback_action = NRF_RADIO_SIGNAL_CALLBACK_ACTION_END;
            break;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;However I&amp;#39;m seeing the same extension performance results (just one extension, ending early).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t believe I can change the connection interval without breaking iOS compatibility.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;ADC sampling frequency is once per millisecond, with every sixth millisecond saved into ram to be transferred over BLE later. I am employing an interpolation strategy, but I&amp;#39;d like to reduce the amount of times I have to interpolate by using timeslot extensions if possible.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Need Help with Timeslot Extensions</title><link>https://devzone.nordicsemi.com/thread/129022?ContentTypeID=1</link><pubDate>Thu, 19 Apr 2018 14:55:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4eb3ec8f-fcb3-4adb-b9a7-67fbcb68558e</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;HI&lt;/p&gt;
&lt;p&gt;What is your ADC sampling frequency?&lt;/p&gt;
&lt;p&gt;Is there any way you could cover the missing samples by interpolating from surrounding samples?&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know how much using timeslots will help compared to radio_notifications. In either case the Bluetooth stack will take&amp;nbsp;precedence when a connection event is coming up (unless you are in slave latency sleep, and don&amp;#39;t have any data in the buffers). Any chance you could increase the connection interval further?&amp;nbsp;&lt;br /&gt;It is possible to change the connection parameters dynamically, but issuing a connection parameter update request, but whether or not it is granted depends on the central device.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Are you saying that you are not able to get a new timeslot after the first one is unable to be extended?&lt;br /&gt;If you want to be in the timeslot as much as possible it is common practice to ask for the earliest possible timeslot after the extension fails.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn Øvrebekk&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>