<?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>How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/126022/how-to-implement-gpiote-timer-ppi-with-nrf54l15-for-pulse-width-capture-and-rf-data-pin-input</link><description>Hello, I am struggling to find resources or up-to-date information on how to implement the above with NRF54DK (specifically Ezurio BL54L15 DK). Reference material I have found seems to have become outdated over time due to new SDK versions, etc. Similarly</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 11 Dec 2025 16:32:50 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/126022/how-to-implement-gpiote-timer-ppi-with-nrf54l15-for-pulse-width-capture-and-rf-data-pin-input" /><item><title>RE: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556795?ContentTypeID=1</link><pubDate>Thu, 11 Dec 2025 16:32:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:81292fe2-83da-4319-a569-a51f81135098</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="MR93"]&lt;p&gt;I ported this code to my own project (like for like) to see if it fared better measuring edges from the RF IC. I get the same bad0000 status, and this time the timer is constantly returning -1 for the us value (because the actual cc timer value is returning 0)&lt;/p&gt;
&lt;p&gt;It does seem that the quicker the pulse, it&amp;#39;s not working correctly.&lt;/p&gt;[/quote]
&lt;p&gt;bad0000 is NRFX_SUCCESS, meaning that everything went as expected.&lt;/p&gt;
&lt;p&gt;Can you please try the&amp;nbsp;.zip that I&amp;nbsp;shared with you?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Try setting a pulse of 5 us, then 100 ms, etc, and see if this is detected as expected.&lt;/p&gt;
[quote user="MR93"]Update: I was tinkering further and manually calling nrfx_timer_capture seems to capture a timestamp, but it&amp;#39;s not happening automatically it seems. At least, not as these speeds[/quote]
&lt;p&gt;It is happening automatically in the code that I shared with you, but the CPU needs to fetch the register content in the ISR handler. Please note that the sample assumes active low triggering.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556754?ContentTypeID=1</link><pubDate>Thu, 11 Dec 2025 06:40:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:32cb0bac-c3db-4e36-8a8f-d21ea0327d6a</guid><dc:creator>MR93</dc:creator><description>&lt;p&gt;Thanks again for the code sample. I ran it on my dev kit and it built and uploaded fine. When initiatlising the timer, it shows the status &amp;quot;bad0000&amp;quot; but continues to work when toggling the buttons. Sometimes the match seems to be incorrect and it shows -1 for us, but most times it&amp;#39;s working as intended.&lt;br /&gt;&lt;br /&gt;I ported this code to my own project (like for like) to see if it fared better measuring edges from the RF IC. I get the same bad0000 status, and this time the timer is constantly returning -1 for the us value (because the actual cc timer value is returning 0)&lt;/p&gt;
&lt;p&gt;It does seem that the quicker the pulse, it&amp;#39;s not working correctly.&lt;/p&gt;
&lt;p&gt;I had totally forgotten, but I had to cut the solder jumpers to disable the external crystal to disable it for another (previous) project. So I&amp;#39;m using the internal crystal for this project, and have added the following to the prj.conf&lt;br /&gt;&lt;br /&gt;```&lt;br /&gt;&lt;span&gt;CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;y&lt;br /&gt;&lt;/span&gt;&lt;span&gt;CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;n&lt;br /&gt;&lt;/span&gt;&lt;span&gt;CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC_CALIBRATION&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;y&lt;br /&gt;&lt;/span&gt;&lt;span&gt;CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;```&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;I didn&amp;#39;t think this would have any affect, but maybe it does? I&amp;#39;m not sure. It&amp;#39;s weird that I&amp;#39;m getting 0 for all the pulse width values. Again, the pin is strobbing&amp;nbsp;various amounts between 5us to 500us on between each edge&lt;br /&gt;&lt;br /&gt;Update: I was tinkering further and manually calling nrfx_timer_capture seems to capture a timestamp, but it&amp;#39;s not happening automatically it seems. At least, not as these speeds&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556700?ContentTypeID=1</link><pubDate>Wed, 10 Dec 2025 14:29:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:abc9386a-7a11-4d34-afec-75aa835c0f73</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could you try this?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/timed_5F00_signals_5F00_nrf54l_5F00_ncs3.1.0.zip"&gt;devzone.nordicsemi.com/.../timed_5F00_signals_5F00_nrf54l_5F00_ncs3.1.0.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="MR93"]However, the numbers were wrong when cross-checked with my logic analyser. It&amp;#39;s getting microsecond values, but they&amp;#39;re incorrect, so I must be doing something wrong.&lt;br /&gt;[/quote]
&lt;p&gt;How incorrect are they? Can you share a couple of examples?&lt;/p&gt;
&lt;p&gt;Are they always off?&lt;/p&gt;
[quote user="MR93"]Sometimes this value can be as small as 5us. I&amp;#39;m wondering if this is too accurate to&amp;nbsp;be possible (however, I was able to achieve this using ESP32 S3 and RMT before porting the&amp;nbsp;project to NRF54).[/quote]
&lt;p&gt;DPPI + GPIOTE should be able to successfully detect this, but please note that if you have many pulses in a row in the low micro-second range, your CPU might be busy doing something else.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556626?ContentTypeID=1</link><pubDate>Wed, 10 Dec 2025 04:39:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c060befa-eb38-4433-9c24-3578deb9cfd9</guid><dc:creator>MR93</dc:creator><description>&lt;p&gt;Thank you for your reply! It has been very helpful. The suggestion in these topics of using two channels for rising/falling events - is it possible to use `NRFX_GPIOTE_TRIGGER_TOGGLE` instead to have one event handler? I&amp;#39;m looking to capture the duration of each high and low, as opposed to just high, so I don&amp;#39;t need to discern between rising/falling, but instead just capture the time between each.&lt;br /&gt;&lt;br /&gt;I got the timer working, and it&amp;#39;s now incrementing correctly, but the calculations are still inaccurate. I am using a 1MHz resolution, and given that (assuming) 1 tick = 1us, I could calculate the&amp;nbsp;microseconds between each edge. &lt;br /&gt;&lt;br /&gt;However, the numbers were wrong when cross-checked with my logic analyser. It&amp;#39;s getting microsecond values, but they&amp;#39;re incorrect, so I must be doing something wrong.&lt;br /&gt;&lt;br /&gt;At this moment in time, I&amp;#39;m trying to get a timer capture each time the pin changes and do math to get how long it remained high/low for before it changed again (time between each edge). Sometimes this value can be as small as 5us. I&amp;#39;m wondering if this is too accurate to&amp;nbsp;be possible (however, I was able to achieve this using ESP32 S3 and RMT before porting the&amp;nbsp;project to NRF54).&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: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556538?ContentTypeID=1</link><pubDate>Tue, 09 Dec 2025 09:39:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2413c4bc-0ac2-4ab6-80b8-eb591b0744fb</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here is a similar setup shared here, for the nrf53/91:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/119237/efficient-nrfx-based-quadrature-decoder-for-high-speed-encoders-on-nrf5340/524611"&gt;RE: Efficient nrfx-based Quadrature Decoder for High-Speed Encoders on NRF5340&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Which is based on this thread:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/104771/best-way-to-measure-time-between-falling-rising-edges-ncs-zephyr-nrf52840"&gt;Best way to measure time between falling/rising edges (NCS, Zephyr, NRF52840)&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You should setup two GPIOTE IN channels with falling and rising edge detection, as per the description in the above thread.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="MR93"]I&amp;#39;m also confused about initializing both a Timer and the GPIOTE instances - its seems Zephyr/NRF auto-initialises based on the Devicetree when the prj.conf file has `CONFIG_GPIO=y`. Setting `CONFIG_GPIO=n` to allow me to manually initialise doesn&amp;#39;t work, because then I can&amp;#39;t get the project to build - it throws errors for the timer and GPIOTE instances not existing at all. Which confuses me, as other examples I&amp;#39;ve found have `CONFIG_GPIO=n` set but still seem to be able to build without custom .dtsi files or similar. Bit over my head here, all quite confusing.[/quote]
&lt;p&gt;You can void the return, or guard it with a &amp;quot;#if defined(CONFIG_GPIO)&amp;quot;, to avoid this error being returned.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Per now, your timer is in counter mode:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;.mode = NRF_TIMER_TASK_COUNT,&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;You&amp;nbsp;highly likely want it in&amp;nbsp;NRF_TIMER_MODE_TIMER if you want to read out the amount of ticks/CC between press and release.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to implement GPIOTE + Timer + PPI with NRF54L15 for pulse width capture and RF data pin input?</title><link>https://devzone.nordicsemi.com/thread/556512?ContentTypeID=1</link><pubDate>Tue, 09 Dec 2025 04:10:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:858f0601-a2ff-47c7-9c16-5cc8102ddf87</guid><dc:creator>MR93</dc:creator><description>&lt;p&gt;Ok, to update this thread, I have attached the code I&amp;#39;ve been working with, which is as far as I&amp;#39;ve gotten figuring this out. As an example (to get an understanding of this) I&amp;#39;ve been trying to measure the duration of a button press on the Ezurio BL54L15DK. It&amp;#39;s triggering the event correctly but the times seem wrong - the time when button is released is often less than when the button is pressed. So I&amp;#39;m quite confused.&lt;br /&gt;&lt;br /&gt;I&amp;#39;m also confused about initializing both a Timer and the GPIOTE instances - its seems Zephyr/NRF auto-initialises based on the Devicetree when the prj.conf file has `CONFIG_GPIO=y`. Setting `CONFIG_GPIO=n` to allow me to manually initialise doesn&amp;#39;t work, because then I can&amp;#39;t get the project to build - it throws errors for the timer and GPIOTE instances not existing at all. Which confuses me, as other examples I&amp;#39;ve found have `CONFIG_GPIO=n` set but still seem to be able to build without custom .dtsi files or similar. Bit over my head here, all quite confusing.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#include &amp;lt;zephyr/kernel.h&amp;gt;
#include &amp;lt;zephyr/device.h&amp;gt;
#include &amp;lt;zephyr/drivers/gpio.h&amp;gt;
#include &amp;lt;zephyr/logging/log.h&amp;gt;
#include &amp;lt;nrfx_gpiote.h&amp;gt;
#include &amp;lt;nrfx_timer.h&amp;gt;
#include &amp;lt;helpers/nrfx_gppi.h&amp;gt;
#include &amp;lt;hal/nrf_gpiote.h&amp;gt;
#include &amp;lt;hal/nrf_timer.h&amp;gt;
#include &amp;lt;hal/nrf_gpio.h&amp;gt;

