<?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>Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/50411/custom-dfu-bootloader</link><description>Hi, 
 I have a custom board with the nRF52840. 
 Is it possible to customize the DFU to be able to update the firmware through other interfaces than BLE or USB/UART? 
 I have a SD-card connected and would like to check for a flash image on the card and</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 28 May 2020 09:04:58 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/50411/custom-dfu-bootloader" /><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/252113?ContentTypeID=1</link><pubDate>Thu, 28 May 2020 09:04:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3d10a895-d69e-49f4-b72e-5908755fecf8</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/DFU_5F00_flash_5F00_placement.xml"&gt;devzone.nordicsemi.com/.../DFU_5F00_flash_5F00_placement.xml&lt;/a&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/Program_5F00_flash_5F00_placement.xml"&gt;devzone.nordicsemi.com/.../Program_5F00_flash_5F00_placement.xml&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/252112?ContentTypeID=1</link><pubDate>Thu, 28 May 2020 08:56:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:44a838e6-8d84-4b2e-9cc6-538dda03f30c</guid><dc:creator>jbalboa</dc:creator><description>&lt;p&gt;Sorry for being a real pain but, could you share the flash_placement.xml file? I think I have a misconfiguration and I don&amp;#39;t know where...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/252077?ContentTypeID=1</link><pubDate>Thu, 28 May 2020 06:51:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b3ba68dc-7eaa-4597-9829-cff53d1164a1</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;I verified that we have the same linker_section_placement_macros values.&lt;/p&gt;
&lt;p&gt;We differ in linker_section_placements_segments:&lt;/p&gt;
&lt;p&gt;FLASH RX 0x0 0x100000;RAM RWX 0x20000000 0x40000;uicr_bootloader_start_address RX 0x00000FF8 0x4 ;uicr_mbr_params_page RX 0x00000FFC 0x4;mbr_params_page RX 0x000FE000 0x1000;bootloader_settings_page RX 0x000FF000 0x1000&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I Also checked the settings from the DFU_bootloader. Here are my settings:&lt;/p&gt;
&lt;p&gt;FLASH RX 0x0 0x100000;RAM RWX 0x20000000 0x40000;uicr_bootloader_start_address RX 0x00000FF8 0x4;bootloader_settings_page RX 0x000FF000 0x1000;uicr_mbr_params_page RX 0x00000FFC 0x4;mbr_params_page RX 0x000FE000 0x1000&lt;/p&gt;
&lt;p&gt;FLASH_PH_START=0x0;FLASH_PH_SIZE=0x100000;RAM_PH_START=0x20000000;RAM_PH_SIZE=0x40000;FLASH_START=0xf8000;FLASH_SIZE=0x6000;RAM_START=0x20004000;RAM_SIZE=0x3bad0&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251875?ContentTypeID=1</link><pubDate>Wed, 27 May 2020 09:27:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8183c78f-b14c-4d55-ba1a-d300679cc3c1</guid><dc:creator>jbalboa</dc:creator><description>&lt;p&gt;I&amp;#39;m using the same softdevice and SDK as you. I changed the settings according with your specs and when I try to debug the application I get a &amp;#39;Stopped by vector catch&amp;#39; and doesn&amp;#39;t start...&lt;/p&gt;
&lt;p&gt;The linker configuration I&amp;#39;m using is this:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;linker_section_placement_macros=&amp;quot;FLASH_PH_START=0x0;FLASH_PH_SIZE=0x100000;RAM_PH_START=0x20000000;RAM_PH_SIZE=0x40000;FLASH_START=0x26000;FLASH_SIZE=0xda000;RAM_START=0x20002b88;RAM_SIZE=0x3d478&amp;quot;
linker_section_placements_segments=&amp;quot;FLASH RX 0x0 0x100000;RAM RWX 0x20000000 0x40000;uicr_bootloader_start_address RX 0x00000FF8 0x4;uicr_mbr_params_page RX 0x00000FFC 0x4;mbr_params_page RX 0x0007E000 0x1000;bootloader_settings_page RX 0x0007F000 0x1000&amp;quot;&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251845?ContentTypeID=1</link><pubDate>Wed, 27 May 2020 08:18:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dccbacf5-afb0-43b6-bf32-c37c7b5cead9</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;Hi Javier,&lt;/p&gt;
&lt;p&gt;Can you check your linker settings in your project.&lt;/p&gt;
&lt;p&gt;I use a nRF52840 with Softdevice 6.1.1 and SDK 15.3 and has the following settings:&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;FLASH_PH_START=0x0&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;FLASH_PH_SIZE=0x100000&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;RAM_PH_START=0x20000000&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;RAM_PH_SIZE=0x40000&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;FLASH_START=0x26000&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;FLASH_SIZE=0xda000&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;RAM_START=0x20002b88&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;RAM_SIZE=0x3d478&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;&lt;/p&gt;
&lt;p style="margin:0px;text-indent:0px;"&gt;I believe I had the same problem until I found the correct values.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251723?ContentTypeID=1</link><pubDate>Tue, 26 May 2020 12:58:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f19ac75a-0b47-4091-8b41-2191034bdb41</guid><dc:creator>jbalboa</dc:creator><description>&lt;p&gt;Hi Morten,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I used your tool (thanks again) to make a .hex file. Now my application reads that file and write it byte by byte.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Now the&amp;nbsp;NRF_DFU_EVT_DFU_STARTED switch case gets fired but right after, the nrf_dfu_req_handler complaints about the firmware size:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Creating the object with size 0x00001000 would overflow firmware size. Offset is 0x00000000 and firmware size is 0x00000844&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not sure if I set a wrong value for the firmware size or if there is any other problem.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The full log is this:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;info&amp;gt; app: Application version 0
&amp;lt;info&amp;gt; app: Writting
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_STARTED
&amp;lt;error&amp;gt; nrf_dfu_req_handler: Creating the object with size 0x00001000 would overflow firmware size. Offset is 0x00000000 and firmware size is 0x00000844.
&amp;lt;warning&amp;gt; nrf_dfu_serial: DFU request completed with result: 0x8
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_FAILED
&amp;lt;error&amp;gt; nrf_dfu_req_handler: Write request too long
&amp;lt;warning&amp;gt; nrf_dfu_serial: DFU request completed with result: 0x3
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_FAILED
&amp;lt;error&amp;gt; nrf_dfu_req_handler: Write request too long
&amp;lt;warning&amp;gt; nrf_dfu_serial: DFU request completed with result: 0x3
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_FAILED
&amp;lt;error&amp;gt; nrf_dfu_serial_uart: Failed to allocate buffer
&amp;lt;error&amp;gt; nrf_dfu_req_handler: Write request too long
&amp;lt;warning&amp;gt; nrf_dfu_serial: DFU request completed with result: 0x3
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_FAILED
&amp;lt;error&amp;gt; nrf_dfu_serial_uart: Failed to allocate buffer
&amp;lt;error&amp;gt; nrf_dfu_req_handler: Write request too long
&amp;lt;warning&amp;gt; nrf_dfu_serial: DFU request completed with result: 0x3
&amp;lt;info&amp;gt; app: NRF_DFU_EVT_DFU_FAILED&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Am I missing something?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Javier Balboa&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251650?ContentTypeID=1</link><pubDate>Tue, 26 May 2020 09:13:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fcb7c449-47c7-4a64-8f9d-117e1e3b493e</guid><dc:creator>jbalboa</dc:creator><description>&lt;p&gt;OMG thank you so much!!! I&amp;#39;ll give it a try and post the results!!!&lt;/p&gt;
&lt;p&gt;Javier Balboa&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251646?ContentTypeID=1</link><pubDate>Tue, 26 May 2020 09:07:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:603711f0-5ade-4c8f-b4dd-82aa7f735bae</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;Hi Javier,&lt;/p&gt;
&lt;p&gt;I think you are right that you are missing the file conversion.&lt;/p&gt;
&lt;p&gt;I have made a git-hub repository and put a small program to do the DFU conversion if you need that.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/mosgaard2000/Software_XE7"&gt;https://github.com/mosgaard2000/Software_XE7&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I also uploaded a main.cpp file so you can see the code I use for converesion.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/251439?ContentTypeID=1</link><pubDate>Mon, 25 May 2020 09:47:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:656bd909-722e-42d8-beb9-6fc53e698380</guid><dc:creator>jbalboa</dc:creator><description>&lt;p&gt;Hi mosgaard2000, thanks a lot for your code, it helped me to understand the dfu process in uart mode.&lt;/p&gt;
&lt;p&gt;I managed to integrate your code on my application, however, when I start the DFU process, the observer only reaches the NRF_DFU_EVT_TRANSPORT_ACTIVATED switch case&amp;nbsp;and not the NRF_DFU_EVT_DFU_STARTED.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I copied the&amp;nbsp;MAIN_SM_BOOTLOADER part, and I send the upgraded image stored in the sd card byte by byte, but it doesn&amp;#39;t do the upgrade&amp;nbsp;process.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Do you know which could be the error?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You mentioned that you had to&amp;nbsp;make a file converter to insert the DFU package info in the .zip file. Could it be the part I&amp;#39;m missing?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks in advance&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Javier Balboa&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/229537?ContentTypeID=1</link><pubDate>Fri, 17 Jan 2020 08:40:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:78d9d0b2-02a6-465b-8239-1bfce73fd34c</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;Hi Erik,&lt;/p&gt;
&lt;p&gt;1. I use nRF52840 with SDK 15.3 (I believe the background DFU requires 15.3 as a minimum).&lt;/p&gt;
&lt;p&gt;2. There is a lot of log info that is not needed. In the Main function I start with a lot of if...else statements to decide if we start the bootloader - I only uses this to check if my program needs to go to other states (not related to the bootloader). This is not necessary - you can go directly to MAIN_SM_BOOTLOADER state which is were everything regarding the bootloader is handled.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Morten&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/229320?ContentTypeID=1</link><pubDate>Thu, 16 Jan 2020 02:14:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9d3b4d0-cd16-4708-86b4-d9f79f0ce5fa</guid><dc:creator>EGawtry</dc:creator><description>&lt;p&gt;Thanks!&amp;nbsp; I like how you tied it into the serial_dfu code.&amp;nbsp; Two questions,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1.&amp;nbsp;DFU_TRANSPORT_REGISTER doesn&amp;#39;t seem to exist.&amp;nbsp; What rev of nRF are you using?&amp;nbsp; I have 15.2.&lt;/p&gt;
&lt;p&gt;2. I notice that you go into a complicated bootloader setup in main.&amp;nbsp; Is all that necessary for the DFU to work?&lt;/p&gt;
&lt;p&gt;Thanks again,&lt;/p&gt;
&lt;p&gt;-Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/227878?ContentTypeID=1</link><pubDate>Tue, 07 Jan 2020 12:32:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:56c93f76-d3a0-4d29-a847-cbc5ddad4922</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;I have attached my main.c file and the nrf_dfu_serial_uart that I uses.&lt;/p&gt;
&lt;p&gt;I have removed most of the code from my main file, but you can see the state where I do the bootloader.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrf_5F00_dfu_5F00_serial_5F00_uart.zip"&gt;devzone.nordicsemi.com/.../nrf_5F00_dfu_5F00_serial_5F00_uart.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/227706?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2020 14:10:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9f16013e-ebbb-435f-b94f-31670805345c</guid><dc:creator>EGawtry</dc:creator><description>&lt;p&gt;Marten,&lt;/p&gt;
&lt;p&gt;Oh!&amp;nbsp; Please!&amp;nbsp; Anything that helps.&amp;nbsp; I don&amp;#39;t understand why I am having so much trouble with this when I had little problem with everything else (except for a library bug which I fixed), so anything that gives me a light bulb over my head is great.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;-Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/227602?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2020 09:04:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:91557af9-67e1-4c3f-9f85-89c1b459985a</guid><dc:creator>mosgaard2000</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I did get it to work, but doing some reverse engineering.&lt;/p&gt;
&lt;p&gt;I made use of the Background DFU - that are running inside my application. So I have access to all my peripherals - including my SPI interface to my external sd-card running with FatFS.&lt;/p&gt;
&lt;p&gt;In my program I check the sd-card for a specific bootloader file, and if that exists I go to a state where I read the file 1 byte at a time.&lt;/p&gt;
&lt;p&gt;I added the UART bootloader to my code and commented out the interrupt routines and added my own function to call. Then I can pass the byte I read from the file to the UART bootloader.&lt;/p&gt;
&lt;p&gt;In order to get it to work I had to make a file-converter that actually reads the .zip package, that are normally used by the bootloader, and convert it to a new file that also contains the DFU package info (because this is normally handled by the interface program on the PC).&lt;/p&gt;
&lt;p&gt;Hope this helps a little - if you like I will be happy to share my code for the bootloader and the file-converter with you.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;-Morten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/227548?ContentTypeID=1</link><pubDate>Sun, 05 Jan 2020 21:29:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:890f8783-f0d0-4035-94ce-75afb22a25be</guid><dc:creator>EGawtry</dc:creator><description>&lt;p&gt;Hello, did you ever get it to work?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I have a similar problem for my pca10040/S132 (Laird BL652), and am getting really confused by the cryptic barely documented DFU interface.&amp;nbsp; I noticed that one example uses pstorage, is that the way to bypass all that?&amp;nbsp; I suddenly have&amp;nbsp;clients breathing down my neck wanting a firmware update to allow SD-card firmware updates before end customer distribution.&amp;nbsp; ;-)&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you,&lt;/p&gt;
&lt;p&gt;-Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Custom DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/201232?ContentTypeID=1</link><pubDate>Tue, 30 Jul 2019 12:02:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7221dc0c-8979-4665-8691-d073a70e9b4a</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Morten,&lt;/p&gt;
&lt;p&gt;the Secure Bootloader in our nRF5 SDK is designed to be transport agnostic. so it should be able to create a custom transport layer, e.g. SPI, that interfaces with the bootloader.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I would recommend taking a look at the UART transport layer implementation in the&amp;nbsp;nRF5_SDK_15.3.0_59ac345\examples\dfu\secure_bootloader\pca10056_uart example. Specifically, &lt;span&gt;nrf_dfu_serial_uart.c and&amp;nbsp;nrf_dfu_serial.c in the&amp;nbsp;&lt;/span&gt;nRF5_SDK_15.3.0_59ac345\components\libraries\bootloader\serial_dfu folder.&lt;/p&gt;
&lt;p&gt;They show how the&amp;nbsp;DFU_TRANSPORT_REGISTER macro to register the init and close functions used further up in the bootloader&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;DFU_TRANSPORT_REGISTER(nrf_dfu_transport_t const uart_dfu_transport) =
{
    .init_func  = uart_dfu_transport_init,
    .close_func = uart_dfu_transport_close,
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>