<?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>Problem identifying which GPIO is the cause for waking the MCU out of &amp;quot;system off&amp;quot; mode</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/117557/problem-identifying-which-gpio-is-the-cause-for-waking-the-mcu-out-of-system-off-mode</link><description>Hi, 
 In my design, I have a push-button that pulls low when pressed and remains floating otherwise. This button is used to wake the nRF52832 from system off mode. 
 The push-button is connected to P0.11 which is configured as input with an internal pull</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 27 Dec 2024 12:58:39 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/117557/problem-identifying-which-gpio-is-the-cause-for-waking-the-mcu-out-of-system-off-mode" /><item><title>RE: Problem identifying which GPIO is the cause for waking the MCU out of "system off" mode</title><link>https://devzone.nordicsemi.com/thread/516341?ContentTypeID=1</link><pubDate>Fri, 27 Dec 2024 12:58:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:901b6dfb-d14b-461d-8e42-36d8152ebde8</guid><dc:creator>snoopy20</dc:creator><description>&lt;p&gt;I would say so as well. I&amp;#39;ve not had to deal with that errata.&lt;br /&gt;&lt;br /&gt;The wonderful thing about the NRF52 series is there&amp;#39;s always a workaround. Can you live with it for debug mode? Assuming not...&lt;/p&gt;
&lt;p&gt;Both pins are going to pull low but there&amp;#39;ll be a slight timing difference which you can use.&lt;/p&gt;
&lt;p&gt;Complete hardware based solution...&lt;br /&gt;&lt;br /&gt;Wire both pins to GPIOTE.&lt;br /&gt;&lt;br /&gt; Then pass those events to two PPI&amp;#39;s each wired into a separate PPI_GRP. Use the Fork on each PPI to disable the opposite group.&lt;br /&gt;&lt;br /&gt;Now also wire each PPI to the EGU using different event channels. Enable the interrupt.&lt;br /&gt;&lt;br /&gt;Now you&amp;#39;ll get one interrupt and can look at the EGU events to know which pin actually fired.&lt;br /&gt;&lt;br /&gt;Reset the GPIO configs to deal with the errata, clear the PPI events and enable both PPI groups to start over.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem identifying which GPIO is the cause for waking the MCU out of "system off" mode</title><link>https://devzone.nordicsemi.com/thread/516328?ContentTypeID=1</link><pubDate>Fri, 27 Dec 2024 11:51:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f20cb193-fbc6-4c91-be6d-50ef3baa4bcc</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Likely related to this:&lt;br /&gt;&lt;a href="https://docs.nordicsemi.com/bundle/errata_nRF52832_Rev3/page/ERR/nRF52832/Rev3/latest/anomaly_832_81.html#anomaly_832_81"&gt;https://docs.nordicsemi.com/bundle/errata_nRF52832_Rev3/page/ERR/nRF52832/Rev3/latest/anomaly_832_81.html#anomaly_832_81&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem identifying which GPIO is the cause for waking the MCU out of "system off" mode</title><link>https://devzone.nordicsemi.com/thread/516252?ContentTypeID=1</link><pubDate>Wed, 25 Dec 2024 10:06:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:edfa5bf1-fc3c-4583-901e-c3bcb3e9745f</guid><dc:creator>Tsahi Holand</dc:creator><description>&lt;p&gt;Thank you Andrew for your reply.&lt;/p&gt;
&lt;p&gt;I seem to have found the cause of the problem although I have no idea why this happens:&lt;/p&gt;
&lt;p&gt;Please consider the following sequence of events:&lt;/p&gt;
&lt;p&gt;- 2 GPIOs (P0.11 and P0.26) are configured as pullup&lt;/p&gt;
&lt;p&gt;- 2 GPIOs (P0.11 and P0.26) are configured to sense low&lt;/p&gt;
&lt;p&gt;- 2 GPIOs (P0.11 and P0.26) latch is cleared&lt;/p&gt;
&lt;p&gt;- &lt;span style="background-color:#ffffff;padding:0px 2px 0px 2px;"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;white-space:pre;"&gt;&lt;span style="color:#3f7f5f;"&gt;sd_power_system_off&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;() is called&lt;/p&gt;
&lt;p&gt;- After 10 seconds the P0.26 pin is pulled low by an external RTC (latch is triggered)&lt;/p&gt;
&lt;p&gt;- For some reason P0.11 is also pulled low and so latch is also triggered&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/73536.Untitled.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This happens only if the J-link RTT viewer is connected ?!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When the viewer is disconnected the GPIOs behave as expected:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/WhatsApp-Image-2024_2D00_12_2D00_25-at-12.03.18.jpeg" /&gt;&lt;/p&gt;
&lt;p&gt;Maybe you can shed some light?&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Tsahi&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem identifying which GPIO is the cause for waking the MCU out of "system off" mode</title><link>https://devzone.nordicsemi.com/thread/516228?ContentTypeID=1</link><pubDate>Tue, 24 Dec 2024 16:31:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c0b38949-7a99-4de1-950b-e78d599c48e5</guid><dc:creator>snoopy20</dc:creator><description>&lt;p&gt;It&amp;#39;s not floating, it&amp;#39;s a weak high. The weak pullup configuration is reset upon system reset and then it&amp;#39;s floating.&lt;br /&gt;&lt;br /&gt;Ensure you&amp;#39;re disabling the input buffer for all pins you don&amp;#39;t need it on.&lt;br /&gt;&lt;br /&gt;Ensure the NFC pins are disabled if you are intending to use those pins as GPIO. I can&amp;#39;t recall which two pins they are but think they are 12 and 13 (I use 810 which doesn&amp;#39;t have them).&lt;br /&gt;&lt;br /&gt;Ensure you are setting the state of the pin (pull-up high) before enabling sense, not as one statement which is the obvious way to do it, otherwise they may race (sense fires before pull-up has enabled or pulled the pin high if there&amp;#39;s some capacitance on it etc). &lt;br /&gt;&lt;br /&gt;With these actions done then if behaviour still isn&amp;#39;t correct&lt;br /&gt;&lt;br /&gt;Take at the RESETREA to see why the CPU is resetting, if that&amp;#39;s still an issue.&lt;br /&gt;Take a look at the LATCH values in GPIO to see which ones are firing.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Andrew&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>