Hi guys,
So as I'm migrating from SDK10 to SDK12 I've noted that the app_pwm module is consuming more power then expected while disabled ~300uA. After initialization, I do not see any increase in idle current, but once I start the PWM, after stopping the idle current increases to ~300uA. I used the following for my pwm_stop()
void pwm_stop() { app_pwm_disable( &PWM );
nrf_drv_gpiote_out_task_disable( pin_1 );
nrf_drv_gpiote_out_task_disable( pin_2 );
app_pwm_uninit( &PWM );
nrf_gpio_cfg_output( pin_1 );
nrf_gpio_pin_clear( pin_1 );
nrf_gpio_cfg_output( pin_2 );
nrf_gpio_pin_clear( pin_2 );
pwm_active = false; // pwm now disabled
}
By all accounts this should properly disable the PWM and underlying GPIOTE modules. This worked fine on SDK10, but SDK12 has this issue. I've verified after a stop the the pins are indeeds Low, and I've also verified that the HFCLK is not running. Therefore this issue must lie in the PPI or GPIOTE tasking.