Skip to content

NimBLE support for ESP32-C6, H2 and future MCU's and why is Bluedroid still the default? #9835

Closed
@h2zero

Description

@h2zero

Board

esp32-c6-devkitc-1

Device Description

esp32-c6-devkitc-1

Hardware Configuration

nothing

Version

latest master (checkout manually)

IDE Name

all

Operating System

all

Flash frequency

all

PSRAM enabled

yes

Upload speed

any

Description

First, sorry for skirting the default fields, I'm opening this here for discussion and exposure.

Times have changed, classic Bluetooth has become, well, classic, yet the default Bluetooth/BLE stack is still Bluedroid, even though no other Espressif SOC except the original ESP32 has supported Bluetooth classic, why?

This is detrimental to the users that are using one of the many other MCU's that are not the original ESP32.

The latest release has shined the spotlight on the issue, as of now the NimBLE-Arduino library is not able to support the C6 and H2 variants in the 3.x.x releases because the libbt has Bluedroid enabled and the controller is NimBLE based which causes all kinds of conflicts. Would it not make sense to enable NimBLE host for the "other-than-original-esp32-devices" and incorporate the supporting library esp-nimble-cpp, which NimBLE-Arduino is derived from and many use?

Alternatively, maybe have an option to select the BLE stack and link a different 'libbt' for each stack?

If none of this is viable, I understand, close this at your leisure, just thought I'd open some discussion.

Sketch

#include "NimBLEDevice.h"

void setup(){}

void loop(){}

Debug Message

Broke..

Other Steps to Reproduce

No response

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions