ESPHome
2022.12.8
|
#include <esp32_ble_tracker.h>
Public Member Functions | |
void | set_scan_duration (uint32_t scan_duration) |
void | set_scan_interval (uint32_t scan_interval) |
void | set_scan_window (uint32_t scan_window) |
void | set_scan_active (bool scan_active) |
void | set_scan_continuous (bool scan_continuous) |
void | setup () override |
Setup the FreeRTOS task and the Bluetooth stack. More... | |
void | dump_config () override |
float | get_setup_priority () const override |
void | loop () override |
void | register_listener (ESPBTDeviceListener *listener) |
void | register_client (ESPBTClient *client) |
void | print_bt_device_info (const ESPBTDevice &device) |
void | start_scan () |
void | stop_scan () |
![]() | |
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 () |
virtual bool | can_proceed () |
bool | status_has_warning () |
bool | status_has_error () |
void | status_set_warning () |
void | status_set_error () |
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 | start_scan_ (bool first) |
Start a single scan by setting up the parameters and doing some esp-idf calls. More... | |
void | end_of_scan_ () |
Called when a scan ends. More... | |
void | real_gap_event_handler_ (esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param) |
void | gap_scan_result_ (const esp_ble_gap_cb_param_t::ble_scan_result_evt_param ¶m) |
Called when a ESP_GAP_BLE_SCAN_RESULT_EVT event is received. More... | |
void | gap_scan_set_param_complete_ (const esp_ble_gap_cb_param_t::ble_scan_param_cmpl_evt_param ¶m) |
Called when a ESP_GAP_BLE_SCAN_PARAM_SET_COMPLETE_EVT event is received. More... | |
void | gap_scan_start_complete_ (const esp_ble_gap_cb_param_t::ble_scan_start_cmpl_evt_param ¶m) |
Called when a ESP_GAP_BLE_SCAN_START_COMPLETE_EVT event is received. More... | |
void | gap_scan_stop_complete_ (const esp_ble_gap_cb_param_t::ble_scan_stop_cmpl_evt_param ¶m) |
Called when a ESP_GAP_BLE_SCAN_STOP_COMPLETE_EVT event is received. More... | |
void | real_gattc_event_handler_ (esp_gattc_cb_event_t event, esp_gatt_if_t gattc_if, esp_ble_gattc_cb_param_t *param) |
![]() | |
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()> &&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()> &&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... | |
Static Protected Member Functions | |
static bool | ble_setup () |
The FreeRTOS task managing the bluetooth interface. More... | |
static void | gap_event_handler (esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param) |
Callback that will handle all GAP events and redistribute them to other callbacks. More... | |
static void | gattc_event_handler (esp_gattc_cb_event_t event, esp_gatt_if_t gattc_if, esp_ble_gattc_cb_param_t *param) |
Callback that will handle all GATTC events and redistribute them to other callbacks. More... | |
Protected Attributes | |
int | app_id_ |
std::vector< uint64_t > | already_discovered_ |
Vector of addresses that have already been printed in print_bt_device_info. More... | |
std::vector< ESPBTDeviceListener * > | listeners_ |
std::vector< ESPBTClient * > | clients_ |
Client parameters. More... | |
esp_ble_scan_params_t | scan_params_ |
A structure holding the ESP BLE scan parameters. More... | |
uint32_t | scan_duration_ |
The interval in seconds to perform scans. More... | |
uint32_t | scan_interval_ |
uint32_t | scan_window_ |
uint8_t | scan_start_fail_count_ |
bool | scan_continuous_ |
bool | scan_active_ |
bool | scanner_idle_ |
SemaphoreHandle_t | scan_result_lock_ |
SemaphoreHandle_t | scan_end_lock_ |
size_t | scan_result_index_ {0} |
esp_ble_gap_cb_param_t::ble_scan_result_evt_param | scan_result_buffer_ [16] |
esp_bt_status_t | scan_start_failed_ {ESP_BT_STATUS_SUCCESS} |
esp_bt_status_t | scan_set_param_failed_ {ESP_BT_STATUS_SUCCESS} |
Queue< BLEEvent > | ble_events_ |
![]() | |
uint32_t | component_state_ {0x0000} |
State of this component. More... | |
float | setup_priority_override_ {NAN} |
const char * | component_source_ {nullptr} |
Definition at line 194 of file esp32_ble_tracker.h.
|
staticprotected |
The FreeRTOS task managing the bluetooth interface.
Definition at line 241 of file esp32_ble_tracker.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 869 of file esp32_ble_tracker.cpp.
|
protected |
Called when a scan ends.
Definition at line 349 of file esp32_ble_tracker.cpp.
|
staticprotected |
Callback that will handle all GAP events and redistribute them to other callbacks.
Definition at line 371 of file esp32_ble_tracker.cpp.
|
protected |
Called when a ESP_GAP_BLE_SCAN_RESULT_EVT
event is received.
Definition at line 416 of file esp32_ble_tracker.cpp.
|
protected |
Called when a ESP_GAP_BLE_SCAN_PARAM_SET_COMPLETE_EVT
event is received.
Definition at line 398 of file esp32_ble_tracker.cpp.
|
protected |
Called when a ESP_GAP_BLE_SCAN_START_COMPLETE_EVT
event is received.
Definition at line 402 of file esp32_ble_tracker.cpp.
|
protected |
Called when a ESP_GAP_BLE_SCAN_STOP_COMPLETE_EVT
event is received.
Definition at line 412 of file esp32_ble_tracker.cpp.
|
staticprotected |
Callback that will handle all GATTC events and redistribute them to other callbacks.
Definition at line 429 of file esp32_ble_tracker.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 48 of file esp32_ble_tracker.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 77 of file esp32_ble_tracker.cpp.
void esphome::esp32_ble_tracker::ESP32BLETracker::print_bt_device_info | ( | const ESPBTDevice & | device | ) |
Definition at line 878 of file esp32_ble_tracker.cpp.
|
protected |
Definition at line 376 of file esp32_ble_tracker.cpp.
|
protected |
Definition at line 435 of file esp32_ble_tracker.cpp.
void esphome::esp32_ble_tracker::ESP32BLETracker::register_client | ( | ESPBTClient * | client | ) |
Definition at line 366 of file esp32_ble_tracker.cpp.
|
inline |
Definition at line 209 of file esp32_ble_tracker.h.
|
inline |
Definition at line 199 of file esp32_ble_tracker.h.
|
inline |
Definition at line 200 of file esp32_ble_tracker.h.
|
inline |
Definition at line 196 of file esp32_ble_tracker.h.
|
inline |
Definition at line 197 of file esp32_ble_tracker.h.
|
inline |
Definition at line 198 of file esp32_ble_tracker.h.
|
overridevirtual |
Setup the FreeRTOS task and the Bluetooth stack.
Reimplemented from esphome::Component.
Definition at line 50 of file esp32_ble_tracker.cpp.
void esphome::esp32_ble_tracker::ESP32BLETracker::start_scan | ( | ) |
Definition at line 226 of file esp32_ble_tracker.cpp.
|
protected |
Start a single scan by setting up the parameters and doing some esp-idf calls.
Definition at line 320 of file esp32_ble_tracker.cpp.
void esphome::esp32_ble_tracker::ESP32BLETracker::stop_scan | ( | ) |
Definition at line 234 of file esp32_ble_tracker.cpp.
|
protected |
Vector of addresses that have already been printed in print_bt_device_info.
Definition at line 246 of file esp32_ble_tracker.h.
|
protected |
Definition at line 240 of file esp32_ble_tracker.h.
Definition at line 267 of file esp32_ble_tracker.h.
|
protected |
Client parameters.
Definition at line 249 of file esp32_ble_tracker.h.
|
protected |
Definition at line 247 of file esp32_ble_tracker.h.
|
protected |
Definition at line 258 of file esp32_ble_tracker.h.
|
protected |
Definition at line 257 of file esp32_ble_tracker.h.
|
protected |
The interval in seconds to perform scans.
Definition at line 253 of file esp32_ble_tracker.h.
|
protected |
Definition at line 261 of file esp32_ble_tracker.h.
|
protected |
Definition at line 254 of file esp32_ble_tracker.h.
|
protected |
A structure holding the ESP BLE scan parameters.
Definition at line 251 of file esp32_ble_tracker.h.
|
protected |
Definition at line 263 of file esp32_ble_tracker.h.
|
protected |
Definition at line 262 of file esp32_ble_tracker.h.
|
protected |
Definition at line 260 of file esp32_ble_tracker.h.
|
protected |
Definition at line 265 of file esp32_ble_tracker.h.
|
protected |
Definition at line 256 of file esp32_ble_tracker.h.
|
protected |
Definition at line 264 of file esp32_ble_tracker.h.
|
protected |
Definition at line 255 of file esp32_ble_tracker.h.
|
protected |
Definition at line 259 of file esp32_ble_tracker.h.