Skip to content

Commit f03b0fe

Browse files
committed
Merge branch 'bugfix/fix_some_ble_bugs_0422_v5.5' into 'release/v5.5'
Bugfix/fix some ble bugs 0422 (v5.5) See merge request espressif/esp-idf!39073
2 parents 14c29c4 + 2de265b commit f03b0fe

File tree

6 files changed

+29
-102
lines changed

6 files changed

+29
-102
lines changed

components/bt/host/bluedroid/api/esp_gap_ble_api.c

Lines changed: 6 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -300,83 +300,17 @@ esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable)
300300

301301
esp_err_t esp_ble_gap_config_local_icon (uint16_t icon)
302302
{
303-
esp_err_t ret;
304303
btc_msg_t msg = {0};
305304
btc_ble_gap_args_t arg;
306305

307306
ESP_BLUEDROID_STATUS_CHECK(ESP_BLUEDROID_STATUS_ENABLED);
308307

309-
switch (icon) {
310-
case ESP_BLE_APPEARANCE_GENERIC_PHONE:
311-
case ESP_BLE_APPEARANCE_GENERIC_COMPUTER:
312-
case ESP_BLE_APPEARANCE_GENERIC_REMOTE:
313-
case ESP_BLE_APPEARANCE_GENERIC_THERMOMETER:
314-
case ESP_BLE_APPEARANCE_THERMOMETER_EAR:
315-
case ESP_BLE_APPEARANCE_GENERIC_HEART_RATE:
316-
case ESP_BLE_APPEARANCE_HEART_RATE_BELT:
317-
case ESP_BLE_APPEARANCE_GENERIC_BLOOD_PRESSURE:
318-
case ESP_BLE_APPEARANCE_BLOOD_PRESSURE_ARM:
319-
case ESP_BLE_APPEARANCE_BLOOD_PRESSURE_WRIST:
320-
case ESP_BLE_APPEARANCE_GENERIC_PULSE_OXIMETER:
321-
case ESP_BLE_APPEARANCE_PULSE_OXIMETER_FINGERTIP:
322-
case ESP_BLE_APPEARANCE_PULSE_OXIMETER_WRIST:
323-
case ESP_BLE_APPEARANCE_GENERIC_GLUCOSE:
324-
case ESP_BLE_APPEARANCE_GENERIC_WEIGHT:
325-
case ESP_BLE_APPEARANCE_GENERIC_WALKING:
326-
case ESP_BLE_APPEARANCE_WALKING_IN_SHOE:
327-
case ESP_BLE_APPEARANCE_WALKING_ON_SHOE:
328-
case ESP_BLE_APPEARANCE_WALKING_ON_HIP:
329-
case ESP_BLE_APPEARANCE_GENERIC_WATCH:
330-
case ESP_BLE_APPEARANCE_SPORTS_WATCH:
331-
case ESP_BLE_APPEARANCE_GENERIC_EYEGLASSES:
332-
case ESP_BLE_APPEARANCE_GENERIC_DISPLAY:
333-
case ESP_BLE_APPEARANCE_GENERIC_MEDIA_PLAYER:
334-
case ESP_BLE_APPEARANCE_GENERIC_BARCODE_SCANNER:
335-
case ESP_BLE_APPEARANCE_HID_BARCODE_SCANNER:
336-
case ESP_BLE_APPEARANCE_GENERIC_HID:
337-
case ESP_BLE_APPEARANCE_HID_KEYBOARD:
338-
case ESP_BLE_APPEARANCE_HID_MOUSE:
339-
case ESP_BLE_APPEARANCE_HID_JOYSTICK:
340-
case ESP_BLE_APPEARANCE_HID_GAMEPAD:
341-
case ESP_BLE_APPEARANCE_HID_DIGITIZER_TABLET:
342-
case ESP_BLE_APPEARANCE_HID_CARD_READER:
343-
case ESP_BLE_APPEARANCE_HID_DIGITAL_PEN:
344-
case ESP_BLE_APPEARANCE_UNKNOWN:
345-
case ESP_BLE_APPEARANCE_GENERIC_CLOCK:
346-
case ESP_BLE_APPEARANCE_GENERIC_TAG:
347-
case ESP_BLE_APPEARANCE_GENERIC_KEYRING:
348-
case ESP_BLE_APPEARANCE_GENERIC_CYCLING:
349-
case ESP_BLE_APPEARANCE_CYCLING_COMPUTER:
350-
case ESP_BLE_APPEARANCE_CYCLING_SPEED:
351-
case ESP_BLE_APPEARANCE_CYCLING_CADENCE:
352-
case ESP_BLE_APPEARANCE_CYCLING_POWER:
353-
case ESP_BLE_APPEARANCE_CYCLING_SPEED_CADENCE:
354-
case ESP_BLE_APPEARANCE_GENERIC_PERSONAL_MOBILITY_DEVICE:
355-
case ESP_BLE_APPEARANCE_POWERED_WHEELCHAIR:
356-
case ESP_BLE_APPEARANCE_MOBILITY_SCOOTER:
357-
case ESP_BLE_APPEARANCE_GENERIC_CONTINUOUS_GLUCOSE_MONITOR:
358-
case ESP_BLE_APPEARANCE_GENERIC_INSULIN_PUMP:
359-
case ESP_BLE_APPEARANCE_INSULIN_PUMP_DURABLE_PUMP:
360-
case ESP_BLE_APPEARANCE_INSULIN_PUMP_PATCH_PUMP:
361-
case ESP_BLE_APPEARANCE_INSULIN_PEN:
362-
case ESP_BLE_APPEARANCE_GENERIC_MEDICATION_DELIVERY:
363-
case ESP_BLE_APPEARANCE_GENERIC_OUTDOOR_SPORTS:
364-
case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION:
365-
case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_AND_NAV:
366-
case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD:
367-
case ESP_BLE_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD_AND_NAV:
368-
case ESP_BLE_APPEARANCE_STANDALONE_SPEAKER:
369-
msg.sig = BTC_SIG_API_CALL;
370-
msg.pid = BTC_PID_GAP_BLE;
371-
msg.act = BTC_GAP_BLE_ACT_CONFIG_LOCAL_ICON;
372-
arg.cfg_local_icon.icon = icon;
373-
ret = (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gap_args_t), NULL, NULL) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL);
374-
break;
375-
default:
376-
ret = ESP_ERR_INVALID_ARG;
377-
break;
378-
}
379-
return ret;
308+
msg.sig = BTC_SIG_API_CALL;
309+
msg.pid = BTC_PID_GAP_BLE;
310+
msg.act = BTC_GAP_BLE_ACT_CONFIG_LOCAL_ICON;
311+
arg.cfg_local_icon.icon = icon;
312+
313+
return (btc_transfer_context(&msg, &arg, sizeof(btc_ble_gap_args_t), NULL, NULL) == BT_STATUS_SUCCESS ? ESP_OK : ESP_FAIL);
380314
}
381315

