<?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>Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/42411/problems-after-dfu-on-ios</link><description>Hi, 
 We developed our device with KEIL 5, SDK15.2 and SoftDevice 6.1.1. After we upgrade the SDK on our device from version 14 to 15, our IOS phone encountered the following problem: 
 Use nRF connect on IOS to do DFU successfully and connected with</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 06 Sep 2019 11:39:26 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/42411/problems-after-dfu-on-ios" /><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/208458?ContentTypeID=1</link><pubDate>Fri, 06 Sep 2019 11:39:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d721f4b9-331e-4212-bbe9-4043d6748d79</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thanks for letting me know about the dead link! I have now updated both links. (Link to pm_local_database_has_changed() was also outdated.)&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/208337?ContentTypeID=1</link><pubDate>Thu, 05 Sep 2019 20:26:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1d4fee22-10a7-4a60-9197-0e2b50cb6016</guid><dc:creator>Michael M</dc:creator><description>&lt;p&gt;The link for the &amp;quot;GATT Service Server Example&amp;quot; is invalid .. can you update it please.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/167733?ContentTypeID=1</link><pubDate>Thu, 24 Jan 2019 16:40:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e84fabe8-02de-4315-bee0-47920ad86e6b</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I do not quite understand what you have done and where, but on the application you need both to enable the characteristic and to actually trigger an update notification (e.g. with pm_local_database_has_changed(), see my other recent reply.)&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/167731?ContentTypeID=1</link><pubDate>Thu, 24 Jan 2019 16:37:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1138592d-1b0a-4d2b-93b5-4983561d9261</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;For the bootloader it should not be an issue, as if you use NRF_DFU_BLE_REQUIRES_BONDS it will send service changed notifications. (If you do unbonded DFU then it will increment the BLE address by one when in DFU mode in order to avoid the issue. It then goes back to the old BLE address again for the (old or new) application.)&lt;/p&gt;
&lt;p&gt;For the application, if you use the Peer Manager you should use &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.3.0%2Fgroup__peer__manager.html&amp;amp;anchor=gaaecb7f99f58d71f085f62f5cc5267508"&gt;pm_local_database_has_changed()&lt;/a&gt; after a bonded DFU, or after any DFU that has updated the GATT table. You may have a look at the &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.3.0%2Fble_sdk_app_gatts.html"&gt;GATT Service Server Example Application&lt;/a&gt; for an example of notifying a database change (although in that example it is triggered by button press.)&lt;/p&gt;
&lt;p&gt;You also need to set NRF_SDH_BLE_SERVICE_CHANGED to 1 in sdk_config.h, in order for the GATT service to include the Service Changed Characteristic.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/165848?ContentTypeID=1</link><pubDate>Wed, 16 Jan 2019 03:06:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3d10340e-ff12-4107-9104-6717709873e7</guid><dc:creator>siruiwang</dc:creator><description>&lt;p&gt;Hi Terje,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m a iOS developer, I tried using&amp;nbsp;&lt;span&gt;nRF Connect for Android and enabled&amp;nbsp;&amp;quot;Service Changed&amp;quot;&amp;nbsp;characteristic,&amp;nbsp;and it&amp;#39;s still enabled in DFU mode and after DFU&amp;nbsp;success, but nothing changed if I enabled this&amp;nbsp;characteristic,&amp;nbsp;nRF Connect&amp;nbsp;still not received any&amp;nbsp;GATT table&amp;nbsp;&lt;/span&gt;update for both iOS and Android,Is this firmware issues or iOS issues?&lt;/p&gt;
&lt;p&gt;Best Regards&lt;/p&gt;
&lt;p&gt;Sirui&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/165650?ContentTypeID=1</link><pubDate>Tue, 15 Jan 2019 08:07:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8af1188a-24e2-47c1-aafb-4a10a5f10cb6</guid><dc:creator>Richard Yin</dc:creator><description>&lt;p&gt;Dear&amp;nbsp; Terje,&lt;/p&gt;
&lt;p&gt;How to handle &amp;quot;Service Changed&amp;quot; in bootloader and application? Could you please send any&amp;nbsp; any example code to demonstrate this process?&lt;/p&gt;
&lt;p&gt;Thanks and Regards,&lt;/p&gt;
&lt;p&gt;Richard&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems after DFU on IOS</title><link>https://devzone.nordicsemi.com/thread/165229?ContentTypeID=1</link><pubDate>Fri, 11 Jan 2019 15:33:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1dba6b87-d69b-444e-9ad8-ad7b339c5293</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;When you have a changing GATT table you should also have a &amp;quot;Service Changed&amp;quot; characteristic, and you should handle it properly both in bootloader and application. Otherwise the peer device may assume that the GATT table did not change, which is exactly what iOS does. (Most smart phones do service discovery every time regardless, which explains why they get the new GATT table without problem.)&lt;/p&gt;
&lt;p&gt;iOS does not display the Service Changed characteristic, but if you use nRF Connect for Android or for Desktop you can check to see if your application (before and after) and DFU bootloader does use this characteristic. See for instance the thread &lt;a href="https://devzone.nordicsemi.com/support-private/support/206469"&gt;Buttonless DFU Error: Enabling indications failed&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>