Skip to content

Port picoruby-ble to ESP32 #116

@yuuu

Description

@yuuu

Summary

Port picoruby-ble to ESP32 so that BLE can be used from PicoRuby on R2P2-ESP32, in the same way it is already available on RP2040.

Background

picoruby-ble already has an RP2040 port. ESP32 has its own BLE stack (NimBLE / Bluedroid in ESP-IDF), so a separate platform port is required.

Approach

Add an ESP32 port alongside the existing RP2040 port, by creating a new directory:

mrbgems/picoruby-ble/ports/esp32/

and implementing the platform-specific glue there. The Ruby-side API surface should remain the same as the RP2040 port so that existing picoruby-ble user code runs unchanged on ESP32.

Tasks

  • Survey the RP2040 port (mrbgems/picoruby-ble/ports/rp2040) and identify the platform abstraction boundary.
  • Create mrbgems/picoruby-ble/ports/esp32/ and implement the equivalent platform glue on top of the ESP-IDF BLE stack.
  • Wire the new port into the R2P2-ESP32 build.
  • Verify with a minimal sample (e.g. GAP advertise / scan, GATT read/write).

References

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions