Chapter 4. Software framework
4.1.32 Does ESP32 Bluetooth® LE support Client-Server mode, in which gatt server and
gatt client can coexist?
• Yes, please refer to example gattc_gatts_coex.
4.1.33 What are the risks if there are over six devices connected to ESP32 Bluetooth®
LE?
• Usually it depends on the specific application scenario. In general, the ESP32 Bluetooth LE can communicate
stably with three devices connected.
• There is no exact number for maximum Bluetooth LE connections. When there are multiple devices connected
to Bluetooth LE simultaneously, the RF is time-multiplexed, thus requiring the designer to ensure that each
device is not overly occupied, causing other devices to timeout and disconnected.
• The connection parameters include: connection interval, connection window, latency and timeout. It is ok
for devices to not respond within the latency, but if the responding time exceeds timeout threshold, the
device will be disconnected.
• If the interval is configured to 100 and window to 5, the Bluetooth LE will be able to connect to more
devices with Wi-Fi disconnected. However, If Wi-Fi is connected and the value of interval is too small,
only a few devices can be connected.
• When the Bluetooth LE supports multiple devices connected simultaneously, there will be bigger possibility
for RF solt management to generate error. So when there are multiple connections for Bluetooth LE, it is
necessary to debug for different scenarios.
4.1.34 When using ESP32 device as the server of Bluetooth® LE, how many client devices
can be connected?
• The ESP32 Bluetooth LE supports up to nine client devices for connection. It is recommended to hold this
number within three.
• Please make configurations via menuconfig > Component config > Bluetooth > Bluetooth
controller > BLE MAX Connections.
4.1.35 How can I send files via Bluetooth® BR/EDR for ESP32?
• Please refer to example bt_spp_acceptor or bt_spp_initiator in
4.1.36 When I download example ESP_SPP_SERVER for ESP32, how can I modify the
name of the Bluetooth® device?
• The name of the Bluetooth device can be modified via adv parameter:
static const uint8_t spp_adv_data[23] = {
0x02,0x01,0x06,
0x03,0x03,0xF0,0xAB,
0x0F,0x09,0x45,0x53,0x50,0x5f,0x53,0x50,0x50,0x5f,0x53,0x45,0x52,0x56,
0x45,0x52};
→
• The"0x0F" in the third line means the length of the following data is 15,"0x09" stands for data
type (fixed) and data from "0x45"indicates the corresponding ASCII code of the device names
(BLE_SPP_SERVER by default).
Espressif Systems
49
Submit Document Feedback
classic
bt.
Release master
Need help?
Do you have a question about the ESP and is the answer not in the manual?