<?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>DFU: Require bond to write to Buttonless DFU Service, but allow unbonded updates in bootloader</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/40492/dfu-require-bond-to-write-to-buttonless-dfu-service-but-allow-unbonded-updates-in-bootloader</link><description>Hello. 
 I&amp;#39;d like to set up my Secure DFU bootloader so that bonding is required to activate the bootloader from a peer device (phone). But at the same time I&amp;#39;d like to make sure that there is a way to update the firmware even if the bond information</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 19 Nov 2018 09:52:06 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/40492/dfu-require-bond-to-write-to-buttonless-dfu-service-but-allow-unbonded-updates-in-bootloader" /><item><title>RE: DFU: Require bond to write to Buttonless DFU Service, but allow unbonded updates in bootloader</title><link>https://devzone.nordicsemi.com/thread/157898?ContentTypeID=1</link><pubDate>Mon, 19 Nov 2018 09:52:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0f0c5a2e-00e7-484b-a25a-6c72d9121ac9</guid><dc:creator>mrono</dc:creator><description>&lt;p&gt;Thank you again.&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t really want to make major modifications to the bootloader. I was just wondering if there was a way to get the functionality I want without any modifications to SDK sources.&lt;/p&gt;
&lt;p&gt;Ideally I would like to have the security offered by the bond sharing combined with the &amp;quot;backup mode&amp;quot; of non-bonded DFU if the bootloader was activated by a button press. Perhaps this use case is something Nordic could consider for a future SDK version?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU: Require bond to write to Buttonless DFU Service, but allow unbonded updates in bootloader</title><link>https://devzone.nordicsemi.com/thread/157891?ContentTypeID=1</link><pubDate>Mon, 19 Nov 2018 09:17:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:08bea5eb-df5f-4f2c-838a-1e40df468d3e</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Yes, defining&amp;nbsp;&lt;span&gt;NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS will result in&amp;nbsp;&amp;nbsp;ble_dfu_bonded.c&amp;nbsp;being used. However, this .c file calls a couple&amp;nbsp; ASVCI (Asynchronous Supervisor interface ) functions that are only compiled into the bootloader when the&amp;nbsp;_REQUIRES_BONDS&amp;nbsp;define is set. Hence, you will need to modify the bootloader to perform unirected advertising instead of directed advertisement with the shared bond information if you want to go this route.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU: Require bond to write to Buttonless DFU Service, but allow unbonded updates in bootloader</title><link>https://devzone.nordicsemi.com/thread/157865?ContentTypeID=1</link><pubDate>Mon, 19 Nov 2018 07:37:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0717d218-2de2-4e4e-85e6-62cb5641e5ba</guid><dc:creator>mrono</dc:creator><description>&lt;p&gt;Thank you.&lt;/p&gt;
&lt;p&gt;Bond sharing would be nice, but not strictly required in my case. So I guess editing ble_dfu_unbonded is the way to go. Or actually I&amp;#39;ll make a private copy of it.&lt;/p&gt;
&lt;p&gt;Just to confirm my original question: If I would define&amp;nbsp;&lt;span&gt;NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS, then ble_dfu_bonded.c would be used. Security parameters would then be set correctly without modifications. Would this work with a bootloader that doesn&amp;#39;t require bonds?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU: Require bond to write to Buttonless DFU Service, but allow unbonded updates in bootloader</title><link>https://devzone.nordicsemi.com/thread/157781?ContentTypeID=1</link><pubDate>Fri, 16 Nov 2018 15:45:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5c37799e-0772-4bcb-91a4-52a08050776b</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Markuu,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you want only bonded devices to be able to write to the DFU Service characteristics, but still allow unbonded devices to perform DFU once the device is in bootlaoder mode, then the easiest solution is as you suggested, modify the .&lt;span&gt;cccd_write_access and .write_access to&amp;nbsp;SEC_JUST_WORKS&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;dd_char_params.cccd_write_access = SEC_JUST_WORKS;&lt;br /&gt; add_char_params.write_access = SEC_JUST_WORKS;&lt;br /&gt; add_char_params.read_access = SEC_OPEN;&lt;/p&gt;
&lt;p&gt;parameters in&amp;nbsp;ble_dfu_buttonless_char_add in ble_dfu_unbonded.c&lt;/p&gt;
&lt;p&gt;This is one of the things that is done when defining&amp;nbsp;&lt;span&gt;NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS = 1 ( using ble_dfu_bonded.c and not _unbonded.c). However, if you would like to have the bond sharing feature, some more modifications are needed on the bootloader side.&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;Bjørn&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>