Closed Francois-Belanger closed 1 month ago
Hi @Francois-Belanger Can you please take a look at similar issues https://github.com/espressif/esp-idf/issues/1299 and https://github.com/espressif/arduino-esp32/issues/855 for solution? Please let me know if you still face any issue.
Hi @prasad-alatkar I don't use any interrupt in my code. Does the Nimble use any on the client code ? In the Nimble Example I didn't see anything with IRAM so I guess all callback are not in interrupt ? Thanks
Hummm issue #5924 or #5834 ? Looks similar. I didn't have these issues before, this is from the 4.3 rev.
Ok, if I disable Software controls WiFi/Bluetooth coexistence everything looks stable. @prasad-alatkar can you help please. Looks like task priority ?
Thanks
@Francois-Belanger, Can you please try with disabling SPI_MASTER_ISR_IN_IRAM
(make menuconfig → Component config → Driver configurations → SPI configuration
) from menuconfig once ? I could see from the sdkconfig CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL
is enabled in your case and following up few different threads related to the similar issues looks like disabling SPI_MASTER_ISR_IN_IRAM
may help you here (Reference: https://www.esp32.com/viewtopic.php?t=7684 ).
if I disable Software controls WiFi/Bluetooth coexistence everything looks stable
I will look into it and update/explain you accordingly. Meanwhile please let me know if the above suggestion helps you overcome the issue.
Hi @prasad-alatkar I've tried disabling SPI_MASTER_ISR_IN_IRAM, no improvements, still crash with coex in software :-( What is the penalty in speed to use the hardware coex ?
Thanks
As per my understanding, with hardware coex control BLE performance won't be affected at all, there is chance of little degradation in wifi performance but given that your BLE application is only advertising, I believe it should give enough window for wifi operations. You can refer detailed explanation on this topic here: WIFI/BLE Simultaneously and here: ESP32 FAQ (Refer 5.3.2)
To narrow down the issue further, Can you please try to enable CONFIG_NIMBLE_MEM_ALLOC_MODE_INTERNAL
(and disable CONFIG_NIMBLE_MEM_ALLOC_MODE_EXTERNAL
) and see if you still observe the issue ? Please share the results.
Hi @prasad-alatkar putting Nimble Internal Memory and putting Coex Soft crash again. :-(
@Francois-Belanger, Sorry for the late reply. Does this issue still exist? Please update the IDF and try again.
Thanks for reporting, will close due to short of feedback, feel free to reopen with more updates.
Environment
git describe --tags
to find it): v4.3-dev-1197-g8bc19ba89xtensa-esp32-elf-gcc --version
to find it): xtensa-esp32-elf-gcc (crosstool-NG esp-2020r3) 8.4.0Problem Description
If I enable BLE Nimble and access the Flash a lot, I get this crash pretty quickly.
Without the BLE enabled, everything runs fine. When Enable the BLE is only advertising for now, no connection.
Code for BLE
Init:
The rest that is important:
Debug Logs
sdkconfig.zip