- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 2.1k
Open
Description
Feedback
The esp32_ble_server documentation currently lists both notify: true and indicate: true as options for characteristics.
However, it is not clear to users that:
- There is no separate indicateaction – you must always useble_server.characteristic.notifyto send updates.
- Even if a characteristic is marked with indicate: trueand a client subscribes to Indications, ESPHome does not currently wait for the client’s acknowledgment (ACK). Indications are effectively handled the same as Notification
Suggested change
Add a clarification note to the esp32_ble_server documentation, e.g.:
:::note
### Notifications vs. Indications
ESPHome supports both `notify: true` and `indicate: true` in characteristic configuration.  
However, at the moment there is **no separate action** to send an Indication – you must always use the
[`ble_server.characteristic.notify`](#ble_server-characteristic-notify-action) action (or the `.notify()` method in a lambda).
⚠️ **Important:** Even if a characteristic is marked with `indicate: true` and the client subscribes to Indications,
ESPHome does not yet wait for the client’s acknowledgment (ACK).  
Internally, Indications are currently handled the same way as Notifications. This means they work,
but without the guaranteed delivery semantics normally provided by Indications.
:::
Links:
https://api-docs.esphome.io/esp32__ble__server_2ble__characteristic_8cpp_source#:~:text=Remove%20this%20block%20when%20INDICATE%20acknowledgment%20is%20supported
https://api-docs.esphome.io/classesphome_1_1esp32__ble__server_1_1_b_l_e_characteristic.html#a6a4826a8efca2b67671865485856147f
https://esphome.io/components/esp32_ble_server/
### URL
https://esphome.io/components/esp32_ble_server/
### Additional information
_No response_Metadata
Metadata
Assignees
Labels
No labels