We upgrade our project from nrf-sdk 1.7.1 to 1.9.1 and it broke part of our project.
The part that broke counts the number of falling / rising edges and triggers different events on each count. We are using PPI to combine a timer(counter) with a GPIOE input monitoring a PWM outputs.
A basic version can be found at: https://gist.github.com/motters/f17a2043ee3fd42481ddf8d07b2d00f9 . However our production one expands this by adding in a loop
- CC Count 1: samples ADC 1
- CC Count 2: sample ADC 2; re-configure gpioe to rising edge
- CC Count 3: samples ADC 3; reconfigure gpio to falling edge; reset timer
On the
- Cycle 1,3,5,7...: everything works as expected
- Cycle 2,4,6,8...: The gpioe triggers on the rising edge for "CC Count 1 & 2" and not the falling edge.
The gpioe hal driver in hal_nordic used in Zephyr/sdk-nrf does seem to have had a major update from 1.7.1 to 1.9.1
Does anything spring to mind as per what the problem would be?
Sam