ESPHome 2025.9.0-dev
Loading...
Searching...
No Matches
esphome::ld2450::LD2450Component Class Reference

#include <ld2450.h>

Inheritance diagram for esphome::ld2450::LD2450Component:
esphome::Component esphome::uart::UARTDevice

Protected Member Functions

void send_command_ (uint8_t command_str, const uint8_t *command_value, uint8_t command_value_len)
 
void set_config_mode_ (bool enable)
 
void handle_periodic_data_ ()
 
bool handle_ack_data_ ()
 
void process_zone_ ()
 
void readline_ (int readch)
 
void get_version_ ()
 
void get_mac_ ()
 
void query_target_tracking_mode_ ()
 
void query_zone_ ()
 
void restart_ ()
 
void send_set_zone_command_ ()
 
void save_to_flash_ (float value)
 
float restore_from_flash_ ()
 
bool get_timeout_status_ (uint32_t check_millis)
 
uint8_t count_targets_in_zone_ (const Zone &zone, bool is_moving)
 
- Protected Member Functions inherited from esphome::Component
virtual void call_loop ()
 
virtual void call_setup ()
 
virtual void call_dump_config ()
 
void set_component_state_ (uint8_t state)
 Helper to set component state (clears state bits and sets new state)
 
void set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a unique name.
 
