<?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>what happened during an interval in the Power Profiling Application example?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/32304/what-happened-during-an-interval-in-the-power-profiling-application-example</link><description>Dear friends, 
 In the Power Profiling Application (an example of nordic SDK), the priority of the application timer is set to APP_LOW(as shown in the pic below). 
 
 
 However, according to the pic below, as sd_app_evt_wait () is a SVC, how can the application</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 20 Mar 2018 01:45:18 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/32304/what-happened-during-an-interval-in-the-power-profiling-application-example" /><item><title>RE: what happened during an interval in the Power Profiling Application example?</title><link>https://devzone.nordicsemi.com/thread/125073?ContentTypeID=1</link><pubDate>Tue, 20 Mar 2018 01:45:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c6bfd5a9-846e-40f8-9676-cf4cbf4e892a</guid><dc:creator>xvhongpeng</dc:creator><description>&lt;p&gt;thank u very much&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what happened during an interval in the Power Profiling Application example?</title><link>https://devzone.nordicsemi.com/thread/124899?ContentTypeID=1</link><pubDate>Mon, 19 Mar 2018 07:18:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b4e2386c-3731-4b13-adab-c21822c23b88</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;sd_app_evt_wait() does only put the chip to sleep, it doesn&amp;#39;t stay in that priority level. Therefore, a timer of priority APP_LOW can wake up the chip.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;A timer will wake up the chip at the time of a connection event. If something else, other than the timer keeping track of the connection is waking up the chip, it is still the radio that will get the priority when needed.&lt;/li&gt;
&lt;li&gt;When there are data in the TX buffers, the chip will try to get them transmitted as fast as possible. The number of packets per connection interval does also depends on what the central device is capable of. Note: It is also possible to extend the packet length, that will increase the throughput. I would recommend you to read the t&lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.s132.sds%2Fdita%2Fsoftdevices%2Fs130%2Fble_data_throughput%2Fble_data_throughput.html&amp;amp;cp=2_3_1_0_16"&gt;hroughput chapter&lt;/a&gt; in the Softdevice Specification, and also test test&lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v14.2.0%2Fble_sdk_app_att_mtu.html&amp;amp;cp=4_0_0_4_2_1_0"&gt; the throughput example in the SDK&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The number of bytes that can be written to the TX buffer depends on the maximum packet size that is configured. To get a better understanding of this, I would recommend you to test the throughput example.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Yes, in a connection event, both the slave and the master can send and receive data.&amp;nbsp;The data rates a written in the throughput example in the SDS.&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what happened during an interval in the Power Profiling Application example?</title><link>https://devzone.nordicsemi.com/thread/124669?ContentTypeID=1</link><pubDate>Fri, 16 Mar 2018 02:10:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:81e6e8e1-155f-45ac-b6ec-badb6cb7c9f7</guid><dc:creator>xvhongpeng</dc:creator><description>&lt;p&gt;&lt;span&gt;Thank u for your valueable answer. If the software interrupt priority level of the softdevice is &amp;#39;4&amp;#39; (e.g. for&amp;nbsp;&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s140.api.v5.0.0/group___n_r_f___s_o_c___f_u_n_c_t_i_o_n_s.html#ga11d88d38ac99fb72cde74c9385d36433"&gt;sd_app_evt_wait&lt;/a&gt;() ) and the priority&amp;nbsp;of the timer in this application is set to APP_LOW, how can&amp;nbsp;the application timer wake up the SOC ? (The ISR of the timer is to call &amp;nbsp;sd_ble_gatts_hvx() to send data).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;(1) if the SOC was waken up by the timer at the connection event time, what will happen?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;(2)&amp;nbsp; 6 TX HVX buffers? you mean 6 tx phases in a connection event? &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;(3) how many bytes sd_ble_gatts_hvx() can write to the memory buffer at a time?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;(4) i mean: during a connection evt, can a Slave device both receive user data from a&amp;nbsp;Master and tx data to the Peer?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;best regards.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what happened during an interval in the Power Profiling Application example?</title><link>https://devzone.nordicsemi.com/thread/124615?ContentTypeID=1</link><pubDate>Thu, 15 Mar 2018 14:28:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e36e25a3-f8c3-4e61-b789-a3419b6e194e</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;There is a mismatch between the softdevice specification (SDS) and the SDK examples: &lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.s132.sds%2Fdita%2Fsoftdevices%2Fs130%2Fprocessor_avail_interrupt_latency%2Fexception_mgmt_sd.html&amp;amp;cp=2_3_1_0_15_1"&gt;The SDS&lt;/a&gt; says that the software interrupt priority level of the softdevice is &amp;#39;4&amp;#39; (APP_IRQ_PRIORITY_MID). However, in the applications in the SDK, it is set to&amp;nbsp;APP_IRQ_PRIORITY_LOWEST, see&amp;nbsp;swi_interrupt_priority_workaround(..) in nrf_sdh.c.&lt;/p&gt;
&lt;p&gt;Answer to your questions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;If sd_ble_gatts_hvx() has been called successfully, the notification data will be transmitted upon the next connection interval. And yes, that can include multiple packets per connection interval.&amp;nbsp;&lt;br /&gt;The SOC will keep track of when it needs wake up with respect to the BLE activity.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;The S132 has 6 TX HVX buffers.&lt;/li&gt;
&lt;li&gt;Could you elaborate a little more? Note: there will only be transmitted multiple packets per connection interval when there are data in the TX buffers.&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>