<?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>Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/8710/change-bluetooth-device-name-from-ios</link><description>Hi , 
 I am using nRF6.0.0, SoftDevice 7.0, for nRF 6310 hardware.
I am trying to develop a ble keyboard app with the help of Ble Keyboard Sample we have in the SDK. As you might be aware that the device name is set when it is booted (e.g Nordic_Keyboard</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 18 Aug 2015 13:53:12 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/8710/change-bluetooth-device-name-from-ios" /><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31946?ContentTypeID=1</link><pubDate>Tue, 18 Aug 2015 13:53:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:eb3b3b90-d516-44a3-b5b6-43cf1c8d1660</guid><dc:creator>Ulrich Myhre</dc:creator><description>&lt;p&gt;I see, this is quite a different question from what the was involved in the initial question though. I am afraid I do not have that much experience with the pstorage module, so I would suggest raising a new question to attract someone that do. It&amp;#39;s supposedly a pretty easy module to use though. Have you looked here? &lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk51.v9.0.0%2Flib_pstorage.html&amp;amp;cp=4_1_0_3_13"&gt;infocenter.nordicsemi.com/index.jsp&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31945?ContentTypeID=1</link><pubDate>Tue, 18 Aug 2015 13:20:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:58cf5a68-e88b-4bce-aff1-1fcc7ca781ff</guid><dc:creator>ven</dc:creator><description>&lt;p&gt;Thank you Ulrich. The problem I am facing is in using pstorage. I have seen some examples where pstorage is used to write to flash but I am struggling understand the following.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How do I retrieve the device name from flash after restart(i.e how do I know the exact flash location)&lt;/li&gt;
&lt;li&gt;I have read someone saying we need to change the flash address settings in Keil.. How to determine which values to increase and what would be the size.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Can example with pstorage with all the above queries in mind would be grateful.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31944?ContentTypeID=1</link><pubDate>Tue, 18 Aug 2015 12:53:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b3dd9fdd-bb5b-4fdb-87a4-c250aa709eba</guid><dc:creator>Ulrich Myhre</dc:creator><description>&lt;p&gt;Sure, just find where the device name is set. This is where sd_ble_gap_device_name_set() is called, then replace the code with the code snippet I added to the original answer.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31943?ContentTypeID=1</link><pubDate>Mon, 17 Aug 2015 20:57:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f515d11-7bd2-452d-90cc-f6b116af7f4a</guid><dc:creator>ven</dc:creator><description>&lt;p&gt;Is it possible send me an example if you have any?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31942?ContentTypeID=1</link><pubDate>Mon, 17 Aug 2015 20:30:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a92ad70c-f2aa-452d-aee9-2fecc3af6a7b</guid><dc:creator>ven</dc:creator><description>&lt;p&gt;Thank you ulrich.Will try to set.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Change Bluetooth Device Name From iOS</title><link>https://devzone.nordicsemi.com/thread/31941?ContentTypeID=1</link><pubDate>Thu, 13 Aug 2015 11:17:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a20c3ddd-bc6c-4bf4-979e-976a7c016b02</guid><dc:creator>Ulrich Myhre</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You can set the device name to be writable remotely by a peer. Simply find where sd_ble_gap_device_name_set() is called and make sure the p_write_perm is pointing to a ble_gap_conn_sec_mode_t that has the proper permission levels. There are macros available like BLE_GAP_CONN_SEC_MODE_SET_OPEN that can be used to set the conn_sec_mode to more human-readable properties. The default setting is to not allow any writes, i.e. BLE_GAP_CONN_SEC_MODE_SET_NO_ACCESS (security mode 0, level 0). You can also require encryption (with or without MITM protection) to write to the device name.&lt;/p&gt;
&lt;p&gt;When this permission is set, the peer can write to the device name remotely. This will however be lost when the device goes into system off, so I would recommend saving the device name to e.g flash (using pstorage). That allows you to check flash during startup and pull a device name from there, if present.&lt;/p&gt;
&lt;p&gt;Ex:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#define STR_DEVICE_NAME &amp;quot;MY DEVICE NAME&amp;quot;
ble_gap_conn_sec_mode_t security;
BLE_GAP_CONN_SEC_MODE_SET_OPEN(&amp;amp;security);
sd_ble_gap_device_name_set(&amp;amp;security, STR_DEVICE_NAME, (uint16_t)strlen(STR_DEVICE_NAME)))
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;A second alternative is to set something in the UICR during mass production. The device can then pick up a name from there, without having to rely on a peer to change it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>