From 380660dcdb334cd936bd7eef2d9fa403951911dc Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 9 Nov 2026 08:24:27 -0600 Subject: [PATCH] [esp32_ble_server] Size the BLE2902 value buffer to its 2 byte value (#22454) --- esphome/components/esp32_ble_server/ble_2902.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/esphome/components/esp32_ble_server/ble_2902.cpp b/esphome/components/esp32_ble_server/ble_2902.cpp index 90d0871a967..d1f4a4c7776 100644 --- a/esphome/components/esp32_ble_server/ble_2902.cpp +++ b/esphome/components/esp32_ble_server/ble_2902.cpp @@ -3,14 +3,13 @@ #ifdef USE_ESP32 -#include +#include namespace esphome::esp32_ble_server { -BLE2902::BLE2902() : BLEDescriptor(esp32_ble::ESPBTUUID::from_uint16(0x2902)) { - this->value_.attr_len = 2; - uint8_t data[2] = {0, 0}; - memcpy(this->value_.attr_value, data, 2); +// The client configuration value is always 2 bytes +BLE2902::BLE2902() : BLEDescriptor(esp32_ble::ESPBTUUID::from_uint16(ESP_GATT_UUID_CHAR_CLIENT_CONFIG), 2) { + this->set_value({0, 0}); } } // namespace esphome::esp32_ble_server