Handle ESP32 Arduino core 3.3.11+ mempool symbol rename for C5 builds - #1176
Merged
Conversation
Copilot
AI
changed the title
[WIP] Fix regression of build 2.5.0 library with Core 3.3.11 for ESP32-C5
Handle ESP32 Arduino core 3.3.11+ mempool symbol rename for C5 builds
Jul 25, 2026
h2zero
marked this pull request as ready for review
July 29, 2026 00:46
h2zero
force-pushed
the
copilot/fix-regression-build-250
branch
from
July 29, 2026 22:46
47d74ed to
41b13df
Compare
Fixes a crash when the stack is reinitialized without clearing all data on deinit then starting scanning.
h2zero
force-pushed
the
copilot/fix-regression-build-250
branch
from
July 29, 2026 23:09
41b13df to
60e93df
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Arduino ESP32 core
3.3.11changed the exported NimBLE mempool symbols for controller-backed targets such asesp32c5, so NimBLE-Arduino 2.5.0 still referenced legacyr_os_*names and failed at link time. This updates the symbol selection to match the core version and addsesp32c5to the existing Arduino build matrix to keep this path covered.Compatibility gate
os_mempool.h, gate the legacyr_os_*aliases on Arduino core version.3.3.11keep using ROM-backedr_os_mempool_init/r_os_memblock_get/r_os_memblock_put.3.3.11+fall back to the unprefixedos_*names exported by the newer core.Build coverage
esp32c5to.github/workflows/build.ymlunder the Arduino ESP32 matrix so the affected target is compiled in CI.Documentation in code
3.3.11is the cutoff and keep the version-gate macro scoped to the header.