<?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>UART communication with external device on nRF9160dk</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/119534/uart-communication-with-external-device-on-nrf9160dk</link><description>Hi, 
 
 I&amp;#39;ve been trying to set up UART communication with external device using uart3 instance and have so far failed. 
 The scenario requires sending 5 bytes to the device, receiving 1 byte confirmation, then another 5 byte request and receiving indeterminate</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 07 Mar 2025 07:43:22 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/119534/uart-communication-with-external-device-on-nrf9160dk" /><item><title>RE: UART communication with external device on nRF9160dk</title><link>https://devzone.nordicsemi.com/thread/526289?ContentTypeID=1</link><pubDate>Fri, 07 Mar 2025 07:43:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bad0770a-aca7-4dd6-905f-f8df970220dd</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;Thanks for coming back to us with a full report V&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART communication with external device on nRF9160dk</title><link>https://devzone.nordicsemi.com/thread/526263?ContentTypeID=1</link><pubDate>Thu, 06 Mar 2025 21:05:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:77bac6b9-653a-42b2-9c8b-8a435dbcb276</guid><dc:creator>verigoify</dc:creator><description>&lt;p&gt;Hi Susheel,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks for getting back to me.&lt;/p&gt;
&lt;p&gt;Your suggested solution from &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/102094/ncs---unreliable-uart_rx_rdy-event-using-uart-1mbaud/437818" rel="noopener noreferrer" target="_blank"&gt;this thread&lt;/a&gt; has solved my issue. Many thanks!&lt;/p&gt;
&lt;p&gt;For future reference, adding:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_UART_0_NRF_HW_ASYNC=y
CONFIG_UART_0_NRF_HW_ASYNC_TIMER=1&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;to prj.conf is the exact solution to my problem. With this addition, observability printout is:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;events generated on tmo = 100 
total_rcved_len = 73 
uart_rx_rdy_evt = 73 
uart_rx_buf_req_evt = 2 
uart_tx_done_evt = 2
uart_tx_aborted_evt = 0 
uart_rx_stopped_evt = 0 
--uart_rx_stopped_overrun = 0 
--uart_rx_stopped_parity = 0 
--uart_rx_stopped_framing = 0 
--uart_rx_stopped_break_condition = 0 
--uart_rx_stopped_collision = 0 
--uart_rx_stopped_noise = 0 
--uart_rx_stopped_other = 0 
uart_rx_disabled_evt = 1&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;In the spirit of full disclosure, I&amp;#39;ve swapped logger backend to uart3 and used uart0 for communication, like this:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;/{
    chosen {
        zephyr,console = &amp;amp;uart3;
        zephyr,shell-uart = &amp;amp;uart3;
    };
};
&amp;amp;uart0 {
	current-speed = &amp;lt;2400&amp;gt;;
    parity = &amp;quot;even&amp;quot;;
    stop-bits = &amp;quot;1&amp;quot;;
    data-bits = &amp;lt;8&amp;gt;;
};

&amp;amp;uart0_sleep {
    group1 {
        psels = &amp;lt;NRF_PSEL(UART_TX, 0, 13)&amp;gt;,
                &amp;lt;NRF_PSEL(UART_RX, 0, 10)&amp;gt;,
                &amp;lt;NRF_PSEL(UART_RTS, 0, 20)&amp;gt;,
                &amp;lt;NRF_PSEL(UART_CTS, 0, 21)&amp;gt;;
    };
};

&amp;amp;uart0_default {
    group1 {
        psels = &amp;lt;NRF_PSEL(UART_TX, 0, 13)&amp;gt;, &amp;lt;NRF_PSEL(UART_RX, 0, 10)&amp;gt;;
    };
};

&amp;amp;uart3 {
	status = &amp;quot;okay&amp;quot;;
	current-speed = &amp;lt;115200&amp;gt;;
    parity = &amp;quot;even&amp;quot;;
    stop-bits = &amp;quot;1&amp;quot;;
    data-bits = &amp;lt;8&amp;gt;;
	pinctrl-0 = &amp;lt;&amp;amp;uart3_default&amp;gt;;
	pinctrl-names = &amp;quot;default&amp;quot;;
};

&amp;amp;pinctrl {

	uart3_default: uart3_default {

        group2 {
            psels = &amp;lt;NRF_PSEL(UART_TX, 0, 18)&amp;gt;, &amp;lt;NRF_PSEL(UART_RX, 0, 19)&amp;gt;;
        };
	};
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know if that had anything to do with solving the issue, but there you have it.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;V&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART communication with external device on nRF9160dk</title><link>https://devzone.nordicsemi.com/thread/526115?ContentTypeID=1</link><pubDate>Thu, 06 Mar 2025 09:53:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:178a76da-8931-4c10-8f7e-8fc02383158d</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;I do not see anything wrong with your prj.conf and code. Maybe try enabling the hardware flow control as mentioned in &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/115312/nus-example-uart-rx-can-t-receive-all-data/505817"&gt;this&amp;nbsp;thread&lt;/a&gt;.&lt;br /&gt;My colleague in &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/102094/ncs---unreliable-uart_rx_rdy-event-using-uart-1mbaud/437818"&gt;this thread&lt;/a&gt;, suggested to enable hw_async mode which seemed to have helped. I do not see anything else apart from these two to help us at this point. If this have not helped, then maybe I need to get more context and code from your end to understand the issue.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>