void set_interval (const char *name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a const char* name.
 
void set_interval (uint32_t interval, std::function< void()> &&f)
 
bool cancel_interval (const std::string &name)
 Cancel an interval function.
 
bool cancel_interval (const char *name)
 
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.
 
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.
 
void set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a unique name.
 
void set_timeout (const char *name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a const char* name.
 
void set_timeout (uint32_t timeout, std::function< void()> &&f)
 
bool cancel_timeout (const std::string &name)
 Cancel a timeout function.
 
bool cancel_timeout (const char *name)
 
void defer (const std::string &name, std::function< void()> &&f)
 Defer a callback to the next loop() call.
 
void defer (const char *name, std::function< void()> &&f)
 Defer a callback to the next loop() call with a const char* name.
 
void defer (std::function< void()> &&f)
 Defer a callback to the next loop() call.
 
bool cancel_defer (const std::string &name)
 Cancel a defer callback using the specified name, name must not be empty.
 

Protected Attributes

uint32_t presence_millis_ = 0
 
uint32_t still_presence_millis_ = 0
 
uint32_t moving_presence_millis_ = 0
 
uint16_t timeout_ = 5
 
uint8_t buffer_data_ [MAX_LINE_LENGTH]
 
uint8_t mac_address_ [6] = {0, 0, 0, 0, 0, 0}
 
uint8_t version_ [6] = {0, 0, 0, 0, 0, 0}
 
uint8_t buffer_pos_ = 0
 
uint8_t zone_type_ = 0
 
bool bluetooth_on_ {false}
 
Target target_info_ [MAX_TARGETS]
 
Zone zone_config_ [MAX_ZONES]
 
ESPPreferenceObject pref_
 
ZoneOfNumbers zone_numbers_ [MAX_ZONES]
 
std::array< SensorWithDedup< int16_t > *, MAX_TARGETS > move_x_sensors_ {}
 
std::array< SensorWithDedup< int16_t > *, MAX_TARGETS > move_y_sensors_ {}
 
std::array< SensorWithDedup< int16_t > *, MAX_TARGETS > move_speed_sensors_ {}
 
std::array< SensorWithDedup< float > *, MAX_TARGETS > move_angle_sensors_ {}
 
std::array< SensorWithDedup< uint16_t > *, MAX_TARGETS > move_distance_sensors_ {}
 
std::array< SensorWithDedup< uint16_t > *, MAX_TARGETS > move_resolution_sensors_ {}
 
std::array< SensorWithDedup< uint8_t > *, MAX_ZONES > zone_target_count_sensors_ {}
 
std::array< SensorWithDedup< uint8_t > *, MAX_ZONES > zone_still_target_count_sensors_ {}
 
std::array< SensorWithDedup< uint8_t > *, MAX_ZONES > zone_moving_target_count_sensors_ {}
 
std::array< text_sensor::TextSensor *, 3 > direction_text_sensors_ {}
 
- Protected Attributes inherited from esphome::Component
const char * component_source_ {nullptr}
 
uint16_t warn_if_blocking_over_ {WARN_IF_BLOCKING_OVER_MS}
 Warn if blocked for this many ms (max 65.5s)
 
uint8_t component_state_ {0x00}
 State of this component - each bit has a purpose: Bits 0-2: Component state (0x00=CONSTRUCTION, 0x01=SETUP, 0x02=LOOP, 0x03=FAILED, 0x04=LOOP_DONE) Bit 3: STATUS_LED_WARNING Bit 4: STATUS_LED_ERROR Bits 5-7: Unused - reserved for future expansion.
 
volatile bool pending_enable_loop_ {false}
 ISR-safe flag for enable_loop_soon_any_context.
 
- Protected Attributes inherited from esphome::uart::UARTDevice
UARTComponentparent_ {nullptr}
 

Additional Inherited Members

- Public Member Functions inherited from esphome::Component
virtual void setup ()
 Where the component's initialization should happen.
 
virtual float get_setup_priority () const
 priority of setup().
 
float get_actual_setup_priority () const
 
void set_setup_priority (float priority)
 
virtual float get_loop_priority () const
 priority of loop().
 
void call ()
 
virtual void on_shutdown ()
 
virtual void on_safe_shutdown ()
 
virtual bool teardown ()
 Called during teardown to allow component to gracefully finish operations.
 
virtual void on_powerdown ()
 Called after teardown is complete to power down hardware.
 
uint8_t get_component_state () const
 
void reset_to_construction_state ()
 Reset this component back to the construction state to allow setup to run again.
 
bool is_in_loop_state () const
 Check if this component has completed setup and is in the loop state.
 
virtual void mark_failed ()
 Mark this component as failed.
 
void mark_failed (const char *message)
 
void disable_loop ()
 Disable this component's loop.
 
void enable_loop ()
 Enable this component's loop.
 
void enable_loop_soon_any_context ()
 Thread and ISR-safe version of enable_loop() that can be called from any context.
 
bool is_failed () const
 
bool is_ready () const
 
virtual bool can_proceed ()
 
bool status_has_warning () const
 
bool status_has_error () const
 
void status_set_warning (const char *message=nullptr)
 
void status_set_error (const char *message=nullptr)
 
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.
 
const char * get_component_source () const
 Get the integration where this component was declared as a string.
 
bool should_warn_of_blocking (uint32_t blocking_time)
 
- Public Member Functions inherited from esphome::uart::UARTDevice
 UARTDevice ()=default
 
 UARTDevice (UARTComponent *parent)
 
void set_uart_parent (UARTComponent *parent)
 
void write_byte (uint8_t data)
 
void write_array (const uint8_t *data, size_t len)
 
void write_array (const std::vector< uint8_t > &data)
 
template<size_t N>
void write_array (const std::array< uint8_t, N > &data)
 
void write_str (const char *str)
 
bool read_byte (uint8_t *data)
 
bool peek_byte (uint8_t *data)
 
bool read_array (uint8_t *data, size_t len)
 
template<size_t N>
optional< std::array< uint8_t, N > > read_array ()
 
int available ()
 
void flush ()
 
int read ()
 
size_t write (uint8_t data)
 
int peek ()
 
void check_uart_settings (uint32_t baud_rate, uint8_t stop_bits=1, UARTParityOptions parity=UART_CONFIG_PARITY_NONE, uint8_t data_bits=8)
 Check that the configuration of the UART bus matches the provided values and otherwise print a warning.
 

Detailed Description

Definition at line 77 of file ld2450.h.

Member Function Documentation

◆ count_targets_in_zone_()

uint8_t esphome::ld2450::LD2450Component::count_targets_in_zone_ ( const Zone & zone,
bool is_moving )
protected

Definition at line 285 of file ld2450.cpp.

◆ get_mac_()

void esphome::ld2450::LD2450Component::get_mac_ ( )
protected

Definition at line 840 of file ld2450.cpp.

◆ get_timeout_status_()

bool esphome::ld2450::LD2450Component::get_timeout_status_ ( uint32_t check_millis)
protected

Definition at line 342 of file ld2450.cpp.

◆ get_version_()

void esphome::ld2450::LD2450Component::get_version_ ( )
protected

Definition at line 837 of file ld2450.cpp.

◆ handle_ack_data_()

bool esphome::ld2450::LD2450Component::handle_ack_data_ ( )
protected

Definition at line 606 of file ld2450.cpp.

◆ handle_periodic_data_()

void esphome::ld2450::LD2450Component::handle_periodic_data_ ( )
protected

Definition at line 432 of file ld2450.cpp.

◆ process_zone_()

void esphome::ld2450::LD2450Component::process_zone_ ( )
protected

Definition at line 353 of file ld2450.cpp.

◆ query_target_tracking_mode_()

void esphome::ld2450::LD2450Component::query_target_tracking_mode_ ( )
protected

Definition at line 846 of file ld2450.cpp.

◆ query_zone_()

void esphome::ld2450::LD2450Component::query_zone_ ( )
protected

Definition at line 849 of file ld2450.cpp.

◆ readline_()

void esphome::ld2450::LD2450Component::readline_ ( int readch)
protected

Definition at line 746 of file ld2450.cpp.

◆ restart_()

void esphome::ld2450::LD2450Component::restart_ ( )
protected

Definition at line 834 of file ld2450.cpp.

◆ restore_from_flash_()

float esphome::ld2450::LD2450Component::restore_from_flash_ ( )
protected

Definition at line 935 of file ld2450.cpp.

◆ save_to_flash_()

void esphome::ld2450::LD2450Component::save_to_flash_ ( float value)
protected

Definition at line 932 of file ld2450.cpp.

◆ send_command_()

void esphome::ld2450::LD2450Component::send_command_ ( uint8_t command_str,
const uint8_t * command_value,
uint8_t command_value_len )
protected

Definition at line 405 of file ld2450.cpp.

◆ send_set_zone_command_()

void esphome::ld2450::LD2450Component::send_set_zone_command_ ( )
protected

Definition at line 325 of file ld2450.cpp.

◆ set_config_mode_()

void esphome::ld2450::LD2450Component::set_config_mode_ ( bool enable)
protected

Definition at line 778 of file ld2450.cpp.

Field Documentation

◆ bluetooth_on_

bool esphome::ld2450::LD2450Component::bluetooth_on_ {false}
protected

Definition at line 172 of file ld2450.h.

◆ buffer_data_

uint8_t esphome::ld2450::LD2450Component::buffer_data_[MAX_LINE_LENGTH]
protected

Definition at line 167 of file ld2450.h.

◆ buffer_pos_

uint8_t esphome::ld2450::LD2450Component::buffer_pos_ = 0
protected

Definition at line 170 of file ld2450.h.

◆ direction_text_sensors_

std::array<text_sensor::TextSensor *, 3> esphome::ld2450::LD2450Component::direction_text_sensors_ {}
protected

Definition at line 192 of file ld2450.h.

◆ mac_address_

uint8_t esphome::ld2450::LD2450Component::mac_address_[6] = {0, 0, 0, 0, 0, 0}
protected

Definition at line 168 of file ld2450.h.

◆ move_angle_sensors_

std::array<SensorWithDedup<float> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_angle_sensors_ {}
protected

Definition at line 184 of file ld2450.h.

◆ move_distance_sensors_

std::array<SensorWithDedup<uint16_t> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_distance_sensors_ {}
protected

Definition at line 185 of file ld2450.h.

◆ move_resolution_sensors_

std::array<SensorWithDedup<uint16_t> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_resolution_sensors_ {}
protected

Definition at line 186 of file ld2450.h.

◆ move_speed_sensors_

std::array<SensorWithDedup<int16_t> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_speed_sensors_ {}
protected

Definition at line 183 of file ld2450.h.

◆ move_x_sensors_

std::array<SensorWithDedup<int16_t> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_x_sensors_ {}
protected

Definition at line 181 of file ld2450.h.

◆ move_y_sensors_

std::array<SensorWithDedup<int16_t> *, MAX_TARGETS> esphome::ld2450::LD2450Component::move_y_sensors_ {}
protected

Definition at line 182 of file ld2450.h.

◆ moving_presence_millis_

uint32_t esphome::ld2450::LD2450Component::moving_presence_millis_ = 0
protected

Definition at line 165 of file ld2450.h.

◆ pref_

ESPPreferenceObject esphome::ld2450::LD2450Component::pref_
protected

Definition at line 177 of file ld2450.h.

◆ presence_millis_

uint32_t esphome::ld2450::LD2450Component::presence_millis_ = 0
protected

Definition at line 163 of file ld2450.h.

◆ still_presence_millis_

uint32_t esphome::ld2450::LD2450Component::still_presence_millis_ = 0
protected

Definition at line 164 of file ld2450.h.

◆ target_info_

Target esphome::ld2450::LD2450Component::target_info_[MAX_TARGETS]
protected

Definition at line 173 of file ld2450.h.

◆ timeout_

uint16_t esphome::ld2450::LD2450Component::timeout_ = 5
protected

Definition at line 166 of file ld2450.h.

◆ version_

uint8_t esphome::ld2450::LD2450Component::version_[6] = {0, 0, 0, 0, 0, 0}
protected

Definition at line 169 of file ld2450.h.

◆ zone_config_

Zone esphome::ld2450::LD2450Component::zone_config_[MAX_ZONES]
protected

Definition at line 174 of file ld2450.h.

◆ zone_moving_target_count_sensors_

std::array<SensorWithDedup<uint8_t> *, MAX_ZONES> esphome::ld2450::LD2450Component::zone_moving_target_count_sensors_ {}
protected

Definition at line 189 of file ld2450.h.

◆ zone_numbers_

ZoneOfNumbers esphome::ld2450::LD2450Component::zone_numbers_[MAX_ZONES]
protected

Definition at line 178 of file ld2450.h.

◆ zone_still_target_count_sensors_

std::array<SensorWithDedup<uint8_t> *, MAX_ZONES> esphome::ld2450::LD2450Component::zone_still_target_count_sensors_ {}
protected

Definition at line 188 of file ld2450.h.

◆ zone_target_count_sensors_

std::array<SensorWithDedup<uint8_t> *, MAX_ZONES> esphome::ld2450::LD2450Component::zone_target_count_sensors_ {}
protected

Definition at line 187 of file ld2450.h.

◆ zone_type_

uint8_t esphome::ld2450::LD2450Component::zone_type_ = 0
protected

Definition at line 171 of file ld2450.h.


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