<?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 allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/5265/how-to-allow-bonding-when-a-button-is-pressed</link><description>I&amp;#39;m using SDK 7.1, PCA10028 eval board, SD310 2.0.1 
 My application has no display, and a single button for input. I want to prevent bonding until the button is pressed. Looking at Nordic&amp;#39;s documentation I found 1 sequence chart that shows bonding,</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 28 Jan 2015 08:35:06 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/5265/how-to-allow-bonding-when-a-button-is-pressed" /><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18427?ContentTypeID=1</link><pubDate>Wed, 28 Jan 2015 08:35:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:49077f2b-b0b9-4b8c-88db-3060a585a345</guid><dc:creator>Petter Myhre</dc:creator><description>&lt;p&gt;If you don&amp;#39;t think the solution is handy I suggest you add a new question and explain what your requirements are. It is just one solution, and it was accepted. And, you don&amp;#39;t need to hold the button. You can for example allow bonding for 30 seconds after a button press.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18426?ContentTypeID=1</link><pubDate>Tue, 27 Jan 2015 08:00:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37098579-1e88-4437-93a7-9c1ac1763edd</guid><dc:creator>Marcel Mulder</dc:creator><description>&lt;p&gt;The suggested &lt;a href="https://devzone.nordicsemi.com/question/19062/best-method-to-set-up-passkey-and-bonding/"&gt;solution&lt;/a&gt; it not very handy if I understand it correctly. You should press and hold the button and in the meantime setup the connection with your phone? Hmmmm, how can explain that to my customers...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18431?ContentTypeID=1</link><pubDate>Tue, 27 Jan 2015 07:07:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c257f5b6-8d27-4296-a3fa-ea20c2851c89</guid><dc:creator>Marcel Mulder</dc:creator><description>&lt;p&gt;See also &lt;a href="https://devzone.nordicsemi.com/question/27758"&gt;devzone.nordicsemi.com/.../27758&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;What I do (or actually did) is to advertise with whitelist filtering except when the button is pressed. Than I advertise to accept any connection for 30 seconds. After it is bonded it can connect using whitelist. The disadvantage is that you can have only 8 devices in the whitelist, so that&amp;#39;s the limit.
I am now changing to authentication on application level. For some reason the Bluetooth SIG never thought about our kind of user scenarios. But I think our scenario quite obvious.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18429?ContentTypeID=1</link><pubDate>Mon, 26 Jan 2015 17:43:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c84a3700-d608-4e53-9748-e37f8a3b0855</guid><dc:creator>nullpointer</dc:creator><description>&lt;p&gt;Hi ccook, I have to do something very similar, for the time being I read only the theory and I haven&amp;#39;t implemented yet, I think that is how it works:
2) The device will have 2 buttons (1 for bonding, 1 for delete all bondings)&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The device normally adversite in WHITE_LIST_MODE (so, no one can bond it, because no one is in the list)&lt;/li&gt;
&lt;li&gt;You push a button in the BLE device, and the device advertise in normal mode, so then you can bond your tablet, iphone, etc... for the future when the device advertise in WHITE_LIST_MODE&lt;/li&gt;
&lt;li&gt;Pushing the second button DELETE_ALL_BONDINGS, will unbond all the devices previously bonded...&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;so, whenever you push Button1 in the BLE device you can add new phones, tablets, etc...&lt;/p&gt;
&lt;p&gt;you can check this example ....\nrf51822\Board\nrf6310\s110\ble_app_proximity included in the SDK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18425?ContentTypeID=1</link><pubDate>Mon, 26 Jan 2015 16:05:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:170dde60-67da-4481-abc9-8de63b29d89b</guid><dc:creator>c cook</dc:creator><description>&lt;p&gt;Petter -
I&amp;#39;ve looked at that - with my device I have only 1 button - when I set up my security parameters I have the following choices:&lt;/p&gt;
&lt;p&gt;BLE_GAP_IO_CAPS_DISPLAY_ONLY              // I don&amp;#39;t have a display&lt;/p&gt;
&lt;p&gt;BLE_GAP_IO_CAPS_DISPLAY_YESNO        // I don&amp;#39;t have a display - I have a &amp;quot;yes&amp;quot; button, but not a &amp;quot;no&amp;quot;&lt;/p&gt;
&lt;p&gt;BLE_GAP_IO_CAPS_KEYBOARD_ONLY          // I don&amp;#39;t have Keyboard&lt;/p&gt;
&lt;p&gt;BLE_GAP_IO_CAPS_NONE                          // &amp;quot;just works&amp;quot; but I want to require a button press&lt;/p&gt;
&lt;p&gt;BLE_GAP_IO_CAPS_KEYBOARD_DISPLAY     // I don&amp;#39;t have a Keyboard, or a display&lt;/p&gt;
&lt;p&gt;Which of these do I choose?  I think the correct route is to set up static passkey, but I&amp;#39;m having problems figuring out how to make my device prevent bonding, until the button is pressed.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18430?ContentTypeID=1</link><pubDate>Mon, 26 Jan 2015 15:55:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1de49eb-de26-4022-b07b-c379b1916d85</guid><dc:creator>c cook</dc:creator><description>&lt;p&gt;Nullpointer -
My application involves controlling a device in the home.  We want to allow multiple devices to be able to connect - for example Husband&amp;#39;s phone, Wife&amp;#39;s phone and maybe a tablet or two (I know only one device will be connected at a time).  We want to prevent bonding, unless someone has physical access to the device (hence the button press).  I&amp;#39;m still quite new to BLE, but my understanding is, once the white list is created, the device will only advertise for, and accept connections with centrals on the white list.  How are new devices be added to the white list?  In other words - I buy a new tablet, what&amp;#39;s the process to get it added to the white list?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18424?ContentTypeID=1</link><pubDate>Mon, 26 Jan 2015 14:53:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:03b2f867-1ab4-4468-9edd-9aa3168936f0</guid><dc:creator>Petter Myhre</dc:creator><description>&lt;p&gt;&lt;a href="http://developer.nordicsemi.com/nRF51_SDK/doc/7.2.0/s110/html/a00859.html"&gt;Here&lt;/a&gt; it is, but this is from the S110 SoftDevice documentation.&lt;/p&gt;
&lt;p&gt;Please have a look at &lt;a href="https://github.com/NordicSemiconductor/nRF51-ble-app-uart-static-passkey"&gt;this&lt;/a&gt; example, it implements static passkey.&lt;/p&gt;
&lt;p&gt;How to allow bonding when a button is pressed seemed to be answered &lt;a href="https://devzone.nordicsemi.com/question/19062/best-method-to-set-up-passkey-and-bonding/"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to allow Bonding when a button is pressed?</title><link>https://devzone.nordicsemi.com/thread/18428?ContentTypeID=1</link><pubDate>Sat, 24 Jan 2015 06:17:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:39598b94-7e8b-476a-b822-3351a6187c6b</guid><dc:creator>nullpointer</dc:creator><description>&lt;p&gt;Check this:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/question/2166/how-to-pair-with-master-by-button-press-instead-of-passkey/"&gt;devzone.nordicsemi.com/.../&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>