From 3e115c3b643a8e5299ea4fde74e51635f0d6cd2e Mon Sep 17 00:00:00 2001 From: Gavin Mai <7184919+gmaijoe@users.noreply.github.com> Date: Fri, 13 Nov 2026 03:35:23 -0400 Subject: [PATCH] Log ESP32 BLE disconnect and authentication failure reasons --- src/helpers/esp32/SerialBLEInterface.cpp | 8 ++++++-- src/helpers/esp32/SerialBLEInterface.h | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/helpers/esp32/SerialBLEInterface.cpp b/src/helpers/esp32/SerialBLEInterface.cpp index 6371cf33537..57ee53b4058 100644 --- a/src/helpers/esp32/SerialBLEInterface.cpp +++ b/src/helpers/esp32/SerialBLEInterface.cpp @@ -79,7 +79,7 @@ void SerialBLEInterface::onAuthenticationComplete(esp_ble_auth_cmpl_t cmpl) { BLE_DEBUG_PRINTLN(" - SecurityCallback - Authentication Success"); deviceConnected = true; } else { - BLE_DEBUG_PRINTLN(" - SecurityCallback - Authentication Failure*"); + BLE_DEBUG_PRINTLN("Authentication failed: reason=0x%02x", cmpl.fail_reason); //pServer->removePeerDevice(pServer->getConnId(), true); pServer->disconnect(pServer->getConnId()); @@ -102,13 +102,17 @@ void SerialBLEInterface::onMtuChanged(BLEServer* pServer, esp_ble_gatts_cb_param } void SerialBLEInterface::onDisconnect(BLEServer* pServer) { - BLE_DEBUG_PRINTLN("onDisconnect()"); deviceConnected = false; if (_isEnabled) { adv_restart_time = millis() + ADVERT_RESTART_DELAY; } } +void SerialBLEInterface::onDisconnect(BLEServer* pServer, esp_ble_gatts_cb_param_t* param) { + BLE_DEBUG_PRINTLN("onDisconnect(), conn_id=%u, reason=0x%02x, uptime_ms=%lu", + param->disconnect.conn_id, param->disconnect.reason, millis()); +} + // -------- BLECharacteristicCallbacks methods void SerialBLEInterface::onWrite(BLECharacteristic* pCharacteristic, esp_ble_gatts_cb_param_t* param) { diff --git a/src/helpers/esp32/SerialBLEInterface.h b/src/helpers/esp32/SerialBLEInterface.h index 9fb6adba943..18749497ecc 100644 --- a/src/helpers/esp32/SerialBLEInterface.h +++ b/src/helpers/esp32/SerialBLEInterface.h @@ -47,6 +47,7 @@ class SerialBLEInterface : public BaseSerialInterface, BLESecurityCallbacks, BLE void onConnect(BLEServer* pServer, esp_ble_gatts_cb_param_t *param) override; void onMtuChanged(BLEServer* pServer, esp_ble_gatts_cb_param_t* param) override; void onDisconnect(BLEServer* pServer) override; + void onDisconnect(BLEServer* pServer, esp_ble_gatts_cb_param_t* param) override; // BLECharacteristicCallbacks methods void onWrite(BLECharacteristic* pCharacteristic, esp_ble_gatts_cb_param_t* param) override;