<?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>How to implement &amp;quot;Fast advertising&amp;quot; with SDK 14.10</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/57473/how-to-implement-fast-advertising-with-sdk-14-10</link><description>Hi All 
 I&amp;#39;d like to implement &amp;quot;Fast advertising&amp;quot; with SDK14.10 
 Q1: I add some code in advertising_data_set() to do fast advertising, is that correct ? 
 
 
 Q2: If want to test current consumption under different conditions (in red box) these conditions</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 26 Jan 2021 17:14:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/57473/how-to-implement-fast-advertising-with-sdk-14-10" /><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/291353?ContentTypeID=1</link><pubDate>Tue, 26 Jan 2021 17:14:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:985a3c99-ffc0-421f-b64e-b58bd07bf585</guid><dc:creator>RVM</dc:creator><description>&lt;p&gt;Thanks. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/291195?ContentTypeID=1</link><pubDate>Tue, 26 Jan 2021 08:45:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0ecf2a22-4cf4-4e79-91ff-f0c95d0b4cb0</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi RMV,&lt;/p&gt;
&lt;p&gt;Ah, you are right. I had forgot about this. The implementation in ble_advertising.c assumes that fast advertising is always used, so you need to specify config.ble_adv_fast_interval and config.ble_adv_fast_timeout in the struct (ble_advertising_init_t) you pass to&amp;nbsp;ble_advertising_init().&lt;/p&gt;
&lt;p&gt;This constitutes a bug, but the workaround you did is perfectly good though, as there is no difference between fast and slow advertising except for the internal concept of the advertising module. So as unfortunately using only slow does not work (without a slightly ugly hack of configuring both fast and low to the same value), then using only fast will give you the exact same behavior.&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/291127?ContentTypeID=1</link><pubDate>Mon, 25 Jan 2021 17:31:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:71b99336-7d44-4192-88c5-ad1bcbb09141</guid><dc:creator>RVM</dc:creator><description>[quote userid="7377" url="~/f/nordic-q-a/57473/how-to-implement-fast-advertising-with-sdk-14-10/290936#290936"]&lt;p&gt;Hi RMV,&lt;/p&gt;
&lt;p&gt;There should not be any problem using just slow advertising. Can you share your code so that I see what you have done, and clarify from which function call you get which error code?&lt;/p&gt;[/quote]
&lt;p&gt;Hi Einar,&lt;/p&gt;
&lt;p&gt;Unfortunately I have worked around this issue by, like you say, just setting the values for my slow profile in the fast mode of the advertising module.&lt;/p&gt;
&lt;p&gt;I think it should be easy to reproduce what I am seeing. If this does not reproduce any runtime failures then I may need some time to set up the use case for you again.....&lt;/p&gt;
&lt;p&gt;Just cook up a basic advertising scenario and customize as listed below&lt;br /&gt;1. Set all values in the &amp;#39;fast&amp;#39; data field/substructure to 0 i.e. fast_mode is disabled, and all the intervals are &amp;#39;0&amp;#39;. &lt;br /&gt;2. Set the &amp;#39;slow&amp;#39; field/substructure to &amp;#39;enable&amp;#39;, and fill in some reasonable (non-zero) values for the various intervals.&lt;br /&gt;3. Make a call to &amp;#39;start&amp;#39; the advertisement in &amp;#39;SLOW&amp;#39; mode)&lt;/p&gt;
&lt;p&gt;If I recall (not sure at this time since I am not running into this issue now) you should observe that the device fails to launch the advertisement -- unless I am mistaken the call to &amp;#39;start&amp;#39; the advertisement is where I recall the return value was indicating the &amp;#39;invalid_parameter&amp;#39; (i.e. 7?)&lt;/p&gt;
&lt;p&gt;Cheers&lt;br /&gt;RMV&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/290936?ContentTypeID=1</link><pubDate>Mon, 25 Jan 2021 08:13:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:75c6a0d9-c7b9-4c1f-afe0-66d97f33db2e</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi RMV,&lt;/p&gt;
&lt;p&gt;There should not be any problem using just slow advertising. Can you share your code so that I see what you have done, and clarify from which function call you get which error code?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/290827?ContentTypeID=1</link><pubDate>Fri, 22 Jan 2021 19:10:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:47e88b32-b4d7-46fa-a9b6-ee0f60889fa9</guid><dc:creator>RVM</dc:creator><description>[quote userid="7377" url="~/f/nordic-q-a/57473/how-to-implement-fast-advertising-with-sdk-14-10/234358#234358"]&lt;blockquote class="quote"&gt;&lt;div class="quote-user"&gt;Louis Wnag said:&lt;/div&gt;&lt;div class="quote-content"&gt;In other words, I can reverse the defined values.&lt;/div&gt;&lt;/blockquote&gt;&lt;div class="quote-footer"&gt;&lt;/div&gt;
&lt;p&gt;Yes (though I don&amp;#39;t see any use cases where that would make sense).&lt;/p&gt;[/quote]
&lt;p&gt;I think there is some side effect here -- perhaps you can correct me?&lt;/p&gt;
&lt;p&gt;I am running into some similar concerns in our design based on SDK v16.0.0, S132 v7.0.1 on an nRF52832.&lt;/p&gt;
&lt;p&gt;I wanted to use the slow advertising by default (and completely ignore the fast mode) but when I call the function to initialize the advertisement, it generates an error (INVALID_PARAMS?). It looks like this function &amp;#39;requires/expects&amp;#39; that fast_mode be enabled and it simply copies over the values from the fast mode regardless of whether or not I chose to enable or disable it. &lt;/p&gt;
&lt;p&gt;In other words, it looks like with the setup I am using, I need to deliberately set up the fast mode and USE SLOW MODE VALUES FOR IT.&lt;/p&gt;
&lt;p&gt;Is that how it is supposed to go down?&lt;/p&gt;
&lt;p&gt;Cheers&lt;/p&gt;
&lt;p&gt;RMV&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/234358?ContentTypeID=1</link><pubDate>Fri, 14 Feb 2020 10:22:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:68b33f7d-15c7-4117-bcf9-496ddce62a1f</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="Louis Wnag"]About Fast/Slow Advertising. I&lt;span&gt;s it just a convenient feature ?&amp;nbsp;&amp;nbsp;&amp;nbsp;Is it not a Bluetooth spec feature ?&amp;nbsp;&lt;/span&gt;[/quote]
&lt;p&gt;Yes. It is an SDK concept, not a Bluetooth spec feature. The Bluetooth specification does limit advertising intervals for certain advertising types (see for instance &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/12165/fast-advertising-and-slow-advertising/46039#46039"&gt;this post&lt;/a&gt;), but that is not related to fast/slow advertising. The reason for having fast/slow advertising is that typically you want fast advertising first to allow a central to connect fast when it is most likely to connect. After that, you typically want slower advertising in order to save power.&lt;/p&gt;
[quote user="Louis Wnag"]In other words, I can reverse the defined values.[/quote]
&lt;p&gt;Yes (though I don&amp;#39;t see any use cases where that would make sense).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/234292?ContentTypeID=1</link><pubDate>Fri, 14 Feb 2020 01:46:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6e7a9791-72ab-486e-8b82-afdf9ee2ee27</guid><dc:creator>Louis Wnag</dc:creator><description>&lt;p&gt;Hi Einar&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;
&lt;p&gt;Q1:&lt;/p&gt;
&lt;p&gt;About Fast/Slow Advertising. I&lt;span&gt;s it just a convenient feature ?&amp;nbsp;&amp;nbsp;&amp;nbsp;Is it not a Bluetooth spec feature ?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Fast and Slow Advertising just define different advertising interval ?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;#define APP_ADV_FAST_INTERVAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0028&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define APP_ADV_SLOW_INTERVAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0C80&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In other words, I can reverse the defined values.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define APP_ADV_FAST_INTERVAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0C80&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define APP_ADV_SLOW_INTERVAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0028&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Q2: &lt;span&gt;I want to understand the relevant knowledge first and then ask questions if there are any questions.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/233191?ContentTypeID=1</link><pubDate>Fri, 07 Feb 2020 07:54:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ccb39a65-1894-4335-9477-1d4f06289652</guid><dc:creator>Einar Thorsrud</dc:creator><description>[quote user="Louis Wnag"]May I need to&amp;nbsp;calle ble_advertising_init() ?[/quote]
&lt;p&gt;Yes, that has to be called anyway since you use the advertising module. What does the rest of y our code look like? And does it work?&lt;/p&gt;
[quote user="Louis Wnag"]How to verify for &amp;quot;Fast Advertising&amp;quot; ?[/quote]
&lt;p&gt;Fast and slow advertising is just an SDK concept. You can verify that you get the expected advertising interval using a BLE sniffer.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/233184?ContentTypeID=1</link><pubDate>Fri, 07 Feb 2020 06:09:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:af949ee7-d1e7-4bdc-b5c7-40546289d9f9</guid><dc:creator>Louis Wnag</dc:creator><description>&lt;p&gt;Hi Einar Thorsrud&lt;/p&gt;
&lt;p&gt;Thank&amp;#39;s your response.&lt;/p&gt;
&lt;p&gt;About Q1 I can not fully understand what you mean.&lt;/p&gt;
&lt;p&gt;If I change my code. May I need to&amp;nbsp;calle ble_advertising_init() ?&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1581055573513v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;And&amp;nbsp;&lt;/p&gt;
&lt;p&gt;How to verify for &amp;quot;Fast Advertising&amp;quot; ?&lt;/p&gt;
&lt;p&gt;Thank you ?&lt;/p&gt;
&lt;div id="main"&gt;
&lt;div id="cnt"&gt;
&lt;div class="mw"&gt;
&lt;div id="rcnt"&gt;
&lt;div class="col"&gt;
&lt;div id="center_col"&gt;
&lt;div class="med" id="res"&gt;
&lt;div id="search"&gt;
&lt;div&gt;
&lt;div id="rso"&gt;
&lt;div class="bkWMgd"&gt;
&lt;div class="g knavi obcontainer mod"&gt;
&lt;div id="tw-main"&gt;
&lt;div class="vk_c" id="tw-container"&gt;
&lt;div&gt;
&lt;div class="jhH5U"&gt;
&lt;div class="tw-src-ltr" id="tw-ob"&gt;
&lt;div class="oSioSc"&gt;
&lt;div id="tw-target"&gt;
&lt;div class="g9WsWb" id="kAz1tf"&gt;
&lt;div class="tw-ta-container tw-nfl" id="tw-target-text-container"&gt;
&lt;pre class="tw-data-text tw-text-large tw-ta" id="tw-target-text" dir="ltr"&gt;&lt;span lang="en"&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="main"&gt;
&lt;div id="cnt"&gt;
&lt;div class="mw"&gt;
&lt;div id="rcnt"&gt;
&lt;div class="col"&gt;
&lt;div id="center_col"&gt;
&lt;div class="med" id="res"&gt;
&lt;div id="search"&gt;
&lt;div&gt;
&lt;div id="rso"&gt;
&lt;div class="bkWMgd"&gt;
&lt;div class="g knavi obcontainer mod"&gt;
&lt;div id="tw-main"&gt;
&lt;div class="vk_c" id="tw-container"&gt;
&lt;div&gt;
&lt;div class="jhH5U"&gt;
&lt;div class="tw-src-ltr" id="tw-ob"&gt;
&lt;div class="oSioSc"&gt;
&lt;div id="tw-target"&gt;
&lt;div class="g9WsWb" id="kAz1tf"&gt;
&lt;div class="tw-ta-container tw-nfl" id="tw-target-text-container"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement "Fast advertising" with SDK 14.10</title><link>https://devzone.nordicsemi.com/thread/233121?ContentTypeID=1</link><pubDate>Thu, 06 Feb 2020 16:17:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:239ca9b0-8add-47ec-8bb5-d923f896885a</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user=""]Q1: I add some code in advertising_data_set() to do fast advertising, is that correct ?[/quote]
&lt;p&gt;This looks OK. But note that the advertising mode configuration is also provided when you initialize the advertising module, so there is no point in calling ble_advertising_modes_config_set() unless you want to change the configuration since you called ble_advertising_init().&lt;/p&gt;
[quote user=""]Q2: If&amp;nbsp; want to test current consumption under different&amp;nbsp; conditions (in red box) these conditions is work for test ?[/quote]
&lt;p&gt;You have highlighted the different security modes. In this case, you only change the security configuration for the name. But, if this applies to all used characteristics, then generally pairing will not be done if set to Open, and will be done iff set otherwise. The method of pairing (LESC or not or MITM or not) also depends on other factors, but the characteristics. In any case, this&amp;nbsp;does not have a significant impact on current consumption if most cases.&amp;nbsp; Using encryption or not does not have a big impact, and the different pairing procedures also have a small impact on average current consumption, since pairing is typically not done often (perhaps only once).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>