ESPHome  2024.4.1
Public Member Functions | Protected Member Functions | Protected Attributes
esphome::esp32_ble_client::BLEClientBase Class Reference

#include <ble_client_base.h>

Inheritance diagram for esphome::esp32_ble_client::BLEClientBase:
esphome::esp32_ble_tracker::ESPBTClient esphome::Component esphome::esp32_ble_tracker::ESPBTDeviceListener esphome::ble_client::BLEClient esphome::bluetooth_proxy::BluetoothConnection

Public Member Functions

void setup () override
 
void loop () override
 
float get_setup_priority () const override
 
void run_later (std::function< void()> &&f)
 
bool parse_device (const espbt::ESPBTDevice &device) override
 
void on_scan_end () override
 
bool gattc_event_handler (esp_gattc_cb_event_t event, esp_gatt_if_t gattc_if, esp_ble_gattc_cb_param_t *param) override
 
void gap_event_handler (esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param) override
 
void connect () override
 
esp_err_t pair ()
 
void disconnect ()
 
void release_services ()
 
bool connected ()
 
void set_auto_connect (bool auto_connect)
 
void set_address (uint64_t address)
 
std::string address_str () const
 
BLEServiceget_service (espbt::ESPBTUUID uuid)
 
BLEServiceget_service (uint16_t uuid)
 
BLECharacteristicget_characteristic (espbt::ESPBTUUID service, espbt::ESPBTUUID chr)
 
BLECharacteristicget_characteristic (uint16_t service, uint16_t chr)
 
BLECharacteristicget_characteristic (uint16_t handle)
 
BLEDescriptorget_descriptor (espbt::ESPBTUUID service, espbt::ESPBTUUID chr, espbt::ESPBTUUID descr)
 
BLEDescriptorget_descriptor (uint16_t service, uint16_t chr, uint16_t descr)
 
BLEDescriptorget_descriptor (uint16_t handle)
 
BLEDescriptorget_config_descriptor (uint16_t handle)
 
float parse_char_value (uint8_t *value, uint16_t length)
 
int get_gattc_if () const
 
uint8_t * get_remote_bda ()
 
esp_ble_addr_type_t get_remote_addr_type () const
 
void set_remote_addr_type (esp_ble_addr_type_t address_type)
 
uint16_t get_conn_id () const
 
uint64_t get_address () const
 
bool is_paired () const
 
uint8_t get_connection_index () const
 
virtual void set_connection_type (espbt::ConnectionType ct)
 
bool check_addr (esp_bd_addr_t &addr)
 
- Public Member Functions inherited from esphome::esp32_ble_tracker::ESPBTClient
virtual void set_state (ClientState st)
 
ClientState state () const
 
- Public Member Functions inherited from esphome::esp32_ble_tracker::ESPBTDeviceListener
virtual bool parse_devices (esp_ble_gap_cb_param_t::ble_scan_result_evt_param *advertisements, size_t count)
 
virtual AdvertisementParserType get_advertisement_parser_type ()
 
void set_parent (ESP32BLETracker *parent)
 
- Public Member Functions inherited from esphome::Component
virtual void dump_config ()
 
float get_actual_setup_priority () const
 
void set_setup_priority (float priority)
 
virtual float get_loop_priority () const
 priority of loop(). More...
 
void call ()
 
virtual void on_shutdown ()
 
virtual void on_safe_shutdown ()
 
uint32_t get_component_state () const
 
virtual void mark_failed ()
 Mark this component as failed. More...
 
bool is_failed ()
 
bool is_ready ()
 
virtual bool can_proceed ()
 
bool status_has_warning () const
 
bool status_has_error () const
 
void status_set_warning (const char *message="unspecified")
 
void status_set_error (const char *message="unspecified")
 
void status_clear_warning ()
 
void status_clear_error ()
 
void status_momentary_warning (const std::string &name, uint32_t length=5000)
 
void status_momentary_error (const std::string &name, uint32_t length=5000)
 
bool has_overridden_loop () const
 
void set_component_source (const char *source)
 Set where this component was loaded from for some debug messages. More...
 
