<?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>HCI Controller Only Build DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/86862/hci-controller-only-build-dfu</link><description>Is there a process in place for updating a controller only build via the HCI? My current set up is a 9160 as the BLE Host, a 52820 as the BLE controller, MCUs are connected over UART, NCS v1.7.0, custom board. The 52820 has MCUBoot enabled, and I have</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 12 Apr 2022 13:13:07 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/86862/hci-controller-only-build-dfu" /><item><title>RE: HCI Controller Only Build DFU</title><link>https://devzone.nordicsemi.com/thread/363031?ContentTypeID=1</link><pubDate>Tue, 12 Apr 2022 13:13:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5ba34cf1-8bb1-4c27-9247-12a59d88ec62</guid><dc:creator>esisk</dc:creator><description>&lt;p&gt;Exactly what I&amp;#39;m looking for, thanks Sigurd. I&amp;#39;ll work on implementing it this morning and let you know if I encounter any problems&lt;/p&gt;
&lt;p&gt;Edit: Haven&amp;#39;t gotten it to work completely quite yet, but your answer solved the problem that I was asking about so I&amp;#39;ll mark this as resolved&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: HCI Controller Only Build DFU</title><link>https://devzone.nordicsemi.com/thread/363026?ContentTypeID=1</link><pubDate>Tue, 12 Apr 2022 12:59:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:30e2bf4d-c543-49fa-bee1-f10792dfd7a2</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;This has been done for v1.4.0 in this unofficial &lt;a href="https://github.com/plskeggs/sdk-nrf/tree/feature-uart-dfu-v1.4.0"&gt;fork of our github repo&lt;/a&gt;. Here the firmware on the 52840 will be updated in the following manner: cloud--&amp;gt;LTE--&amp;gt;nrf9160--&amp;gt;UART--&amp;gt;52840.&lt;/p&gt;
&lt;p&gt;In order to repurpose the&amp;nbsp;UART instance from HCI UART to DFU UART&amp;nbsp;&lt;span&gt;all you need to do is to change the callback handler. Simply call the following functions:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static struct device *uart_dev;
static struct device *uart_dev2; 
..
..
..
/*
    Setting initial callback handler
*/
uart_dev = device_get_binding(&amp;quot;UART_x&amp;quot;);
uart_irq_callback_set(uart_dev, uart_cb);
uart_irq_rx_enable(uart_dev);
..
..
..
/*
    Changing callback handler
*/
//uart_irq_rx_disable(uart_dev); // I tested without callig this, and it still worked
uart_dev2 = device_get_binding(&amp;quot;UART_x&amp;quot;);
uart_irq_callback_set(uart_dev2, uart_cb2);
uart_irq_rx_enable(uart_dev2);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Does this help you do what you want?&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>