382316
esp_err_t esp_ble_gap_update_whitelist(bool add_remove, esp_bd_addr_t remote_bda, esp_ble_wl_addr_type_t wl_addr_type)

components/bt/host/bluedroid/api/esp_gatts_api.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,11 @@ esp_err_t esp_ble_gatts_stop_service(uint16_t service_handle)
260260
esp_err_t esp_ble_gatts_send_indicate(esp_gatt_if_t gatts_if, uint16_t conn_id, uint16_t attr_handle,
261261
uint16_t value_len, uint8_t *value, bool need_confirm)
262262
{
263+
if (value_len > ESP_GATT_MAX_ATTR_LEN) {
264+
LOG_ERROR("%s, value_len > ESP_GATT_MAX_ATTR_LEN.", __func__);
265+
return ESP_ERR_INVALID_SIZE;
266+
}
267+
263268
btc_msg_t msg = {0};
264269
btc_ble_gatts_args_t arg;
265270

@@ -272,7 +277,7 @@ esp_err_t esp_ble_gatts_send_indicate(esp_gatt_if_t gatts_if, uint16_t conn_id,
272277
}
273278

274279
if (L2CA_CheckIsCongest(L2CAP_ATT_CID, p_tcb->peer_bda)) {
275-
LOG_DEBUG("%s, the l2cap chanel is congest.", __func__);
280+
LOG_DEBUG("%s, the l2cap channel is congest.", __func__);
276281
return ESP_FAIL;
277282
}
278283

components/bt/host/bluedroid/api/include/api/esp_gap_ble_api.h

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2040,15 +2040,19 @@ esp_err_t esp_ble_gap_clear_rand_addr(void);
20402040
esp_err_t esp_ble_gap_config_local_privacy (bool privacy_enable);
20412041

20422042
/**
2043-
* @brief set local gap appearance icon
2043+
* @brief Set the local GAP appearance icon.
20442044
*
2045+
* @note This API does not restrict the input icon value.
2046+
* If an undefined or incorrect icon value is used, the device icon may not display properly.
20452047
*
2046-
* @param[in] icon - External appearance value, these values are defined by the Bluetooth SIG, please refer to
2048+
* For a complete list of valid appearance values, please refer to "2.6.2 Appearance Category ranges" at:
20472049
* https://www.bluetooth.com/specifications/assigned-numbers/
20482050
*
2051+
* @param[in] icon - External appearance value (16-bit), as defined by the Bluetooth SIG.
2052+
*
20492053
* @return
2050-
* - ESP_OK : success
2051-
* - other : failed
2054+
* - ESP_OK : Success
2055+
* - ESP_FAIL : Internal failure
20522056
*
20532057
*/
20542058
esp_err_t esp_ble_gap_config_local_icon (uint16_t icon);
@@ -2726,15 +2730,17 @@ esp_err_t esp_ble_gap_periodic_adv_stop(uint8_t instance);
27262730
esp_err_t esp_ble_gap_set_ext_scan_params(const esp_ble_ext_scan_params_t *params);
27272731

27282732
/**
2729-
* @brief This function is used to enable scanning.
2733+
* @brief Enables extended scanning.
27302734
*
2731-
* @param[in] duration Scan duration time, where Time = N * 10 ms. Range: 0x0001 to 0xFFFF.
2732-
* @param[in] period Time interval from when the Controller started its last Scan Duration until it begins the subsequent Scan Duration.
2733-
* Time = N * 1.28 sec. Range: 0x0001 to 0xFFFF.
2735+
* @param[in] duration Scan duration in units of 10 ms.
2736+
* - Range: 0x0001 to 0xFFFF (Time = N * 10 ms).
2737+
* - 0x0000: Scan continuously until explicitly disabled.
27342738
*
2739+
* @param[in] period Time interval between the start of consecutive scan durations, in units of 1.28 seconds.
2740+
* - Range: 0x0001 to 0xFFFF (Time = N * 1.28 sec).
2741+
* - 0x0000: Scan continuously.
27352742
* @return - ESP_OK : success
27362743
* - other : failed
2737-
*
27382744
*/
27392745
esp_err_t esp_ble_gap_start_ext_scan(uint32_t duration, uint16_t period);
27402746

components/bt/host/bluedroid/api/include/api/esp_gatt_defs.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@ typedef uint8_t esp_gatt_char_prop_t;
478478
*
479479
* This definition specifies the maximum number of bytes that a GATT attribute can hold.
480480
*/
481-
#define ESP_GATT_MAX_ATTR_LEN 512 /*!< As same as GATT_MAX_ATTR_LEN. */
481+
#define ESP_GATT_MAX_ATTR_LEN 517 /*!< As same as GATT_MAX_ATTR_LEN. */
482482

483483
/**
484484
* @brief Enumerates the possible sources of a GATT service discovery.

components/bt/host/bluedroid/common/include/common/bt_trace.h

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -223,12 +223,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
223223
#if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED)
224224

225225
#define BTM_TRACE_ERROR(fmt, args...) { \
226-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_BTM", fmt, ## args); \
227226
if (btm_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(BTM, ERROR)) BT_PRINT_E("BT_BTM", fmt, ## args); \
228227
}
229228

230229
#define BTM_TRACE_WARNING(fmt, args...) { \
231-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_BTM", fmt, ## args); \
232230
if (btm_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(BTM, WARNING)) BT_PRINT_W("BT_BTM", fmt, ## args); \
233231
}
234232

@@ -243,7 +241,6 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
243241
}
244242

245243
#define BTM_TRACE_DEBUG(fmt, args...) { \
246-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_BTM", fmt, ## args); \
247244
if (btm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(BTM, DEBUG)) BT_PRINT_D("BT_BTM", fmt, ## args); \
248245
}
249246

@@ -262,12 +259,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
262259
#if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED)
263260

264261
#define L2CAP_TRACE_ERROR(fmt, args...) { \
265-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_L2CAP", fmt, ## args); \
266262
if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(L2CAP, ERROR)) BT_PRINT_E("BT_L2CAP", fmt, ## args); \
267263
}
268264

269265
#define L2CAP_TRACE_WARNING(fmt, args...) { \
270-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_L2CAP", fmt, ## args); \
271266
if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(L2CAP, WARNING)) BT_PRINT_W("BT_L2CAP", fmt, ## args); \
272267
}
273268

@@ -277,12 +272,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
277272
}
278273

279274
#define L2CAP_TRACE_EVENT(fmt, args...) { \
280-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_L2CAP", fmt, ## args); \
281275
if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(L2CAP, EVENT)) BT_PRINT_D("BT_L2CAP", fmt, ## args); \
282276
}
283277

284278
#define L2CAP_TRACE_DEBUG(fmt, args...) { \
285-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_L2CAP", fmt, ## args); \
286279
if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(L2CAP, DEBUG)) BT_PRINT_D("BT_L2CAP", fmt, ## args); \
287280
}
288281

@@ -317,12 +310,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
317310
#if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED)
318311

319312
#define GAP_TRACE_ERROR(fmt, args...) { \
320-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_GAP", fmt, ## args); \
321313
if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(GAP, ERROR)) BT_PRINT_E("BT_GAP", fmt, ## args); \
322314
}
323315

324316
#define GAP_TRACE_WARNING(fmt, args...) { \
325-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_GAP", fmt, ## args); \
326317
if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(GAP, WARNING)) BT_PRINT_W("BT_GAP", fmt, ## args); \
327318
}
328319

@@ -332,7 +323,6 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
332323
}
333324

334325
#define GAP_TRACE_EVENT(fmt, args...) { \
335-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GAP", fmt, ## args); \
336326
if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(GAP, EVENT)) BT_PRINT_D("BT_GAP", fmt, ## args); \
337327
}
338328

@@ -450,12 +440,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
450440
#if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED)
451441

452442
#define GATT_TRACE_ERROR(fmt, args...) { \
453-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_GATT", fmt, ## args); \
454443
if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(GATT, ERROR)) BT_PRINT_E("BT_GATT", fmt, ## args); \
455444
}
456445

457446
#define GATT_TRACE_WARNING(fmt, args...) { \
458-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_GATT", fmt, ## args); \
459447
if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(GATT, WARNING)) BT_PRINT_W("BT_GATT", fmt, ## args); \
460448
}
461449

@@ -465,12 +453,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
465453
}
466454

467455
#define GATT_TRACE_EVENT(fmt, args...) { \
468-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GATT", fmt, ## args); \
469456
if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(GATT, EVENT)) BT_PRINT_D("BT_GATT", fmt, ## args); \
470457
}
471458

472459
#define GATT_TRACE_DEBUG(fmt, args...) { \
473-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_GATT", fmt, ## args); \
474460
if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(GATT, DEBUG)) BT_PRINT_D("BT_GATT", fmt, ## args); \
475461
}
476462

@@ -489,12 +475,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
489475
#if (BT_BLE_LOG_SPI_OUT_HOST_ENABLED && !CLASSIC_BT_INCLUDED)
490476

491477
#define SMP_TRACE_ERROR(fmt, args...) { \
492-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_ERROR, "BT_SMP", fmt, ## args); \
493478
if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR && BT_LOG_LEVEL_CHECK(SMP, ERROR)) BT_PRINT_E("BT_SMP", fmt, ## args); \
494479
}
495480

496481
#define SMP_TRACE_WARNING(fmt, args...) { \
497-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_WARN, "BT_SMP", fmt, ## args); \
498482
if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING && BT_LOG_LEVEL_CHECK(SMP, WARNING)) BT_PRINT_W("BT_SMP", fmt, ## args); \
499483
}
500484

@@ -504,12 +488,10 @@ static inline void trc_dump_buffer(const char *prefix, uint8_t *data, uint16_t l
504488
}
505489

506490
#define SMP_TRACE_EVENT(fmt, args...) { \
507-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_SMP", fmt, ## args); \
508491
if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT && BT_LOG_LEVEL_CHECK(SMP, EVENT)) BT_PRINT_D("BT_SMP", fmt, ## args); \
509492
}
510493

511494
#define SMP_TRACE_DEBUG(fmt, args...) { \
512-
ble_log_spi_out_printf_enh(BLE_LOG_SPI_OUT_SOURCE_BLUEDROID, BLE_LOG_SPI_OUT_LEVEL_DEBUG, "BT_SMP", fmt, ## args); \
513495
if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG && BT_LOG_LEVEL_CHECK(SMP, DEBUG)) BT_PRINT_D("BT_SMP", fmt, ## args); \
514496
}
515497

components/bt/host/bluedroid/stack/include/stack/gatt_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ typedef UINT16 tGATT_DISCONN_REASON;
139139
/* max length of an attribute value
140140
*/
141141
#ifndef GATT_MAX_ATTR_LEN
142-
#define GATT_MAX_ATTR_LEN 512
142+
#define GATT_MAX_ATTR_LEN GATT_MAX_MTU_SIZE
143143
#endif
144144

145145
/* default GATT MTU size over LE link

0 commit comments

Comments
 (0)