we've been using WifiMesh and BLE side-by-side for a while now on 5.0.x. It's been working fine and without any major issues (just the to-expected performance degradations).
We've recently switched to 5.1, and we're now seeing kernel panics if bluetooth is advertising and wifi mesh is active in client mode at the same time. The panics happen almost immediately, and don't even require reading or writing anything from the mesh (just being in client mode and having connected to a root node is enough to get a panic at most a few seconds later.
The panics are non-distinct and happen in different places, but usually one of these two, and with a corrupted backtrace:
Code: Select all
assert failed: tlsf_free tlsf.c:1119 (!block_is_free(block) && "block already marked as free")
Code: Select all
Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0).
Also, setting
Code: Select all
CONFIG_ESP_COEX_SW_COEXIST_ENABLE=n
While it seems that we can ship this way (both BLE and wifi mesh work again and at the same time), since the menuconfig documentation indicates that hardware coex has worse performance, I'm worried that this will degrade the wifimesh performance even further (especially when pushing firmware upgrades, etc).
We are using power saving on the wifi as suggested:
Code: Select all
esp_mesh_enable_ps();
esp_wifi_set_ps(WIFI_PS_MIN_MODEM);
Any thoughts what might be causing this and how to fix it?
Thanks,
Volker