You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2021/04/28 08:13:07 UTC

[GitHub] [incubator-nuttx] xiaoxiang781216 commented on pull request #3543: feat(esp32c3): Support esp32c3 ble function

xiaoxiang781216 commented on pull request #3543:
URL: https://github.com/apache/incubator-nuttx/pull/3543#issuecomment-828249440


   Exposing bt_driver_s directly has some limitation at this stage:
   
   1. NuttX just support BLE stack, but many SoC support BT and BLE, we need provide a solution for combo device.
   2. NuttX doesn't have a full feature BLE userspace stack(something like bluez), it waste flash/memory to integrate other monolithic bluetooth stack(e.g. nimBLE) through the raw socket because:
      a. All L2 layer code duplicate in kernel(wireless/bluetooth) and uerspace(e.g. nimBLE)
      b. BLE only SoC has to bring in the unnecessary network infrastructure code(socket/bind/send/recv...)
   3. Expose BT/BLE through tty driver interface, chip vendor can support all cases with one driver implementation:
      a. nimBLE/bluedriod/btstack can work with /dev/tty directly, we don't need provide any wrapper at all.
      b. With NuttX's bt_uart_shim driver, we can support NuttX BLE stack without any additional code.
   
   From the architecture perspective, the best way is to implement/port bluez(profile only) liked stack to NuttX. All other monolithic stack support(nimBLE/bluedriod/btstack) should be dropped to promote the best architecture.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org