<?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>Timer doesn&amp;#39;t trigger if pin is held low</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/79016/timer-doesn-t-trigger-if-pin-is-held-low</link><description>I&amp;#39;m wrapping up a job for a client and we are squashing the last few bugs, but I can&amp;#39;t seem to understand one of them. Pin 0.13 of our nRF52840 is pretty simple, just a button to GND, and our configuration is nrf_gpio_cfg_sense_input(BUTTON_PIN, NRF_GPIO_PIN_PULLUP</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 31 Aug 2021 01:39:29 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/79016/timer-doesn-t-trigger-if-pin-is-held-low" /><item><title>RE: Timer doesn't trigger if pin is held low</title><link>https://devzone.nordicsemi.com/thread/327303?ContentTypeID=1</link><pubDate>Tue, 31 Aug 2021 01:39:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9d46af1f-4d7f-4f82-8176-229a9d934c50</guid><dc:creator>SmallerPond</dc:creator><description>&lt;p&gt;Yes, this fixes everything (as I said) but I guess it seems curious to me that &lt;code&gt;nrfx_gpiote_uninit()&lt;/code&gt; doesn&amp;#39;t clear the interrupts on the way out under the assumption that I am uninitializing it because I do not plan on using it at the time.&amp;nbsp; I think the error was in my assumption, but I guess now I am just curious what the assumptions are for the GPIOTE uninitialization.&amp;nbsp; I guess you figure that it&amp;#39;s up the developer to decide if she wants to check for a final interrupt after uninitialization?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Timer doesn't trigger if pin is held low</title><link>https://devzone.nordicsemi.com/thread/327010?ContentTypeID=1</link><pubDate>Fri, 27 Aug 2021 13:19:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0784d3c6-ccab-4221-8a33-cc8900918a4d</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;If an interrupt is active it needs to be cleared. It seems that has been forgotten here?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Timer doesn't trigger if pin is held low</title><link>https://devzone.nordicsemi.com/thread/326871?ContentTypeID=1</link><pubDate>Fri, 27 Aug 2021 03:27:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8f9dcfae-88d3-4a7b-a369-111d223416ae</guid><dc:creator>SmallerPond</dc:creator><description>&lt;p&gt;After re-reading my post, I thought to take a look at the GPIOTE registers to see if there might be a clue there.&amp;nbsp; It seems that before we run our activity, all of the EVENTS_IN[n], EVENTS_PORT, INTENSET, INTENCLR, and CONFIG[n] registers are set to 0.&amp;nbsp; However, after disabling GPIOTE using &lt;code&gt;nrfx_gpiote_uninit()&lt;/code&gt;, I see that &lt;em&gt;&lt;strong&gt;both&lt;/strong&gt;&lt;/em&gt; INTENSET and INTENCLR simultaneously have PORT (bit 31) set to 1.&amp;nbsp; Writing a&amp;nbsp;1 to INTENCLR bit 31 fixes my issue.&amp;nbsp; Not sure if this is intended?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>