<?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>The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47726/the-nordic_uart-device-is-not-visible-from-ios-bt-setting</link><description>Hello. 
 I imported the &amp;quot;Nordic_UART&amp;quot; example from &amp;quot;nRF5_SDK_15.2.0_9412b96 examples ble_peripheral\&amp;quot; The device is visible from the Android BT settings and is not visible from the BT settings of iOS(8.0). The &amp;quot;nRF Connect&amp;quot; application on iOS(8.0) recognizes</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 27 May 2019 12:42:52 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47726/the-nordic_uart-device-is-not-visible-from-ios-bt-setting" /><item><title>RE: The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/thread/189327?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 12:42:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:27753b9f-bcc4-4d8e-9626-ba97808c804c</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi Demetrio&lt;/p&gt;
&lt;p&gt;You will have to add the HID service as well in order for your iOS device to see it.&lt;/p&gt;
&lt;p&gt;Honestly, I&amp;#39;m not sure about the encrypted connection possibilities through BLE for iOS, as we generally use nRFConnect for this purpose. Using nRFConnect you should be able to pair and communicate using encryption at least. There also won&amp;#39;t be any trouble with visibility there. So if you&amp;#39;re not sure why you want to connect via the settings, then neither am I.&lt;/p&gt;
&lt;p&gt;The main difference between communication using pairing and not, is that you will be able to encrypt your messages when paired, and is generally a safer way of communication. If the devices aren&amp;#39;t paired, the information will have to be sent via the advertising packets, and will be out in the open for &amp;quot;anyone&amp;quot; to see.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/thread/189246?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 09:06:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8e5b44ea-6f11-45e4-a069-78c32f690df7</guid><dc:creator>Demetrio Magrin REEL</dc:creator><description>&lt;div class="author"&gt;
&lt;div class="meta"&gt;&lt;span class="parent"&gt;&lt;a class="internal-link view-post navigable ui-tip" href="https://devzone.nordicsemi.com/f/nordic-q-a/47726/the-nordic_uart-device-is-not-visible-from-ios-bt-setting/189193#189193"&gt;&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="content full threaded-reply-content user-defined-markup"&gt;
&lt;div class="content"&gt;
&lt;p&gt;Hi Simonr&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span title=""&gt;I thank you for your reply.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span class="" title=""&gt;In my &amp;quot;Nordic_UART&amp;quot; application I had already tried to make these simple changes:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span class="" title=""&gt;static void advertising_init(void)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ble_advertising_init_t init;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(&amp;amp;init, 0, sizeof(init));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.advdata.name_type&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = BLE_ADVDATA_FULL_NAME;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.advdata.include_appearance = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.advdata.flags&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = BLE_GAP_ADV_FLAGS_LE_ONLY_LIMITED_DISC_MODE;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.srdata.uuids_complete.uuid_cnt = sizeof(m_adv_uuids) / sizeof(m_adv_uuids[0]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.srdata.uuids_complete.p_uuids&amp;nbsp; = m_adv_uuids;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.config.ble_adv_fast_enabled&amp;nbsp; = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.config.ble_adv_fast_interval = APP_ADV_INTERVAL;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.config.ble_adv_fast_timeout&amp;nbsp; = APP_ADV_DURATION;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; init.evt_handler = on_adv_evt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code = ble_advertising_init(&amp;amp;m_advertising, &amp;amp;init);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APP_ERROR_CHECK(err_code);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ble_advertising_conn_cfg_tag_set(&amp;amp;m_advertising, APP_BLE_CONN_CFG_TAG);&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span class="" title=""&gt;static void gap_params_init(void)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ble_gap_conn_params_t&amp;nbsp;&amp;nbsp; gap_conn_params;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ble_gap_conn_sec_mode_t sec_mode;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BLE_GAP_CONN_SEC_MODE_SET_OPEN(&amp;amp;sec_mode);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code = sd_ble_gap_device_name_set(&amp;amp;sec_mode,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (const uint8_t *) DEVICE_NAME,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strlen(DEVICE_NAME));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APP_ERROR_CHECK(err_code);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // see function &amp;quot;static void advertising_init(void)&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &amp;quot;init.advdata.include_appearance = true&amp;quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code = sd_ble_gap_appearance_set(BLE_APPEARANCE_HID_KEYBOARD);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APP_ERROR_CHECK(err_code);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; memset(&amp;amp;gap_conn_params, 0, sizeof(gap_conn_params));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gap_conn_params.min_conn_interval = MIN_CONN_INTERVAL;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gap_conn_params.max_conn_interval = MAX_CONN_INTERVAL;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gap_conn_params.slave_latency&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = SLAVE_LATENCY;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gap_conn_params.conn_sup_timeout&amp;nbsp; = CONN_SUP_TIMEOUT;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err_code = sd_ble_gap_ppcp_set(&amp;amp;gap_conn_params);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APP_ERROR_CHECK(err_code);&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span class="" title=""&gt;&lt;span title=""&gt;After these simple changes my iPAD mini (iOS 8.0) does not yet see the &amp;quot;Nordic_UART&amp;quot; device.&lt;/span&gt;&lt;br /&gt;&lt;span title=""&gt;Maybe it depends on the too old iOS version ?&lt;/span&gt;&lt;br /&gt;&lt;span title=""&gt;If I can make my device visible from iOS it will be possible to perform the pairing (to enable encrypted communication).&lt;/span&gt;&lt;br /&gt;&lt;span title=""&gt;What are the advantages of making my &amp;quot;Nordic_UART&amp;quot; device visible from iOS ?&lt;/span&gt;&lt;br /&gt;&lt;span title=""&gt;I have read that without the MFi chip it will never be possible to execute encrypted communication.&lt;/span&gt; &lt;span title=""&gt;It&amp;#39;s true ?&lt;/span&gt;&lt;br /&gt;&lt;span title=""&gt;If so, what&amp;#39;s the point in making my device visible from iOS ?&lt;/span&gt;&lt;br /&gt;What difference is there in communication with and without pairing ?&lt;br /&gt;With Android, if I enable pairing I have an encrypted communication.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="content"&gt;BR&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;Demetrio Magrin&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/thread/189236?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 08:46:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:56cf62af-a5d7-404d-bd95-88c76fa3e0eb</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi Demetrio&lt;/p&gt;
&lt;p&gt;Yes, you could use an app for this like the one in the YouTube link you provided or our nRFConnect app for iOS. But in the second answer in the stackoverflow link you provided it is stated: &amp;quot;&lt;span&gt;If you hobby project is to do something related to built-in supported devices, like HID (keyboard, mouse, remote control, etc.), you will actually see them during discovery from Settings app.&amp;quot; Which is what I suggest you make your nRF advertise as if you don&amp;#39;t want to use an app.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Simon&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/thread/189214?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 07:44:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a1e71701-43de-4bf8-b8d6-fead913784c7</guid><dc:creator>Demetrio Magrin REEL</dc:creator><description>&lt;p&gt;Hi Simonr&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;span title=""&gt;I thank you for your reply.&lt;/span&gt;&lt;br /&gt;&lt;span class="" title=""&gt;It seems to me that there is some confusion about it.&lt;/span&gt;&lt;br /&gt;&lt;span class="" title=""&gt;Try to see the links I have listed below and tell me what you think.&lt;/span&gt;&lt;br /&gt;&lt;span class="" title=""&gt;Thank you.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://www.youtube.com/watch?v=yMQHo1N707Y"&gt;https://www.youtube.com/watch?v=yMQHo1N707Y&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://stackoverflow.com/questions/45598377/does-bluetooth-low-energy-devices-still-not-show-under-ios-bluetooth-settings-m"&gt;https://stackoverflow.com/questions/45598377/does-bluetooth-low-energy-devices-still-not-show-under-ios-bluetooth-settings-m&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;BR&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Demetrio Magrin&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="tlid-translation translation" lang="en"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The Nordic_UART device is not visible from iOS BT setting</title><link>https://devzone.nordicsemi.com/thread/189193?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 06:52:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c34877f3-ddeb-4fba-8fa6-0a9a4db5baf8</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi Demetrio&lt;/p&gt;
&lt;p&gt;IOS devices won&amp;#39;t discover bluetooth devices that aren&amp;#39;t &amp;quot;useful&amp;quot; to the IOS device, which is why you aren&amp;#39;t able to discover the Nordic UART device using the Bluetooth setting. To make it visible I think you have to add the HID service in the advertising packet and add HID profile to your attribute table as well. You can look at our ble_app_hids_keyboard example to see how this is done.&lt;/p&gt;
&lt;p&gt;By doing this you will trick the device into thinking the nRF is a HID (Human Interface Device), which means it finds it useful and will show it as a connectable Bluetooth device.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>