<?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>Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns &amp;quot;NRF_ERROR_SVC_HANDLER_MISSING&amp;quot;</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/33959/integrating-buttonless-dfu-on-start-up-ble_dfu_buttonless_async_svci_init-returns-nrf_error_svc_handler_missing</link><description>I am using Nordic SDK 14.2.0 with the pca10040 and I want to integrate the Buttonless DFU functionality into my project (started with the Nordic BLE app template). 
 I tested and verified the &amp;quot;ble_app_buttonless_dfu&amp;quot; example works on my hardware. 
 I</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 03 Sep 2019 09:47:38 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/33959/integrating-buttonless-dfu-on-start-up-ble_dfu_buttonless_async_svci_init-returns-nrf_error_svc_handler_missing" /><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/207624?ContentTypeID=1</link><pubDate>Tue, 03 Sep 2019 09:47:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37915d6c-c7fe-4ee9-a87f-f0bc25410468</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Seems like&amp;nbsp;&lt;span&gt;NRF_DFU_BLE_REQUIRES_BONDS&amp;nbsp;has been renamed to&amp;nbsp;NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS&amp;nbsp; in the template app. I haven&amp;#39;t noticed it before now. Anyway, your app can support bonding even if&amp;nbsp;NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS&amp;nbsp;and&amp;nbsp;NRF_DFU_BLE_REQUIRES_BONDS&amp;nbsp;are both set to 0. The difference is that the link can&amp;#39;t be encrypted while the device is in bootloader DFU mode.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/207564?ContentTypeID=1</link><pubDate>Tue, 03 Sep 2019 07:42:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9d5b0df-2d8b-4fe5-b963-f09395f5b800</guid><dc:creator>nrbrook</dc:creator><description>&lt;p class="p1"&gt;&lt;span class="s1"&gt;If bonding is used in the main application, NRF_DFU_BLE_REQUIRES_BONDS must be 1 for the bootloader and NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS must be 1 in the application. If you don&amp;rsquo;t want to support bonding at all, both should be 0. I don&amp;rsquo;t think NRF_DFU_BLE_REQUIRES_BONDS is used in the buttonless dfu App example, it is only used in the boot loader. I was attempting to support bonding but not require it, this is not allowed (really the App define should be REQUIRES_BONDS too)&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/207527?ContentTypeID=1</link><pubDate>Tue, 03 Sep 2019 05:46:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:705904e6-f14e-4654-ab08-f21335a68c5c</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/members/nrbrook"&gt;nrbrook&lt;/a&gt;, this&amp;nbsp;is for sharing of bond information between app and bootloader so you can encrypt the link in DFU mode. The main application can support bonding&amp;nbsp;independent of the&amp;nbsp;&amp;quot;&lt;span&gt;NRF_DFU_BLE_REQUIRES_BONDS&amp;quot; setting.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/207457?ContentTypeID=1</link><pubDate>Mon, 02 Sep 2019 14:42:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:76a45ff6-c005-46d7-91d0-97330ddc1e28</guid><dc:creator>nrbrook</dc:creator><description>&lt;p&gt;According to your collegue&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/25569/nrf_dfu_set_adv_name_init-returns-1/125698#125698"&gt;here&lt;/a&gt;&amp;nbsp;bonding must be required or not supported at all&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/133241?ContentTypeID=1</link><pubDate>Thu, 24 May 2018 12:27:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dc712ffb-1146-49b3-9790-78c6921eadd2</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello Jim,&lt;/p&gt;
&lt;p&gt;Have you done following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Verified that&amp;nbsp;NRF_DFU_BLE_REQUIRES_BONDS is set to the same value in both bootloader and app. I would recommend to set it to &amp;#39;0&amp;#39; unless you&amp;nbsp;need the&amp;nbsp;additional security&lt;/li&gt;
&lt;li&gt;Initialized the SVC interface exactly as in the buttonless template example&lt;/li&gt;
&lt;li&gt;Ensured that the bootloader is present in flash when you debug the application&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/133140?ContentTypeID=1</link><pubDate>Thu, 24 May 2018 07:34:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5346a291-0c41-4bf2-8483-cdfbbdcffb90</guid><dc:creator>Jim</dc:creator><description>&lt;p&gt;Hello! I also encountered the same problem as you. Can you solve this problem now? How was it resolved?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/130550?ContentTypeID=1</link><pubDate>Wed, 02 May 2018 12:49:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5d8dd641-0c41-438c-a302-32bb56bf7c8b</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The buttonless DFU implementation uses Supervisor calls to access bootloader functions from the main application, same interface as is being&amp;nbsp;used between SoftDevice and user applications. In this case, the interface is being used to exchange bonding information with the bootloader where nrf_dfu_set_peer_data_init() is the SV instruction to&amp;nbsp;set up&amp;nbsp;the interface. &amp;nbsp;&lt;/p&gt;
&lt;p&gt;The fact that nrf_dfu_set_peer_data_init() doesn’t return might indicate that the SVC exception is not being forwarded to the bootloader code where the SVC handling for NRF_DFU_SVCI_SET_PEER_DATA is implemented.&amp;nbsp;Did you make sure to call&amp;nbsp;nrf_dfu_svci_vector_table_set()&amp;nbsp;prior to&amp;nbsp;calling nrf_dfu_set_peer_data_init()?&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;More on the SVC interface:&amp;nbsp;&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/lib_svc.html?cp=4_0_0_3_47"&gt;http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/lib_svc.html?cp=4_0_0_3_47&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Integrating buttonless DFU: on start up ble_dfu_buttonless_async_svci_init() returns "NRF_ERROR_SVC_HANDLER_MISSING"</title><link>https://devzone.nordicsemi.com/thread/130410?ContentTypeID=1</link><pubDate>Tue, 01 May 2018 23:05:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f6d9f0fa-8905-460d-b8fa-ce97b03abb44</guid><dc:creator>Eric Wittinger</dc:creator><description>&lt;p&gt;Update on progress.&lt;/p&gt;
&lt;p&gt;discovered the #define&amp;nbsp;NRF_DFU_BLE_REQUIRES_BONDS was set to 0 for the bootloader, and set to 1 for the application.&lt;/p&gt;
&lt;p&gt;Now both are set to 1 now. The problem has changes slightly.&lt;/p&gt;
&lt;p&gt;Th application now seems to hang and never return from&amp;nbsp; &amp;quot;ble_dfu_buttonless_async_svci_init()&amp;quot; specifically from the following call:&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt; &lt;pre class="ui-code" data-mode="text"&gt;// Initialize the asynchronous SuperVisor interface to set peer data in Secure DFU bootloader.
ret_val = nrf_dfu_set_peer_data_init();
VERIFY_SUCCESS(ret_val);&lt;/pre&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;Any ideas on what is causing this. When I search the project to look at &amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;nrf_dfu_set_peer_data_init&lt;/span&gt;&lt;span&gt;()&amp;quot; I can&amp;#39;t find it anyplace...&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;Thanks for the help.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>