LOG_MODULE_REGISTER(nrfx_example, LOG_LEVEL_INF);

#define INPUT_PIN	NRF_DT_GPIOS_TO_PSEL(DT_ALIAS(sw0), gpios)
  
static const nrfx_gpiote_t gpiote = NRFX_GPIOTE_INSTANCE(20);
static const nrfx_timer_t m_timer = NRFX_TIMER_INSTANCE(00);
static uint32_t state = 0;

void timer_handler(nrf_timer_event_t event_type, void * p_context) {
  // Timer capture events do not generate interrupts when DPPI triggered.
  // But you can put debug here if needed.
}

static void gpiote_evt_handler(nrfx_gpiote_pin_t pin, nrfx_gpiote_trigger_t trigger, void *context) {
  const uint32_t timer1 = NRF_TIMER00-&amp;gt;CC[0];
  if (state == 1) {
    state = 0;
    LOG_INF(&amp;quot;Pressed. Times %u base: %p&amp;quot;, timer1, m_timer.p_reg);
  } else {
    state = 1;
    LOG_INF(&amp;quot;Released. Times %u base: %p&amp;quot;, timer1, m_timer.p_reg);
  }
}

void pulse_width_init(void) {
  nrfx_err_t err;
  uint8_t in_channel;
  uint8_t ppi_channel;

  // ---------------------------------------
  // 1. INIT TIMER
  // ---------------------------------------
  nrfx_timer_config_t timer_cfg = {
    .frequency = NRF_TIMER_FREQ_1MHz,
    .mode = NRF_TIMER_TASK_COUNT,
    .bit_width = NRF_TIMER_BIT_WIDTH_32,
    .interrupt_priority = NRFX_TIMER_DEFAULT_CONFIG_IRQ_PRIORITY,
    .p_context = NULL
  };

  nrfx_timer_enable(&amp;amp;m_timer);
  if ( ! nrfx_timer_is_enabled(&amp;amp;m_timer)) {
    LOG_ERR(&amp;quot;Timer00 is not enabled&amp;quot;);
    return;
  }

  // ---------------------------------------
  // 2. INIT GPIOTE
  // ---------------------------------------
  // Init not required as is handled by SDK
  err = nrfx_gpiote_channel_alloc(&amp;amp;gpiote, &amp;amp;in_channel);
  if (err != NRFX_SUCCESS) {
    LOG_ERR(&amp;quot;Channel alloc fail: %x&amp;quot;, err);
    return;
  }

  // Edge detection on both edges
	static const nrf_gpio_pin_pull_t pull_config = NRF_GPIO_PIN_PULLUP;
  nrfx_gpiote_trigger_config_t trigger_config = {
    .trigger = NRFX_GPIOTE_TRIGGER_TOGGLE,
    .p_in_channel = &amp;amp;in_channel
  };
  static const nrfx_gpiote_handler_config_t handler_config = {
    .handler = gpiote_evt_handler
  };
  nrfx_gpiote_input_pin_config_t gpiote_cfg = {
		.p_pull_config = &amp;amp;pull_config,
    .p_trigger_config = &amp;amp;trigger_config,
    .p_handler_config = &amp;amp;handler_config
  };

  err = nrfx_gpiote_input_configure(&amp;amp;gpiote, INPUT_PIN, &amp;amp;gpiote_cfg);
  if (err != NRFX_SUCCESS) {
    LOG_ERR(&amp;quot;GPIOTE configure fail: %x&amp;quot;, err);
    return;
  }

  nrfx_gpiote_trigger_enable(&amp;amp;gpiote, INPUT_PIN, true);

  // ---------------------------------------
  // 3. ALLOCATE DPPI channel
  // ---------------------------------------
  err = nrfx_gppi_channel_alloc(&amp;amp;ppi_channel);
  if (err != NRFX_SUCCESS) {
    LOG_ERR(&amp;quot;nrfx_gppi_channel_alloc fail: %x&amp;quot;, err);
    return;
  }

  // ---------------------------------------
  // 4. Connect GPIOTE.event → TIMER.capture task
  // ---------------------------------------

  // Bind both ends on DPPI
  nrfx_gppi_channel_endpoints_setup(ppi_channel, 
    nrfx_gpiote_in_event_address_get(&amp;amp;gpiote, INPUT_PIN),
    nrfx_timer_capture_task_address_get(&amp;amp;m_timer, 0)
  );

  // Enable channel
  nrfx_gppi_channels_enable(BIT(ppi_channel));

  LOG_INF(&amp;quot;Pulse measurement started. Watching pin %d&amp;quot;, INPUT_PIN);
}

