<?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>nRF91 UART Sleep Current – AT Host deinit &amp;amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/122637/nrf91-uart-sleep-current-at-host-deinit-pm_device_action_run-for-low-power</link><description>Hi support team, 
 We are using nRF9151 with NCS v2.7.0 for our IoT product. During power optimization, we observed: 
 
 
 Even after disabling UART RX interrupt using uart_irq_rx_disable() , the sleep current does not reduce. 
 
 
 We confirmed CONFIG_PM_DEVICE</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 02 Jul 2025 12:26:52 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/122637/nrf91-uart-sleep-current-at-host-deinit-pm_device_action_run-for-low-power" /><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541167?ContentTypeID=1</link><pubDate>Wed, 02 Jul 2025 12:26:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:399d5abe-4cbb-4ec7-b124-5178fbcc2f10</guid><dc:creator>Akshay</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I managed to get it working by creating an instance of uart0(AT host uart) in my application and disabling it like this.&lt;br /&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;const struct device *at_uart = DEVICE_DT_GET(DT_NODELABEL(uart0));

void disable_at_interface(void){
    uart_irq_rx_disable(at_uart);
    pm_device_action_run(at_uart, PM_DEVICE_ACTION_SUSPEND);
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Thanks for the help.&lt;/p&gt;
&lt;p&gt;regards,&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541165?ContentTypeID=1</link><pubDate>Wed, 02 Jul 2025 12:18:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3c9525e9-16e2-447f-a80f-9421812fa77c</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;CONFIG_SERIAL=y activates all uart instances that have status ok in the devicetree. &lt;br /&gt;You can use &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf9151/page/uarte.html#ariaid-title48"&gt;ENABLE register&lt;/a&gt; to check if UARTE is enabled or disabled.&lt;br /&gt;If you do not need peripheral and you want to put the system in the lowest power state, you can follow &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf9151/page/uarte.html#ariaid-title8"&gt;low power&lt;/a&gt; documentation and first stop and then disable the peripheral. You can also look at this &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/118576/device-powermanagement-and-nrf-uarte"&gt;Device PM and nrfx UARTE&lt;/a&gt; discussion.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541124?ContentTypeID=1</link><pubDate>Wed, 02 Jul 2025 07:58:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9a962a78-c1ad-4a3c-b8df-432a07551d60</guid><dc:creator>Akshay</dc:creator><description>&lt;p&gt;hi,&lt;/p&gt;
&lt;p&gt;I have disabled both uart0 and uart1 in code using rx_irq_disable function and suspended them using power management api. Still it is drawing 630uA. the AT host library must be enabling another instance of uart0. How do I disable the AT host library in runtime?!&lt;/p&gt;
&lt;p&gt;regards,&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541120?ContentTypeID=1</link><pubDate>Wed, 02 Jul 2025 07:45:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f0779061-fada-408c-83e2-cab5a4fc7a5a</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;You can check if you have more than one UARTE instance enabled.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541075?ContentTypeID=1</link><pubDate>Tue, 01 Jul 2025 16:18:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2fafc7ac-598e-49e7-8088-f4778e096359</guid><dc:creator>Akshay</dc:creator><description>&lt;p&gt;Hi Dejan,&lt;/p&gt;
&lt;p&gt;Apparently that didn&amp;#39;t work for me, it&amp;#39;s still drawing 630uA. Only CONFIG_SERIAL=n is bringing down the current to 40uA(as I have SAADC and some other peripherals enabled).&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF91 UART Sleep Current – AT Host deinit &amp; pm_device_action_run() for Low Power</title><link>https://devzone.nordicsemi.com/thread/541067?ContentTypeID=1</link><pubDate>Tue, 01 Jul 2025 15:19:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c3a7c26-3da4-48eb-b551-d534cb6ee63d</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user=""]Does the nRF91 UARTE driver support PM device suspend/resume using &lt;code&gt;pm_device_action_run()&lt;/code&gt; in NCS v2.7.0?[/quote]
&lt;p&gt;Yes, use of pm_device_action_run() is supported by UARTE driver in NCS v2.7.0. &lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>