Skip to content

Add NimBLE integration for ESP32 BLE - #135

Draft
bash0C7 wants to merge 1 commit into
picoruby:masterfrom
bash0C7:r2p2-esp32-btstack-integration
Draft

Add NimBLE integration for ESP32 BLE#135
bash0C7 wants to merge 1 commit into
picoruby:masterfrom
bash0C7:r2p2-esp32-btstack-integration

Conversation

@bash0C7

@bash0C7 bash0C7 commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

Summary

Wires picoruby-ble's ESP32 port into components/picoruby-esp32, using ESP-IDF's built-in NimBLE host stack (no vendored host stack needed).

  • Compiles ble.c / ble_peripheral.c / ble_central.c / nimble_owner.c
  • Enables NimBLE via a new sdkconfigs/bt_nimble fragment
  • Adds picoruby-ble / picoruby-ble-uart to the xtensa build config

Related

Companion PR (picoruby-ble ESP32 NimBLE port): picoruby/picoruby#427

Depends on #427: the picoruby submodule pin here is left untouched for now and will be bumped once #427 merges upstream.

@bash0C7

bash0C7 commented Jun 7, 2026

Copy link
Copy Markdown
Contributor Author

https://github.com/picoruby/R2P2-ESP32/actions/runs/27085706482
This PR is Blocked by picoruby/picoruby#427. Will rebase after the submodule bump following its merge.

@bash0C7 bash0C7 mentioned this pull request Jun 12, 2026
4 tasks
@bash0C7
bash0C7 force-pushed the r2p2-esp32-btstack-integration branch from 4616e90 to e8208dd Compare June 16, 2026 14:59
bash0C7 added a commit to bash0C7/R2P2-ESP32 that referenced this pull request Jul 24, 2026
Integration branch for stackchan-picoruby on top of the clean btstack
PR (picoruby#135) base, which already carries the picoruby-ble ESP32 port via
submodule (PR #427) and latest upstream/master.

- build_config: add ili9342 / py32-io-expander / stackchan-protocol /
  scservo gems (tag v0.1.0 via branch:). stackchan-led omitted — inlined
  into stackchan-picoruby app/application.rb.
- sdkconfigs/cores3: QUAD PSRAM overlay for CoreS3.
- sdkconfig.defaults: 4MB -> 16MB flash (CoreS3).
- .gitmodules: point picoruby submodule at bash0C7 fork (holds BLE port).

Does NOT include the legacy main/btstack_smoke.c bring-up path; the
matured picoruby-ble port supersedes it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Compiles picoruby-ble's ESP32 port (ble.c / ble_peripheral.c /
ble_central.c / nimble_owner.c) into components/picoruby-esp32,
requiring ESP-IDF's built-in bt component with NimBLE enabled via a
new sdkconfigs/bt_nimble fragment. No vendored host stack needed.

Depends on picoruby/picoruby#427 (picoruby-ble ESP32 NimBLE port) for
the submodule side; the picoruby submodule pin here is left untouched
and will move once #427 merges upstream.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@bash0C7
bash0C7 force-pushed the r2p2-esp32-btstack-integration branch from e8208dd to 4110398 Compare August 11, 2026 14:29
@bash0C7 bash0C7 changed the title Add BTstack integration for ESP32 BLE Add NimBLE integration for ESP32 BLE Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant