<?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>Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/23850/is-it-possible-to-atomically-change-gap-address-and-advertising</link><description>Hi, 
 is it possible to atomically change both the GAP address and the advertising message in one step? I want to broadcast two different advertising messages with each of them broadcasting a different GAP address.
If this is possible I could maybe</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 09 Aug 2017 11:34:00 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/23850/is-it-possible-to-atomically-change-gap-address-and-advertising" /><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93848?ContentTypeID=1</link><pubDate>Wed, 09 Aug 2017 11:34:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d94b379c-0c52-4f4b-8172-c15505293caa</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;I can internally post that as a request. But I afraid it won&amp;#39;t get out very soon.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93847?ContentTypeID=1</link><pubDate>Wed, 09 Aug 2017 11:31:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f62bb7d5-3fe0-469d-94ab-6294cfbc78e5</guid><dc:creator>Marius Heil</dc:creator><description>&lt;p&gt;Any chance that scanning could be excluded? I see the need for connecting and advertising to conform to the BLE spec, but during scanning seems a bit arbitrary and makes this a little difficult. Using a timeslot is always a possibility, but if its avoidable, that would be nice to keep the overhead down.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93846?ContentTypeID=1</link><pubDate>Wed, 09 Aug 2017 11:28:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:59395344-8143-4380-9eaa-c950d86b1f32</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Marius,&lt;/p&gt;
&lt;p&gt;I checked with R&amp;amp;D and it seems that we wanted to avoid the race condition may occur if we let application change the address when we are doing advertising or connecting. The scanning and connecting has almost the same implementation so it&amp;#39;s included in the restriction.
In addition, changing the identity address (public or random static) is not allowed during operation by BLE spec.&lt;/p&gt;
&lt;p&gt;Maybe you can think of scanning using timeslot ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93845?ContentTypeID=1</link><pubDate>Tue, 08 Aug 2017 11:19:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1ee5d4f6-bbeb-439c-9e0e-c83ed8a40be3</guid><dc:creator>Marius Heil</dc:creator><description>&lt;p&gt;According to the documentation, changing the address is also not possible while scanning. Therefore I would have to disable scanning as well. I don&amp;#39;t know why this restriction is in place. Would be nice to know the overhead of stopping and starting advertising each time, instead of only changing the advertising data. When a connected event comes in, I would rather use the own_addr that comes in the connected part of the ble event. I will also have to pay attention that the Softdevice is not in the connecting state, or I must stop connecting and restart it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93844?ContentTypeID=1</link><pubDate>Tue, 08 Aug 2017 09:17:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:65e3eecc-f389-4985-a82c-5244e7133ba2</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Marius,&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know why you say it&amp;#39;s no longer to change GAP address? The sd_ble_gap_addr_set() is still there. The only limitation is that you need to stop advertising, change the address and then start advertise again. When you have a CONNECTED event, you can call sd_ble_gap_addr_get() to know which address you are advertising with.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93849?ContentTypeID=1</link><pubDate>Fri, 04 Aug 2017 14:14:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ae44c307-d1b8-4b37-9f38-83d078baa2c4</guid><dc:creator>Marius Heil</dc:creator><description>&lt;p&gt;I implemented this myself now and was starting to get really fond of my implementation when I accidentially stumbled upon a devzone entry that changing the GAP address is no longer possible in SoftDevices with v3 and up. I guess that sucks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93843?ContentTypeID=1</link><pubDate>Thu, 27 Jul 2017 15:46:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:21a62d76-f087-4b21-9664-72f09f98535b</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Theoretically yes but setting address is simple RAM register setting so it will take few clock cycles. In addition if you run advertising only then you can use radio_notification handler which will notify you before and after each radio session so you are basically 100% sure that you don&amp;#39;t miss the event and both adv. data and address are applied together.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93842?ContentTypeID=1</link><pubDate>Thu, 27 Jul 2017 13:32:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b820b332-759d-4a33-a9f5-02b1cb18701e</guid><dc:creator>Marius Heil</dc:creator><description>&lt;p&gt;Sounds interesting, I am wondering weather the Softdevice might send an advertisement with a wrong address which might happen when I set the gap address and the Softdevice takes away the control via an interrupt before I am able to exchange the advertising data.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is it possible to atomically change GAP Address and Advertising?</title><link>https://devzone.nordicsemi.com/thread/93841?ContentTypeID=1</link><pubDate>Thu, 27 Jul 2017 13:04:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:133a9453-78d1-4c5c-b8c6-b4a4cc6e8052</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;I was running multiplexed broadcasts by switching the adv. data and I was also switching GAP address, it works well. GAP Central devices around were seeing the device as virtually two broadcasters and also connection requests were coming correctly. There are indeed limitations in adv. intervals of these two (or more) virtual broadcasters because they use only single GAP Broadcasting role in Nordic SD (so they need to use the same adv. type and also they will be effectively broadcasting with half frequency = double the interval of the &amp;quot;base&amp;quot; adv. interval provisioned in SD). You also need to remember that as soon as one connection is established you would need to restart another Peripheral role if you want to keep second virtual broadcaster in the air. And there I don&amp;#39;t know if playing with GAP address during connection doesn&amp;#39;t harm the link (I believe that it shouldn&amp;#39;t because only Access address is used in LL PDUs) but that should be easy to test.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>