Issue with GPIO36 Interrupt When Using BLE on ESP32
Posted: Thu Aug 22, 2024 5:05 pm
Hi Expert,
We are currently developing a project using the ESP32 as the main MCU. However, we have encountered a peculiar issue. We are using GPIO36 as an input, configured to trigger an interrupt on the falling edge. Everything works fine, and it triggers the interrupt as expected. Below is the configuration code for the interrupt on that pin:
However, we also need to use the BLE functionality in parallel. When we enable BLE and start advertising, GPIO36 starts triggering interrupts continuously, even though it is isolated and pulled up to a 3.3V resistor. We've referred to a forum where similar issues were reported, where GPIO36 continuously triggers when BLE is enabled. You can check the discussion here: https://esp32.com/viewtopic.php?t=39886.
My question is, is there a known issue with the ESP32 chip where the BLE functionality affects the interrupt behavior of the GPIO36 pin? Or could there be another reason causing this issue?
Thank you for your assistance.
We are currently developing a project using the ESP32 as the main MCU. However, we have encountered a peculiar issue. We are using GPIO36 as an input, configured to trigger an interrupt on the falling edge. Everything works fine, and it triggers the interrupt as expected. Below is the configuration code for the interrupt on that pin:
Code: Select all
static const gpio_config_t g_gpio_in_cfg = {
.pin_bit_mask = BIT64(GPIO_NUM_36),
.mode = GPIO_MODE_INPUT,
.pull_up_en = GPIO_PULLUP_ENABLE,
.pull_down_en = GPIO_PULLDOWN_DISABLE,
.intr_type = GPIO_INTR_NEGEDGE
};
ESP_ERROR_CHECK(gpio_config(&g_gpio_in_cfg));
ESP_RETURN_ON_ERROR(
gpio_isr_handler_add(GPIO_NUM_36, gpio_int_handler, NULL),
g_tag,
"Failed to add interrupt handler"
);
My question is, is there a known issue with the ESP32 chip where the BLE functionality affects the interrupt behavior of the GPIO36 pin? Or could there be another reason causing this issue?
Thank you for your assistance.