const char * get_component_source () const
 Get the integration where this component was declared as a string. More...
 

Protected Member Functions

void log_event_ (const char *name)
 
- Protected Member Functions inherited from esphome::Component
virtual void call_loop ()
 
virtual void call_setup ()
 
virtual void call_dump_config ()
 
void set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a unique name. More...
 
void set_interval (uint32_t interval, std::function< void()> &&f)
 
bool cancel_interval (const std::string &name)
 Cancel an interval function. More...
 
void set_retry (const std::string &name, uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f)
 Set an retry function with a unique name. More...
 
void set_retry (uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f)
 
bool cancel_retry (const std::string &name)
 Cancel a retry function. More...
 
void set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a unique name. More...
 
void set_timeout (uint32_t timeout, std::function< void()> &&f)
 
bool cancel_timeout (const std::string &name)
 Cancel a timeout function. More...
 
void defer (const std::string &name, std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
void defer (std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
bool cancel_defer (const std::string &name)
 Cancel a defer callback using the specified name, name must not be empty. More...
 

Protected Attributes

int gattc_if_
 
esp_bd_addr_t remote_bda_
 
esp_ble_addr_type_t remote_addr_type_ {BLE_ADDR_TYPE_PUBLIC}
 
uint16_t conn_id_ {0xFFFF}
 
uint64_t address_ {0}
 
bool auto_connect_ {false}
 
std::string address_str_ {}
 
uint8_t connection_index_
 
int16_t service_count_ {0}
 
uint16_t mtu_ {23}
 
bool paired_ {false}
 
espbt::ConnectionType connection_type_ {espbt::ConnectionType::V1}
 
std::vector< BLEService * > services_
 
- Protected Attributes inherited from esphome::esp32_ble_tracker::ESPBTClient
ClientState state_
 
- Protected Attributes inherited from esphome::esp32_ble_tracker::ESPBTDeviceListener
ESP32BLETrackerparent_ {nullptr}
 
- Protected Attributes inherited from esphome::Component
uint32_t component_state_ {0x0000}
 State of this component. More...
 
float setup_priority_override_ {NAN}
 
const char * component_source_ {nullptr}
 

Additional Inherited Members

- Data Fields inherited from esphome::esp32_ble_tracker::ESPBTClient
int app_id
 

Detailed Description

Definition at line 24 of file ble_client_base.h.

Member Function Documentation

◆ address_str()

std::string esphome::esp32_ble_client::BLEClientBase::address_str ( ) const
inline

Definition at line 63 of file ble_client_base.h.

◆ check_addr()

bool esphome::esp32_ble_client::BLEClientBase::check_addr ( esp_bd_addr_t &  addr)
inline

Definition at line 90 of file ble_client_base.h.

◆ connect()

void esphome::esp32_ble_client::BLEClientBase::connect ( )
overridevirtual

Implements esphome::esp32_ble_tracker::ESPBTClient.

Definition at line 65 of file ble_client_base.cpp.

◆ connected()

bool esphome::esp32_ble_client::BLEClientBase::connected ( )
inline

Definition at line 41 of file ble_client_base.h.

◆ disconnect()

void esphome::esp32_ble_client::BLEClientBase::disconnect ( )

Definition at line 81 of file ble_client_base.cpp.

◆ gap_event_handler()

void esphome::esp32_ble_client::BLEClientBase::gap_event_handler ( esp_gap_ble_cb_event_t  event,
esp_ble_gap_cb_param_t *  param 
)
overridevirtual

Implements esphome::esp32_ble_tracker::ESPBTClient.

Definition at line 317 of file ble_client_base.cpp.

◆ gattc_event_handler()

bool esphome::esp32_ble_client::BLEClientBase::gattc_event_handler ( esp_gattc_cb_event_t  event,
esp_gatt_if_t  gattc_if,
esp_ble_gattc_cb_param_t *  param 
)
overridevirtual

Implements esphome::esp32_ble_tracker::ESPBTClient.

Definition at line 113 of file ble_client_base.cpp.

◆ get_address()

uint64_t esphome::esp32_ble_client::BLEClientBase::get_address ( ) const
inline

Definition at line 83 of file ble_client_base.h.

◆ get_characteristic() [1/3]

BLECharacteristic * esphome::esp32_ble_client::BLEClientBase::get_characteristic ( espbt::ESPBTUUID  service,
espbt::ESPBTUUID  chr 
)

Definition at line 417 of file ble_client_base.cpp.

◆ get_characteristic() [2/3]

BLECharacteristic * esphome::esp32_ble_client::BLEClientBase::get_characteristic ( uint16_t  service,
uint16_t  chr 
)

Definition at line 424 of file ble_client_base.cpp.

◆ get_characteristic() [3/3]

BLECharacteristic * esphome::esp32_ble_client::BLEClientBase::get_characteristic ( uint16_t  handle)

Definition at line 428 of file ble_client_base.cpp.

◆ get_config_descriptor()

BLEDescriptor * esphome::esp32_ble_client::BLEClientBase::get_config_descriptor ( uint16_t  handle)

Definition at line 440 of file ble_client_base.cpp.

◆ get_conn_id()

uint16_t esphome::esp32_ble_client::BLEClientBase::get_conn_id ( ) const
inline

Definition at line 82 of file ble_client_base.h.

◆ get_connection_index()

uint8_t esphome::esp32_ble_client::BLEClientBase::get_connection_index ( ) const
inline

Definition at line 86 of file ble_client_base.h.

◆ get_descriptor() [1/3]

BLEDescriptor * esphome::esp32_ble_client::BLEClientBase::get_descriptor ( espbt::ESPBTUUID  service,
espbt::ESPBTUUID  chr,
espbt::ESPBTUUID  descr 
)

Definition at line 453 of file ble_client_base.cpp.

◆ get_descriptor() [2/3]

BLEDescriptor * esphome::esp32_ble_client::BLEClientBase::get_descriptor ( uint16_t  service,
uint16_t  chr,
uint16_t  descr 
)

Definition at line 463 of file ble_client_base.cpp.

◆ get_descriptor() [3/3]

BLEDescriptor * esphome::esp32_ble_client::BLEClientBase::get_descriptor ( uint16_t  handle)

Definition at line 468 of file ble_client_base.cpp.

◆ get_gattc_if()

int esphome::esp32_ble_client::BLEClientBase::get_gattc_if ( ) const
inline

Definition at line 78 of file ble_client_base.h.

◆ get_remote_addr_type()

esp_ble_addr_type_t esphome::esp32_ble_client::BLEClientBase::get_remote_addr_type ( ) const
inline

Definition at line 80 of file ble_client_base.h.

◆ get_remote_bda()

uint8_t* esphome::esp32_ble_client::BLEClientBase::get_remote_bda ( )
inline

Definition at line 79 of file ble_client_base.h.

◆ get_service() [1/2]

BLEService * esphome::esp32_ble_client::BLEClientBase::get_service ( espbt::ESPBTUUID  uuid)

Definition at line 407 of file ble_client_base.cpp.

◆ get_service() [2/2]

BLEService * esphome::esp32_ble_client::BLEClientBase::get_service ( uint16_t  uuid)

Definition at line 415 of file ble_client_base.cpp.

◆ get_setup_priority()

float esphome::esp32_ble_client::BLEClientBase::get_setup_priority ( ) const
overridevirtual

Reimplemented from esphome::Component.

Definition at line 45 of file ble_client_base.cpp.

◆ is_paired()

bool esphome::esp32_ble_client::BLEClientBase::is_paired ( ) const
inline

Definition at line 84 of file ble_client_base.h.

◆ log_event_()

void esphome::esp32_ble_client::BLEClientBase::log_event_ ( const char *  name)
protected

Definition at line 109 of file ble_client_base.cpp.

◆ loop()

void esphome::esp32_ble_client::BLEClientBase::loop ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 25 of file ble_client_base.cpp.

◆ on_scan_end()

void esphome::esp32_ble_client::BLEClientBase::on_scan_end ( )
inlineoverridevirtual

Reimplemented from esphome::esp32_ble_tracker::ESPBTDeviceListener.

Definition at line 32 of file ble_client_base.h.

◆ pair()

esp_err_t esphome::esp32_ble_client::BLEClientBase::pair ( )

Definition at line 79 of file ble_client_base.cpp.

◆ parse_char_value()

float esphome::esp32_ble_client::BLEClientBase::parse_char_value ( uint8_t *  value,
uint16_t  length 
)

Definition at line 354 of file ble_client_base.cpp.

◆ parse_device()

bool esphome::esp32_ble_client::BLEClientBase::parse_device ( const espbt::ESPBTDevice device)
overridevirtual

◆ release_services()

void esphome::esp32_ble_client::BLEClientBase::release_services ( )

Definition at line 100 of file ble_client_base.cpp.

◆ run_later()

void esphome::esp32_ble_client::BLEClientBase::run_later ( std::function< void()> &&  f)

Definition at line 313 of file ble_client_base.cpp.

◆ set_address()

void esphome::esp32_ble_client::BLEClientBase::set_address ( uint64_t  address)
inline

Definition at line 45 of file ble_client_base.h.

◆ set_auto_connect()

void esphome::esp32_ble_client::BLEClientBase::set_auto_connect ( bool  auto_connect)
inline

Definition at line 43 of file ble_client_base.h.

◆ set_connection_type()

virtual void esphome::esp32_ble_client::BLEClientBase::set_connection_type ( espbt::ConnectionType  ct)
inlinevirtual

Definition at line 88 of file ble_client_base.h.

◆ set_remote_addr_type()

void esphome::esp32_ble_client::BLEClientBase::set_remote_addr_type ( esp_ble_addr_type_t  address_type)
inline

Definition at line 81 of file ble_client_base.h.

◆ setup()

void esphome::esp32_ble_client::BLEClientBase::setup ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 20 of file ble_client_base.cpp.

Field Documentation

◆ address_

uint64_t esphome::esp32_ble_client::BLEClientBase::address_ {0}
protected

Definition at line 97 of file ble_client_base.h.

◆ address_str_

std::string esphome::esp32_ble_client::BLEClientBase::address_str_ {}
protected

Definition at line 99 of file ble_client_base.h.

◆ auto_connect_

bool esphome::esp32_ble_client::BLEClientBase::auto_connect_ {false}
protected

Definition at line 98 of file ble_client_base.h.

◆ conn_id_

uint16_t esphome::esp32_ble_client::BLEClientBase::conn_id_ {0xFFFF}
protected

Definition at line 96 of file ble_client_base.h.

◆ connection_index_

uint8_t esphome::esp32_ble_client::BLEClientBase::connection_index_
protected

Definition at line 100 of file ble_client_base.h.

◆ connection_type_

espbt::ConnectionType esphome::esp32_ble_client::BLEClientBase::connection_type_ {espbt::ConnectionType::V1}
protected

Definition at line 104 of file ble_client_base.h.

◆ gattc_if_

int esphome::esp32_ble_client::BLEClientBase::gattc_if_
protected

Definition at line 93 of file ble_client_base.h.

◆ mtu_

uint16_t esphome::esp32_ble_client::BLEClientBase::mtu_ {23}
protected

Definition at line 102 of file ble_client_base.h.

◆ paired_

bool esphome::esp32_ble_client::BLEClientBase::paired_ {false}
protected

Definition at line 103 of file ble_client_base.h.

◆ remote_addr_type_

esp_ble_addr_type_t esphome::esp32_ble_client::BLEClientBase::remote_addr_type_ {BLE_ADDR_TYPE_PUBLIC}
protected

Definition at line 95 of file ble_client_base.h.

◆ remote_bda_

esp_bd_addr_t esphome::esp32_ble_client::BLEClientBase::remote_bda_
protected

Definition at line 94 of file ble_client_base.h.

◆ service_count_

int16_t esphome::esp32_ble_client::BLEClientBase::service_count_ {0}
protected

Definition at line 101 of file ble_client_base.h.

◆ services_

std::vector<BLEService *> esphome::esp32_ble_client::BLEClientBase::services_
protected

Definition at line 105 of file ble_client_base.h.


The documentation for this class was generated from the following files: