From d04ef2378e87f93a26d57d533d2cbb95a8d3edbb Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Sun, 9 Aug 2026 12:18:35 -0500 Subject: [PATCH] Contract doc: writes without response also report on_write_result Both backends report the no-response completion (Bluedroid at WRITE_CHAR_EVT, rp2 synthesized or via the can-send path); the neutral write action already relies on it. --- esphome/components/ble_device_base/ble_gatt_client.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/esphome/components/ble_device_base/ble_gatt_client.h b/esphome/components/ble_device_base/ble_gatt_client.h index 1df1de5b09..bb86dfa751 100644 --- a/esphome/components/ble_device_base/ble_gatt_client.h +++ b/esphome/components/ble_device_base/ble_gatt_client.h @@ -123,8 +123,8 @@ class GattClientListener { // - completions: connect and gatt_disconnect land in on_connection_state, // discover_services in on_service_discovery_done, pair in // on_pairing_result, reads in on_read_result, notify_characteristic in -// on_notify_state, characteristic writes with response and descriptor -// writes in on_write_result. +// on_notify_state, characteristic writes (with and without response) and +// descriptor writes in on_write_result. template concept BLEGattConnectionContract = requires(T conn, GattClientListener *listener, const uint8_t *data) { conn.set_listener(listener);