From 615d5913672a86d43a5c188e01b71327835384ff Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 19 Jan 2023 19:31:00 -1000 Subject: [PATCH] Always send the MTU request for BLE v3 cached connections (#4322) closes https://github.com/esphome/esphome/pull/4321 fixes https://github.com/esphome/issues/issues/4041 fixes https://github.com/esphome/issues/issues/3951 --- .../components/esp32_ble_client/ble_client_base.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/esphome/components/esp32_ble_client/ble_client_base.cpp b/esphome/components/esp32_ble_client/ble_client_base.cpp index 017d65573d..2337a5fe93 100644 --- a/esphome/components/esp32_ble_client/ble_client_base.cpp +++ b/esphome/components/esp32_ble_client/ble_client_base.cpp @@ -132,16 +132,16 @@ bool BLEClientBase::gattc_event_handler(esp_gattc_cb_event_t event, esp_gatt_if_ this->set_state(espbt::ClientState::IDLE); break; } - if (this->connection_type_ == espbt::ConnectionType::V3_WITH_CACHE) { - this->set_state(espbt::ClientState::CONNECTED); - this->state_ = espbt::ClientState::ESTABLISHED; - break; - } auto ret = esp_ble_gattc_send_mtu_req(this->gattc_if_, param->open.conn_id); if (ret) { ESP_LOGW(TAG, "[%d] [%s] esp_ble_gattc_send_mtu_req failed, status=%x", this->connection_index_, this->address_str_.c_str(), ret); } + if (this->connection_type_ == espbt::ConnectionType::V3_WITH_CACHE) { + this->set_state(espbt::ClientState::CONNECTED); + this->state_ = espbt::ClientState::ESTABLISHED; + break; + } esp_ble_gattc_search_service(esp_gattc_if, param->cfg_mtu.conn_id, nullptr); break; }