<?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 / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47554/uart-serial-apis-for-single-character-tx-rx</link><description>I am working on developing a UART driver. I am looking for APIs that support this. I see 3 sets of implementation examples: 
 1. nrf_serial 
 2. nrf_drv_uart 
 3. nrfx_uart 
 Which is the best option for me to choose as my requirement is just 1 character</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 22 May 2019 12:16:19 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47554/uart-serial-apis-for-single-character-tx-rx" /><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188552?ContentTypeID=1</link><pubDate>Wed, 22 May 2019 12:16:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f4c669da-b7f5-48b9-950e-857dd94a215c</guid><dc:creator>Aadishri GS</dc:creator><description>[quote userid="77782" url="~/f/nordic-q-a/47554/uart-serial-apis-for-single-character-tx-rx/188547"]&lt;em&gt;&lt;strong&gt;nrfx_uart_rx&lt;/strong&gt;&lt;/em&gt; must be called to setup a receive operation[/quote]
&lt;p&gt;Once I call this function, the Rx will happen continuously over the backend(like a separate thread running continuously in an infinite loop) when interrupt arrives each time. It is non-blocking as I am providing event_handler in init.&lt;/p&gt;
&lt;p&gt;Am I right?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188547?ContentTypeID=1</link><pubDate>Wed, 22 May 2019 12:02:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3177eec9-1dec-42a1-a063-e590fce70825</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;nrfx_uart_rx&lt;/strong&gt;&lt;/em&gt; must be called to setup a receive operation.&lt;/p&gt;
&lt;p&gt;Otherwise, it looks ok.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;-Amanda&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188469?ContentTypeID=1</link><pubDate>Wed, 22 May 2019 08:44:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e771fd6e-65c7-481a-9f22-7ba7b36af04d</guid><dc:creator>Aadishri GS</dc:creator><description>&lt;p&gt;I am looking for IRQ based implementation without easy DMA.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/20676/nrf_serial-vs-app_uart"&gt;This QA&lt;/a&gt;&amp;nbsp;suggests I use nrf_serial which used nrfx_uart instead of app_uart in UART example.&lt;/p&gt;
&lt;p&gt;Any suggestion on sequence of APIs nrfx_uart APIS that I must use in sequence? Does the below sequence do?&lt;/p&gt;
&lt;p&gt;1. nrfx_uart_init() -&amp;gt; with&amp;nbsp;nrfx_uart_event_handler_t&amp;nbsp; &lt;em&gt;&lt;strong&gt;event_handler&lt;/strong&gt;&lt;/em&gt; for IRQ handling during Rx&lt;/p&gt;
&lt;p&gt;2. nrfx_uart_tx() -&amp;gt; whenever I want to transfer a byte&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;3. Event handler will be called automatically on IRQ for RX&lt;/p&gt;
&lt;p&gt;Should I take care of anything more?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188215?ContentTypeID=1</link><pubDate>Tue, 21 May 2019 11:33:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f3aa169e-b0c7-4abe-b987-184e9552d249</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;There is only a&amp;nbsp;&lt;/span&gt;&lt;em&gt;legacy API layer&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;span&gt;that connects legacy API to&amp;nbsp;NRFX API. Please see&amp;nbsp;&lt;/span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/nrfx_migration_user_guide.html?cp=5_1_2_5"&gt;this page&lt;/a&gt;&lt;span&gt;&amp;nbsp;for more details.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The ble_app_uart example uses the new nRFX&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/group__nrfx__uarte.html?cp=4_0_0_6_9_0_29_0"&gt;UARTE drivers&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;and the UARTE hardware abstraction layer (&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/group__nrf__uarte__hal.html?cp=4_0_0_6_9_0_29_1"&gt;UARTE HAL&lt;/a&gt;).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;This is maybe more clear in the&amp;nbsp;&lt;/span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/migration.html?cp=5_5_1_1_9_4_0#migration_drivers_nrfx"&gt;migration document for SDK 15.0.0&lt;/a&gt;&lt;span&gt;. The drivers should be very similar expect the names, but have been splitted into two separate drivers for EasyDMA and non-EasyDMA.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;-Amanda&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188134?ContentTypeID=1</link><pubDate>Tue, 21 May 2019 08:08:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b15dcd14-a000-4155-bb03-b3d86d439536</guid><dc:creator>Aadishri GS</dc:creator><description>&lt;p&gt;I donot see any example using new APIs. Is it possible to share one?&lt;/p&gt;
&lt;p&gt;Also, I understand the main difference between old/new lib/app/driver is EasyDMA implementation in new. Please correct me if I am wrong&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART / Serial APIs for single character tx/rx</title><link>https://devzone.nordicsemi.com/thread/188090?ContentTypeID=1</link><pubDate>Tue, 21 May 2019 06:48:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:517a51bf-eb85-43c4-b27d-b63625581a6d</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;There are various UART drivers and libraries in the nRF SDK, e.g. app_uart (&amp;quot;old&amp;quot; lib), libuarte (&amp;quot;new&amp;quot; lib), nrf_drv_uart (&amp;quot;old&amp;quot; driver) and nrfx_uarte (&amp;quot;new&amp;quot; driver).&lt;/p&gt;
&lt;p&gt;They provide different abstraction and functionality of using the UART peripheral in an application.&lt;/p&gt;
&lt;p&gt;In general the nrfx* is the low level driver that give you full control over the peripheral, while the app*/lib* library give you more high level api where you don&amp;#39;t need to think about the low level hardware registers.&lt;/p&gt;
&lt;p&gt;Which to use depends on your requirements, if you find that the app*/lib* provide the functionality you need then there is no need to use the nrfx* driver.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I will suggest you take a look at the following examples and start from them&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a title="Software Development Kit" href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/uart_example.html?resultof=%22%55%41%52%54%22%20%22%75%61%72%74%22%20%22%65%78%61%6d%70%6c%65%22%20%22%65%78%61%6d%70%6c%22%20"&gt;nRF5 SDK v15.3.0: UART Example&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a title="Software Development Kit" href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/ble_sdk_app_nus_eval.html?resultof=%22%42%4c%45%22%20%22%62%6c%65%22%20%22%55%41%52%54%22%20%22%75%61%72%74%22%20%22%65%78%61%6d%70%6c%65%22%20%22%65%78%61%6d%70%6c%22%20"&gt;nRF5 SDK v15.3.0: UART/Serial Port Emulation over BLE&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Amanda&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>