int main(void) {
  pulse_width_init();

  while (1) {
    k_msleep(100);
  }

  return 0;
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;Here is sample logs from the code attached, showing button presses and timings look incorrect (not the datestamps - those are perfect).&lt;br /&gt;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;*** Booting nRF Connect SDK v3.1.1-e2a97fe2578a ***
*** Using Zephyr OS v4.1.99-ff8f0c579eeb ***
[00:00:00.001,209] &amp;lt;inf&amp;gt; nrfx_example: Pulse measurement started. Watching pin 45
[00:00:00.001,325] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 1176 base: 0x50055000
[00:00:01.180,969] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 3521 base: 0x50055000
[00:00:01.320,792] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 24419 base: 0x50055000
[00:00:02.578,216] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 7438 base: 0x50055000
[00:00:02.697,775] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 60640 base: 0x50055000
[00:00:03.830,894] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 17061 base: 0x50055000
[00:00:03.938,171] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 35699 base: 0x50055000
[00:00:06.055,178] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 48404 base: 0x50055000
[00:00:06.206,043] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 27602 base: 0x50055000
[00:00:07.296,722] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 31350 base: 0x50055000
[00:00:07.424,409] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 18876 base: 0x50055000
[00:00:08.544,403] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 61163 base: 0x50055000
[00:00:08.659,503] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 12448 base: 0x50055000
[00:00:09.634,200] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 58274 base: 0x50055000
[00:00:09.756,236] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 174 base: 0x50055000
[00:00:10.729,384] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 33053 base: 0x50055000
[00:00:10.842,590] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 34340 base: 0x50055000
[00:00:11.944,797] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 1296 base: 0x50055000
[00:00:12.035,288] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 14991 base: 0x50055000
[00:00:13.360,826] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 24773 base: 0x50055000
[00:00:13.451,968] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 43799 base: 0x50055000
[00:00:14.676,443] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 19919 base: 0x50055000
[00:00:14.786,534] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 61642 base: 0x50055000
[00:00:15.852,600] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 61795 base: 0x50055000
[00:00:15.958,466] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 3566 base: 0x50055000
[00:00:17.703,178] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 3073 base: 0x50055000
[00:00:17.777,741] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 18508 base: 0x50055000
[00:00:19.314,699] &amp;lt;inf&amp;gt; nrfx_example: Pressed. Times 42638 base: 0x50055000
[00:00:19.400,757] &amp;lt;inf&amp;gt; nrfx_example: Released. Times 20168 base: 0x50055000&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Any guidance or further direction here is really appreciated.&lt;/p&gt;
&lt;p&gt;Attached code:&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/gpiote_5F00_basic.zip"&gt;devzone.nordicsemi.com/.../gpiote_5F00_basic.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>