<?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>How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/90669/how-to-include-buttonless-dfu-in-existing-ses-project</link><description>Hello, 
 I would like to add buttonless DFU to my project. 
 This is so that in the field our mobile application will be able to push new FW to the device upon connection. 
 I am using a BMD-350 which is based on the nRF52832. 
 Using NRF 15.3.0 and Segger</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 05 Aug 2022 13:18:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/90669/how-to-include-buttonless-dfu-in-existing-ses-project" /><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380399?ContentTypeID=1</link><pubDate>Fri, 05 Aug 2022 13:18:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:20d89171-66a7-4224-85cc-e5c0cc6e18de</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;That makes sense.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;ble_dfu_buttonless_init() adds the buttonless DFU service, increasing the SoftDevice memory usage. If the application start address is too low or the SoftDevice configuration is not appropriate, you will get this error (see &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/54269/nrf-52832---nrf_error_no_mem"&gt;this thread&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;(As a side note in case other come across this thread, NRF_ERROR_NO_MEM is also returned from&amp;nbsp;ble_dfu_buttonless_init() when there is no bootloader present. And in that case you need to program the bootloader in order to avoid this.)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380391?ContentTypeID=1</link><pubDate>Fri, 05 Aug 2022 12:56:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43c496b5-01e3-4dee-8af9-f096a68e735c</guid><dc:creator>Caleb Dueck</dc:creator><description>&lt;p&gt;That is an important detail I should have mentioned.&lt;br /&gt;err_code = ble_dfu_buttonless_init(&amp;amp;dfus_init);&lt;br /&gt;I&amp;#39;m calling this which I added to my services_init() function which is called early in main&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This was added as per the instructions in:&amp;nbsp;&lt;a href="https://novelbits.io/nrf52-ota-dfu-ble-part-4/"&gt;novelbits.io/.../&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380274?ContentTypeID=1</link><pubDate>Fri, 05 Aug 2022 07:21:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4f0dff76-7a63-4066-a54c-df1f613a6755</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;What does your code look like around line 3551 in your main.c? Most importantly, which function call returned&amp;nbsp;NRF_ERROR_NO_MEM?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380229?ContentTypeID=1</link><pubDate>Thu, 04 Aug 2022 22:37:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:03706e7d-8393-4b71-89ae-5ab24a125dd6</guid><dc:creator>Tim</dc:creator><description>&lt;p&gt;Unfortunately, I don&amp;#39;t have enough experience (or time :-) to speculate about your error. One suggestion would be to try integrating buttonless DFU into an SDK BLE example like&amp;nbsp;ble_app_uart. If you succeed, that might point you to something specific about your application.&lt;/p&gt;
&lt;p&gt;Good luck!&lt;/p&gt;
&lt;p&gt;Tim&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380210?ContentTypeID=1</link><pubDate>Thu, 04 Aug 2022 16:41:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c8b87bc-9e0d-4b3e-9199-b0c6cc74dc0c</guid><dc:creator>Caleb Dueck</dc:creator><description>&lt;p&gt;Hello, that blog has been great! Thank you for sharing. I&amp;#39;ve successfully followed all his steps, using our code instead of nrf_blinky.&lt;br /&gt;Unfortunately, after I flash the device I receive this error:&amp;nbsp;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;00&amp;gt; &amp;lt;error&amp;gt; app: ERROR 4 [NRF_ERROR_NO_MEM] at C:\Users\Caleb(CDUE)\repos\lancelot_p_fw\app\main.c:3551
00&amp;gt; PC at: 0x0003B77D&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Reading this &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/85223/merging-examples-with-dfu-cause-nrf_error_no_mem"&gt;post&lt;/a&gt;&amp;nbsp;suggests the issues is that I have not included a bootloader. However, I have indeed included&amp;nbsp;secure_bootloader_ble_s132_pca10040.hex when merging the hex files.&lt;br /&gt;&lt;br /&gt;Please let me know if you have a solution for this issue.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to include buttonless DFU in existing SES Project</title><link>https://devzone.nordicsemi.com/thread/380017?ContentTypeID=1</link><pubDate>Thu, 04 Aug 2022 04:18:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ce484bc4-9cc9-4ecb-960a-14769f46d818</guid><dc:creator>Tim</dc:creator><description>&lt;p&gt;I found this blog very helpful:&lt;/p&gt;
&lt;p&gt;&lt;a id="" href="https://novelbits.io/ota-device-firmware-update-part-1/"&gt;https://novelbits.io/ota-device-firmware-update-part-1/&lt;/a&gt;&lt;br /&gt;&lt;a id="" href="https://novelbits.io/ota-device-firmware-update-part-2/"&gt;https://novelbits.io/ota-device-firmware-update-part-2/&lt;/a&gt;&lt;br /&gt;&lt;a id="" href="https://novelbits.io/ota-device-firmware-update-part-3"&gt;https://novelbits.io/ota-device-firmware-update-part-3&lt;/a&gt;/&lt;br /&gt;&lt;a id="" href="https://novelbits.io/nrf52-ota-dfu-ble-part-4/"&gt;https://novelbits.io/nrf52-ota-dfu-ble-part-4/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I implemented using the same SDK (15.3) and chip (nRF52832).&lt;/p&gt;
&lt;p&gt;For our iOS app that users use to push new FW to BLE devices, I used Nordic&amp;#39;s iOS DFU Library:&lt;/p&gt;
&lt;p&gt;&lt;a id="" href="https://github.com/NordicSemiconductor/IOS-DFU-Library"&gt;https://github.com/NordicSemiconductor/IOS-DFU-Library&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hope it helps.&lt;/p&gt;
&lt;p&gt;Tim&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>