Hello,
I am using ble_app_uart example in nRF SDK 15.2.0 in which I have included "nrf_drv_gpiote.h" and initialized gpiote as follows:
static void gpio_init(void)
{
ret_code_t err_code;
err_code = nrf_drv_gpiote_init();
APP_ERROR_CHECK(err_code);
}
/**@brief Application main function.
*/
int main(void)
{
bool erase_bonds;
// Initialize.
uart_init();
log_init();
timers_init();
buttons_leds_init(&erase_bonds);
power_management_init();
ble_stack_init();
gap_params_init();
gatt_init();
services_init();
advertising_init();
conn_params_init();
gpio_init();
// Start execution.
printf("\r\nUART started.\r\n");
NRF_LOG_INFO("Debug logging for UART over RTT started.");
advertising_start();
// Enter main loop.
for (;;)
{
idle_state_handle();
}
}
After making this change, the application no longer works. On looking at some of the existing answers,I understand that the GPIOTE interrupt needs to be at a lower priority than softdevice interrupt. How do I do this and make the application work with GPIOTE interrupt?
Thanks