mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-01-01 00:28:18 +00:00
esp32: add to Chipset list, mention DLE support and multiple LE roles
This commit is contained in:
parent
99e6df5d02
commit
6e0288c29c
@ -79,6 +79,7 @@ Broadcom USB Dongles | Dual mode | USB | Yes |
|
||||
CSR UART | Dual mode | H4, H5, BCSP | No (didn't work) | csr |
|
||||
CSR USB Dongles | Dual mode | USB | Yes | csr |
|
||||
Dialog Semiconductor DA14581 | LE | H4, SPI | n.a. | da14581 | Official HCI firmware used
|
||||
Espressif ESP32 | Dual mode | VHCI | Probably | | SoC with Bluetooth and Wifi
|
||||
EM 9301, 9304 | LE | SPI | n.a. | em9301 | Custom HCI SPI implementation
|
||||
Nordic nRF | LE | H4 | n.a. | | Requires custom HCI firmware
|
||||
STM STLC2500D | Classic | H4 | No (didn't try) | stlc2500d | Custom deep sleep management not supported
|
||||
|
@ -59,6 +59,7 @@ Broadcom USB Dongles | Dual mode | USB | Yes | Yes
|
||||
CSR UART | Dual mode | H4, H5, BCSP | Rarely | No (didn't work) | No | No | csr |
|
||||
CSR USB Dongles | Dual mode | USB | Mostly | Yes | No | No | csr |
|
||||
Dialog DA14581 | LE | H4, SPI | No | n.a. | No | No | da14581 | Official HCI firmware included in BTstack
|
||||
Espressif ESP32 | Dual mode | VHCI | Yes | Probably | Yes | Yes | | SoC with Bluetooth and Wifi
|
||||
EM 9301 | LE | SPI, H4 | No | n.a. | No | No | em9301 | Custom HCI SPI implementation
|
||||
EM 9304 | LE | SPI, H4 | No | n.a. | Yes | Yes | em9301 | Custom HCI SPI implementation
|
||||
Nordic nRF | LE | H4 | Fixed Random | n.a. | Yes | Yes | | Requires custom HCI firmware
|
||||
@ -66,6 +67,10 @@ STM STLC2500D | Classic | H4 | No | No (didn't tr
|
||||
Toshiba TC35661 | Dual mode | H4 | No | No (didn't try) | No | No | tc3566 | HCI version not tested. See below
|
||||
TI CC256x, WL183x | Dual mode | H4, H5, eHCILL | Yes | Yes | No | Yes for CC256XC | cc256x | Also WL185x, WL187x, and WL189x
|
||||
|
||||
esp32thing: 24:0A:C4:00:8B:C4
|
||||
nina1: 18:FE:34:6D:1B:D2
|
||||
nina2: 18:FE:34:6D:17:66
|
||||
|
||||
**Notes**:
|
||||
|
||||
1. BD_ADDR: Indciates if Bluetooth chipset compes with its own valid MAC Addess. Better Broadcom and CSR dongles usually come with a MAC address from the dongle manufacturer, but cheaper ones might come with identical addresses.
|
||||
@ -139,6 +144,10 @@ It does not implement the Data Length Extension or supports multiple concurrent
|
||||
|
||||
**BTstack integration**: *btstack_chipset_da14581.c* contains the code to download the provided HCI firmware into the SRAM of the DA14581. After that, it can be used as any other HCI chipset.
|
||||
|
||||
## Espressif ESP32
|
||||
|
||||
The ESP32 is a SoC with a built-in Dual mode Bluetooth and Wifi radio. The HCI Controller is implemented in software and accessed via a so called Virtual HCI (VHCI) interface. It supports both LE Data Length Extensions (DLE) as well as multiple LE roles. Flow control between the VHCI and BTstack is problematic as there's no way to stop the VHCI from delivering packets. BTstack impelemts the Host Controller to Host Flow Control to deal with this. Right now, this works for HCI Events and Classic ACL packets but not for LE ACL packets. Espressif is working on a solution for this: https://github.com/espressif/esp-idf/issues/644
|
||||
|
||||
## EM Microelectronic Marin
|
||||
|
||||
For a long time, the EM9301 has been the only Bluetooth Single-Mode LE chipset with an HCI interface. The EM9301 can be connected via SPI or UART. The UART interface does not support hardware flow control and is not recommended for use with BTstack. The SPI mode uses a proprietary but documented extension to implement flow control and signal if the EM9301 has data to send.
|
||||
|
@ -38,7 +38,7 @@ The sdkconfig of the example template disables the original Bluedroid stack by d
|
||||
## Limitations
|
||||
|
||||
### Bug in ESP32 VHCI Implementation
|
||||
The Host Controller to Host Flow Control of the Virtual HCI (VHCI) on the ESP32 does not work currently. Without it, it is not possible to slow down incoming data. For most applications, this won't be an issue, but please keep it in mind. See https://github.com/espressif/esp-idf/issues/480
|
||||
The Host Controller to Host Flow Control of the Virtual HCI (VHCI) on the ESP32 does not work for LE data (it works for HCI Events and Classic ACL packets). Without it, it is not possible to slow down incoming data. For most applications, this won't be an issue, but please keep it in mind. See https://github.com/espressif/esp-idf/issues/644
|
||||
|
||||
### Multi-Threading
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user