ESPHome 2025.12.0-dev
Loading...
Searching...
No Matches
esphome::thermostat::ThermostatClimate Class Reference

#include <thermostat_climate.h>

Inheritance diagram for esphome::thermostat::ThermostatClimate:
esphome::climate::Climate esphome::Component esphome::EntityBase

Public Types

using PresetEntry = ThermostatPresetEntry
 
using CustomPresetEntry = ThermostatCustomPresetEntry
 

Public Member Functions

 ThermostatClimate ()
 
void setup () override
 
void dump_config () override
 
void loop () override
 
void set_default_preset (const char *custom_preset)
 
void set_default_preset (climate::ClimatePreset preset)
 
void set_on_boot_restore_from (OnBootRestoreFrom on_boot_restore_from)
 
void set_set_point_minimum_differential (float differential)
 
void set_cool_deadband (float deadband)
 
void set_cool_overrun (float overrun)
 
void set_heat_deadband (float deadband)
 
void set_heat_overrun (float overrun)
 
void set_supplemental_cool_delta (float delta)
 
void set_supplemental_heat_delta (float delta)
 
void set_cooling_maximum_run_time_in_sec (uint32_t time)
 
void set_heating_maximum_run_time_in_sec (uint32_t time)
 
void set_cooling_minimum_off_time_in_sec (uint32_t time)
 
void set_cooling_minimum_run_time_in_sec (uint32_t time)
 
void set_fan_mode_minimum_switching_time_in_sec (uint32_t time)
 
void set_fanning_minimum_off_time_in_sec (uint32_t time)
 
void set_fanning_minimum_run_time_in_sec (uint32_t time)
 
void set_heating_minimum_off_time_in_sec (uint32_t time)
 
void set_heating_minimum_run_time_in_sec (uint32_t time)
 
void set_idle_minimum_time_in_sec (uint32_t time)
 
void set_sensor (sensor::Sensor *sensor)
 
void set_humidity_sensor (sensor::Sensor *humidity_sensor)
 
void set_humidity_hysteresis (float humidity_hysteresis)
 
void set_use_startup_delay (bool use_startup_delay)
 
void set_supports_auto (bool supports_auto)
 
void set_supports_heat_cool (bool supports_heat_cool)
 
void set_supports_cool (bool supports_cool)
 
void set_supports_dry (bool supports_dry)
 
void set_supports_fan_only (bool supports_fan_only)
 
void set_supports_fan_only_action_uses_fan_mode_timer (bool fan_only_action_uses_fan_mode_timer)
 
void set_supports_fan_only_cooling (bool supports_fan_only_cooling)
 
void set_supports_fan_with_cooling (bool supports_fan_with_cooling)
 
void set_supports_fan_with_heating (bool supports_fan_with_heating)
 
void set_supports_heat (bool supports_heat)
 
void set_supports_fan_mode_on (bool supports_fan_mode_on)
 
void set_supports_fan_mode_off (bool supports_fan_mode_off)
 
void set_supports_fan_mode_auto (bool supports_fan_mode_auto)
 
void set_supports_fan_mode_low (bool supports_fan_mode_low)
 
void set_supports_fan_mode_medium (bool supports_fan_mode_medium)
 
void set_supports_fan_mode_high (bool supports_fan_mode_high)
 
void set_supports_fan_mode_middle (bool supports_fan_mode_middle)
 
void set_supports_fan_mode_focus (bool supports_fan_mode_focus)
 
void set_supports_fan_mode_diffuse (bool supports_fan_mode_diffuse)
 
void set_supports_fan_mode_quiet (bool supports_fan_mode_quiet)
 
void set_supports_swing_mode_both (bool supports_swing_mode_both)
 
void set_supports_swing_mode_horizontal (bool supports_swing_mode_horizontal)
 
void set_supports_swing_mode_off (bool supports_swing_mode_off)
 
void set_supports_swing_mode_vertical (bool supports_swing_mode_vertical)
 
void set_supports_dehumidification (bool supports_dehumidification)
 
void set_supports_humidification (bool supports_humidification)
 
void set_supports_two_points (bool supports_two_points)
 
void set_preset_config (std::initializer_list< PresetEntry > presets)
 
void set_custom_preset_config (std::initializer_list< CustomPresetEntry > presets)
 
Triggerget_cool_action_trigger () const
 
Triggerget_supplemental_cool_action_trigger () const
 
Triggerget_dry_action_trigger () const
 
Triggerget_fan_only_action_trigger () const
 
Triggerget_heat_action_trigger () const
 
Triggerget_supplemental_heat_action_trigger () const
 
Triggerget_idle_action_trigger () const
 
Triggerget_auto_mode_trigger () const
 
Triggerget_cool_mode_trigger () const
 
Triggerget_dry_mode_trigger () const
 
Triggerget_fan_only_mode_trigger () const
 
Triggerget_heat_mode_trigger () const
 
Triggerget_heat_cool_mode_trigger () const
 
Triggerget_off_mode_trigger () const
 
Triggerget_fan_mode_on_trigger () const
 
Triggerget_fan_mode_off_trigger () const
 
Triggerget_fan_mode_auto_trigger () const
 
Triggerget_fan_mode_low_trigger () const
 
Triggerget_fan_mode_medium_trigger () const
 
Triggerget_fan_mode_high_trigger () const
 
Triggerget_fan_mode_middle_trigger () const
 
Triggerget_fan_mode_focus_trigger () const
 
Triggerget_fan_mode_diffuse_trigger () const
 
Triggerget_fan_mode_quiet_trigger () const
 
Triggerget_swing_mode_both_trigger () const
 
Triggerget_swing_mode_horizontal_trigger () const
 
Triggerget_swing_mode_off_trigger () const
 
Triggerget_swing_mode_vertical_trigger () const
 
Triggerget_humidity_change_trigger () const
 
Triggerget_temperature_change_trigger () const
 
Triggerget_preset_change_trigger () const
 
Triggerget_humidity_control_dehumidify_action_trigger () const
 
Triggerget_humidity_control_humidify_action_trigger () const
 
Triggerget_humidity_control_off_action_trigger () const
 
float cool_deadband ()
 Get current hysteresis values.
 
float cool_overrun ()
 
float heat_deadband ()
 
float heat_overrun ()
 
void refresh ()
 Call triggers based on updated climate states (modes/actions)
 
bool climate_action_change_delayed ()
 Returns true if a climate action/fan mode transition is being delayed.
 
bool fan_mode_change_delayed ()
 
climate::ClimateAction delayed_climate_action ()
 Returns the climate action that is being delayed (check climate_action_change_delayed(), first!)
 
climate::ClimateFanMode locked_fan_mode ()
 Returns the fan mode that is locked in (check fan_mode_change_delayed(), first!)
 
bool hysteresis_valid ()
 Set point and hysteresis validation.
 
bool humidity_hysteresis_valid ()
 
bool limit_setpoints_for_heat_cool ()
 
void validate_target_temperature ()
 
void validate_target_temperatures (bool pin_target_temperature_high)
 
void validate_target_temperature_low ()
 
void validate_target_temperature_high ()
 
void validate_target_humidity ()
 
- Public Member Functions inherited from esphome::climate::Climate
 Climate ()
 
void add_on_state_callback (std::function< void(Climate &)> &&callback)
 Add a callback for the climate device state, each time the state of the climate device is updated (using publish_state), this callback will be called.
 
void add_on_control_callback (std::function< void(ClimateCall &)> &&callback)
 Add a callback for the climate device configuration; each time the configuration parameters of a climate device is updated (using perform() of a ClimateCall), this callback will be called, before any on_state callback.
 
ClimateCall make_call ()
 Make a climate device control call, this is used to control the climate device, see the ClimateCall description for more info.
 
void publish_state ()
 Publish the state of the climate device, to be called from integrations.
 
ClimateTraits get_traits ()
 Get the traits of this climate device with all overrides applied.
 
void set_visual_min_temperature_override (float visual_min_temperature_override)
 
void set_visual_max_temperature_override (float visual_max_temperature_override)
 
void set_visual_temperature_step_override (float target, float current)
 
void set_visual_min_humidity_override (float visual_min_humidity_override)
 
void set_visual_max_humidity_override (float visual_max_humidity_override)
 
bool has_custom_fan_mode () const
 Check if a custom fan mode is currently active.
 
bool has_custom_preset () const
 Check if a custom preset is currently active.
 
const char * get_custom_fan_mode () const
 Get the active custom fan mode (read-only access).
 
const char * get_custom_preset () const
 Get the active custom preset (read-only access).
 
- Public Member Functions inherited from esphome::EntityBase
const StringRefget_name () const
 
void set_name (const char *name)
 
bool has_own_name () const
 
std::string get_object_id () const
 
void set_object_id (const char *object_id)
 
uint32_t get_object_id_hash ()
 
bool is_internal () const
 
void set_internal (bool internal)
 
bool is_disabled_by_default () const
 
void set_disabled_by_default (bool disabled_by_default)
 
EntityCategory get_entity_category () const
 
void set_entity_category (EntityCategory entity_category)
 
ESPDEPRECATED("Use get_icon_ref() instead for better performance (avoids string copy). Will be removed in ESPHome 2026.5.0", "2025.11.0") std void set_icon (const char *icon)
 
StringRef get_icon_ref () const
 
uint32_t get_device_id () const
 
void set_device (Device *device)
 
bool has_state () const
 
void set_has_state (bool state)
 
uint32_t get_preference_hash ()
 Get a unique hash for storing preferences/settings for this entity.
 
- Public Member Functions inherited from esphome::Component
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.
 
bool is_idle () const
 Check if this component is idle.
 
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_warning (const LogString *message)
 
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 LogString *source)
 Set where this component was loaded from for some debug messages.
 
const LogString * get_component_log_str () const
 Get the integration where this component was declared as a LogString for logging.
 
bool should_warn_of_blocking (uint32_t blocking_time)
 

Protected Member Functions

void control (const climate::ClimateCall &call) override
 Override control to change settings of the climate device.
 
void change_preset_ (climate::ClimatePreset preset)
 Change to a provided preset setting; will reset temperature, mode, fan, and swing modes accordingly.
 
void change_custom_preset_ (const char *custom_preset)
 Change to a provided custom preset setting; will reset temperature, mode, fan, and swing modes accordingly.
 
bool change_preset_internal_ (const ThermostatClimateTargetTempConfig &config)
 Applies the temperature, mode, fan, and swing modes of the provided config.
 
climate::ClimateTraits traits () override
 Return the traits of this controller.
 
climate::ClimateAction compute_action_ (bool ignore_timers=false)
 Re-compute the required action of this climate controller.
 
climate::ClimateAction compute_supplemental_action_ ()
 
HumidificationAction compute_humidity_control_action_ ()
 
void switch_to_action_ (climate::ClimateAction action, bool publish_state=true)
 Switch the climate device to the given climate action.
 
void switch_to_supplemental_action_ (climate::ClimateAction action)
 
void trigger_supplemental_action_ ()
 
void switch_to_humidity_control_action_ (HumidificationAction action)
 
void switch_to_fan_mode_ (climate::ClimateFanMode fan_mode, bool publish_state=true)
 Switch the climate device to the given climate fan mode.
 
void switch_to_mode_ (climate::ClimateMode mode, bool publish_state=true)
 Switch the climate device to the given climate mode.
 
void switch_to_swing_mode_ (climate::ClimateSwingMode swing_mode, bool publish_state=true)
 Switch the climate device to the given climate swing mode.
 
void check_humidity_change_trigger_ ()
 Check if the humidity change trigger should be called.
 
void check_temperature_change_trigger_ ()
 Check if the temperature change trigger should be called.
 
bool idle_action_ready_ ()
 Is the action ready to be called? Returns true if so.
 
bool cooling_action_ready_ ()
 
bool drying_action_ready_ ()
 
bool fan_mode_ready_ ()
 
bool fanning_action_ready_ ()
 
bool heating_action_ready_ ()
 
void start_timer_ (ThermostatClimateTimerIndex timer_index)
 Start/cancel/get status of climate action timer.
 
bool cancel_timer_ (ThermostatClimateTimerIndex timer_index)
 
bool timer_active_ (ThermostatClimateTimerIndex timer_index)
 
uint32_t timer_duration_ (ThermostatClimateTimerIndex timer_index)
 
std::function< void()> timer_cbf_ (ThermostatClimateTimerIndex timer_index)
 
void cooling_max_run_time_timer_callback_ ()
 set_timeout() callbacks for various actions (see above)
 
void cooling_off_timer_callback_ ()
 
void cooling_on_timer_callback_ ()
 
void fan_mode_timer_callback_ ()
 
void fanning_off_timer_callback_ ()
 
void fanning_on_timer_callback_ ()
 
void heating_max_run_time_timer_callback_ ()
 
void heating_off_timer_callback_ ()
 
void heating_on_timer_callback_ ()
 
void idle_on_timer_callback_ ()
 
bool cooling_required_ ()
 Check if cooling/fanning/heating actions are required; returns true if so.
 
bool fanning_required_ ()
 
bool heating_required_ ()
 
bool supplemental_cooling_required_ ()
 
bool supplemental_heating_required_ ()
 
bool dehumidification_required_ ()
 
bool humidification_required_ ()
 
void dump_preset_config_ (const char *preset_name, const ThermostatClimateTargetTempConfig &config)
 
- Protected Member Functions inherited from esphome::climate::Climate
bool set_fan_mode_ (ClimateFanMode mode)
 Set fan mode. Reset custom fan mode. Return true if fan mode has been changed.
 
bool set_custom_fan_mode_ (const char *mode)
 Set custom fan mode. Reset primary fan mode. Return true if fan mode has been changed.
 
void clear_custom_fan_mode_ ()
 Clear custom fan mode.
 
bool set_preset_ (ClimatePreset preset)
 Set preset. Reset custom preset. Return true if preset has been changed.
 
bool set_custom_preset_ (const char *preset)
 Set custom preset. Reset primary preset. Return true if preset has been changed.
 
void clear_custom_preset_ ()
 Clear custom preset.
 
const char * find_custom_fan_mode_ (const char *custom_fan_mode)
 Find and return the matching custom fan mode pointer from traits, or nullptr if not found.
 
const char * find_custom_preset_ (const char *custom_preset)
 Find and return the matching custom preset pointer from traits, or nullptr if not found.
 
optional< ClimateDeviceRestoreStaterestore_state_ ()
 Restore the state of the climate device, call this from your setup() method.
 
void save_state_ ()
 Internal method to save the state of the climate device to recover memory.
 
void dump_traits_ (const char *tag)
 
- Protected Member Functions inherited from esphome::EntityBase
StringRef get_object_id_ref_for_api_ () const
 
void calc_object_id_ ()
 
bool is_object_id_dynamic_ () const
 Check if the object_id is dynamic (changes with MAC suffix)
 
- 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

const uint8_t min_timer_duration_ {1}
 Minimum allowable duration in seconds for action timers.
 
climate::ClimateFanMode prev_fan_mode_ {climate::CLIMATE_FAN_ON}
 Store previously-known states.
 
climate::ClimateMode prev_mode_ {climate::CLIMATE_MODE_OFF}
 
climate::ClimateSwingMode prev_swing_mode_ {climate::CLIMATE_SWING_OFF}
 
climate::ClimateAction supplemental_action_ {climate::CLIMATE_ACTION_OFF}
 The current supplemental action.
 
HumidificationAction humidification_action_ {THERMOSTAT_HUMIDITY_CONTROL_ACTION_NONE}
 The current humidification action.
 
climate::ClimatePreset default_preset_ {}
 Default standard preset to use on start up.
 
OnBootRestoreFrom on_boot_restore_from_ {OnBootRestoreFrom::MEMORY}
 If set to DEFAULT_PRESET then the default preset is always used.
 
bool supports_auto_ {false}
 Whether the controller supports auto/cooling/drying/fanning/heating.
 
bool supports_heat_cool_ {false}
 
bool supports_cool_ {false}
 
bool supports_dry_ {false}
 
bool supports_fan_only_ {false}
 
bool supports_heat_ {false}
 
bool supports_fan_only_action_uses_fan_mode_timer_ {false}
 Special flag – enables fan_modes to share timer with fan_only climate action.
 
bool supports_fan_only_cooling_ {false}
 Special flag – enables fan to be switched based on target_temperature_high.
 
bool supports_fan_with_cooling_ {false}
 Special flags – enables fan_only action to be called with cooling/heating actions.
 
bool supports_fan_with_heating_ {false}
 
bool supports_fan_mode_on_ {false}
 Whether the controller supports turning on or off just the fan.
 
bool supports_fan_mode_off_ {false}
 
bool supports_fan_mode_auto_ {false}
 Whether the controller supports fan auto mode.
 
bool supports_fan_mode_low_ {false}
 Whether the controller supports various fan speeds and/or positions.
 
bool supports_fan_mode_medium_ {false}
 
bool supports_fan_mode_high_ {false}
 
bool supports_fan_mode_middle_ {false}
 
bool supports_fan_mode_focus_ {false}
 
bool supports_fan_mode_diffuse_ {false}
 
bool supports_fan_mode_quiet_ {false}
 
bool supports_swing_mode_both_ {false}
 Whether the controller supports various swing modes.
 
bool supports_swing_mode_off_ {false}
 
bool supports_swing_mode_horizontal_ {false}
 
bool supports_swing_mode_vertical_ {false}
 
bool supports_two_points_ {false}
 Whether the controller supports two set points.
 
bool supports_dehumidification_ {false}
 Whether the controller supports dehumidification and/or humidification.
 
bool supports_humidification_ {false}
 
bool cooling_max_runtime_exceeded_ {false}
 Flags indicating if maximum allowable run time was exceeded.
 
bool heating_max_runtime_exceeded_ {false}
 
bool use_startup_delay_ {false}
 Used to start "off" delay timers at boot.
 
bool setup_complete_ {false}
 setup_complete_ blocks modifying/resetting the temps immediately after boot
 
float prev_target_humidity_ {NAN}
 Store previously-known humidity and temperatures.
 
float prev_target_temperature_ {NAN}
 
float prev_target_temperature_low_ {NAN}
 
float prev_target_temperature_high_ {NAN}
 
float set_point_minimum_differential_ {0}
 Minimum differential required between set points.
 
float cooling_deadband_ {0}
 Hysteresis values used for computing climate actions.
 
float cooling_overrun_ {0}
 
float heating_deadband_ {0}
 
float heating_overrun_ {0}
 
float humidity_hysteresis_ {0}
 Hysteresis values used for computing humidification action.
 
float supplemental_cool_delta_ {0}
 Maximum allowable temperature deltas before engaging supplemental cooling/heating actions.
 
float supplemental_heat_delta_ {0}
 
sensor::Sensorsensor_ {nullptr}
 The sensor used for getting the current temperature.
 
sensor::Sensorhumidity_sensor_ {nullptr}
 The sensor used for getting the current humidity.
 
Triggercool_action_trigger_ {nullptr}
 The trigger to call when the controller should switch to cooling action/mode.
 
Triggersupplemental_cool_action_trigger_ {nullptr}
 
Triggercool_mode_trigger_ {nullptr}
 
Triggerdry_action_trigger_ {nullptr}
 The trigger to call when the controller should switch to dry (dehumidification) mode.
 
Triggerdry_mode_trigger_ {nullptr}
 
Triggerheat_action_trigger_ {nullptr}
 The trigger to call when the controller should switch to heating action/mode.
 
Triggersupplemental_heat_action_trigger_ {nullptr}
 
Triggerheat_mode_trigger_ {nullptr}
 
Triggerheat_cool_mode_trigger_ {nullptr}
 The trigger to call when the controller should switch to heat/cool mode.
 
Triggerauto_mode_trigger_ {nullptr}
 The trigger to call when the controller should switch to auto mode.
 
Triggeridle_action_trigger_ {nullptr}
 The trigger to call when the controller should switch to idle action/off mode.
 
Triggeroff_mode_trigger_ {nullptr}
 
Triggerfan_only_action_trigger_ {nullptr}
 The trigger to call when the controller should switch to fan-only action/mode.
 
Triggerfan_only_mode_trigger_ {nullptr}
 
Triggerfan_mode_on_trigger_ {nullptr}
 The trigger to call when the controller should switch on the fan.
 
Triggerfan_mode_off_trigger_ {nullptr}
 The trigger to call when the controller should switch off the fan.
 
Triggerfan_mode_auto_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "auto" mode.
 
Triggerfan_mode_low_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "low" speed.
 
Triggerfan_mode_medium_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "medium" speed.
 
Triggerfan_mode_high_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "high" speed.
 
Triggerfan_mode_middle_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "middle" position.
 
Triggerfan_mode_focus_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "focus" position.
 
Triggerfan_mode_diffuse_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "diffuse" position.
 
Triggerfan_mode_quiet_trigger_ {nullptr}
 The trigger to call when the controller should switch the fan to "quiet" position.
 
Triggerswing_mode_both_trigger_ {nullptr}
 The trigger to call when the controller should switch the swing mode to "both".
 
Triggerswing_mode_off_trigger_ {nullptr}
 The trigger to call when the controller should switch the swing mode to "off".
 
Triggerswing_mode_horizontal_trigger_ {nullptr}
 The trigger to call when the controller should switch the swing mode to "horizontal".
 
Triggerswing_mode_vertical_trigger_ {nullptr}
 The trigger to call when the controller should switch the swing mode to "vertical".
 
Triggerhumidity_change_trigger_ {nullptr}
 The trigger to call when the target humidity changes.
 
Triggertemperature_change_trigger_ {nullptr}
 The trigger to call when the target temperature(s) change(es).
 
Triggerpreset_change_trigger_ {nullptr}
 The trigger to call when the preset mode changes.
 
Triggerhumidity_control_dehumidify_action_trigger_ {nullptr}
 The trigger to call when dehumidification is required.
 
Triggerhumidity_control_humidify_action_trigger_ {nullptr}
 The trigger to call when humidification is required.
 
Triggerhumidity_control_off_action_trigger_ {nullptr}
 The trigger to call when (de)humidification should stop.
 
Triggerprev_action_trigger_ {nullptr}
 A reference to the trigger that was previously active.
 
Triggerprev_fan_mode_trigger_ {nullptr}
 
Triggerprev_mode_trigger_ {nullptr}
 
Triggerprev_swing_mode_trigger_ {nullptr}
 
Triggerprev_humidity_control_trigger_ {nullptr}
 
std::array< ThermostatClimateTimer, THERMOSTAT_TIMER_COUNTtimer_
 Climate action timers.
 
FixedVector< PresetEntrypreset_config_ {}
 The set of standard preset configurations this thermostat supports (Eg. AWAY, ECO, etc)
 
FixedVector< CustomPresetEntrycustom_preset_config_ {}
 The set of custom preset configurations this thermostat supports (eg. "My Custom Preset")
 
- Protected Attributes inherited from esphome::climate::Climate
friend ClimateCall
 
CallbackManager< void(Climate &)> state_callback_ {}
 
CallbackManager< void(ClimateCall &)> control_callback_ {}
 
ESPPreferenceObject rtc_
 
optional< float > visual_min_temperature_override_ {}
 
optional< float > visual_max_temperature_override_ {}
 
optional< float > visual_target_temperature_step_override_ {}
 
optional< float > visual_current_temperature_step_override_ {}
 
optional< float > visual_min_humidity_override_ {}
 
optional< float > visual_max_humidity_override_ {}
 
- Protected Attributes inherited from esphome::EntityBase
StringRef name_
 
const char * object_id_c_str_ {nullptr}
 
const char * icon_c_str_ {nullptr}
 
uint32_t object_id_hash_ {}
 
Devicedevice_ {}
 
struct esphome::EntityBase::EntityFlags flags_
 
- Protected Attributes inherited from esphome::Component
const LogString * 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.
 

Additional Inherited Members

- Data Fields inherited from esphome::climate::Climate
float current_temperature {NAN}
 The current temperature of the climate device, as reported from the integration.
 
float current_humidity {NAN}
 The current humidity of the climate device, as reported from the integration.
 
union { 
 
   float   target_temperature 
 The target temperature of the climate device. More...
 
   struct { 
 
      float   target_temperature_low {NAN} 
 The minimum target temperature of the climate device, for climate devices with split target temperature. More...
 
      float   target_temperature_high {NAN} 
 The maximum target temperature of the climate device, for climate devices with split target temperature. More...
 
   }  
 
};  
 
float target_humidity
 The target humidity of the climate device.
 
optional< ClimateFanModefan_mode
 The active fan mode of the climate device.
 
optional< ClimatePresetpreset
 The active preset of the climate device.
 
ClimateMode mode {CLIMATE_MODE_OFF}
 The active mode of the climate device.
 
ClimateAction action {CLIMATE_ACTION_OFF}
 The active state of the climate device.
 
ClimateSwingMode swing_mode {CLIMATE_SWING_OFF}
 The active swing mode of the climate device.
 

Detailed Description

Definition at line 87 of file thermostat_climate.h.

Member Typedef Documentation

◆ CustomPresetEntry

◆ PresetEntry

Constructor & Destructor Documentation

◆ ThermostatClimate()

esphome::thermostat::ThermostatClimate::ThermostatClimate ( )

Definition at line 1271 of file thermostat_climate.cpp.

Member Function Documentation

◆ cancel_timer_()

bool esphome::thermostat::ThermostatClimate::cancel_timer_ ( ThermostatClimateTimerIndex timer_index)
protected

Definition at line 905 of file thermostat_climate.cpp.

◆ change_custom_preset_()

void esphome::thermostat::ThermostatClimate::change_custom_preset_ ( const char * custom_preset)
protected

Change to a provided custom preset setting; will reset temperature, mode, fan, and swing modes accordingly.

Definition at line 1186 of file thermostat_climate.cpp.

◆ change_preset_()

void esphome::thermostat::ThermostatClimate::change_preset_ ( climate::ClimatePreset preset)
protected

Change to a provided preset setting; will reset temperature, mode, fan, and swing modes accordingly.

Definition at line 1156 of file thermostat_climate.cpp.

◆ change_preset_internal_()

bool esphome::thermostat::ThermostatClimate::change_preset_internal_ ( const ThermostatClimateTargetTempConfig & config)
protected

Applies the temperature, mode, fan, and swing modes of the provided config.

This is agnostic of custom vs built in preset Returns true if something was changed

Definition at line 1221 of file thermostat_climate.cpp.

◆ check_humidity_change_trigger_()

void esphome::thermostat::ThermostatClimate::check_humidity_change_trigger_ ( )
protected

Check if the humidity change trigger should be called.

Definition at line 984 of file thermostat_climate.cpp.

◆ check_temperature_change_trigger_()

void esphome::thermostat::ThermostatClimate::check_temperature_change_trigger_ ( )
protected

Check if the temperature change trigger should be called.

Definition at line 998 of file thermostat_climate.cpp.

◆ climate_action_change_delayed()

bool esphome::thermostat::ThermostatClimate::climate_action_change_delayed ( )

Returns true if a climate action/fan mode transition is being delayed.

Definition at line 94 of file thermostat_climate.cpp.

◆ compute_action_()

climate::ClimateAction esphome::thermostat::ThermostatClimate::compute_action_ ( bool ignore_timers = false)
protected

Re-compute the required action of this climate controller.

Definition at line 339 of file thermostat_climate.cpp.

◆ compute_humidity_control_action_()

HumidificationAction esphome::thermostat::ThermostatClimate::compute_humidity_control_action_ ( )
protected

Definition at line 460 of file thermostat_climate.cpp.

◆ compute_supplemental_action_()

climate::ClimateAction esphome::thermostat::ThermostatClimate::compute_supplemental_action_ ( )
protected

Definition at line 418 of file thermostat_climate.cpp.

◆ control()

void esphome::thermostat::ThermostatClimate::control ( const climate::ClimateCall & call)
overrideprotectedvirtual

Override control to change settings of the climate device.

Implements esphome::climate::Climate.

Definition at line 210 of file thermostat_climate.cpp.

◆ cool_deadband()

float esphome::thermostat::ThermostatClimate::cool_deadband ( )

Get current hysteresis values.

Definition at line 77 of file thermostat_climate.cpp.

◆ cool_overrun()

float esphome::thermostat::ThermostatClimate::cool_overrun ( )

Definition at line 78 of file thermostat_climate.cpp.

◆ cooling_action_ready_()

bool esphome::thermostat::ThermostatClimate::cooling_action_ready_ ( )
protected

Definition at line 867 of file thermostat_climate.cpp.

◆ cooling_max_run_time_timer_callback_()

void esphome::thermostat::ThermostatClimate::cooling_max_run_time_timer_callback_ ( )
protected

set_timeout() callbacks for various actions (see above)

Definition at line 923 of file thermostat_climate.cpp.

◆ cooling_off_timer_callback_()

void esphome::thermostat::ThermostatClimate::cooling_off_timer_callback_ ( )
protected

Definition at line 930 of file thermostat_climate.cpp.

◆ cooling_on_timer_callback_()

void esphome::thermostat::ThermostatClimate::cooling_on_timer_callback_ ( )
protected

Definition at line 936 of file thermostat_climate.cpp.

◆ cooling_required_()

bool esphome::thermostat::ThermostatClimate::cooling_required_ ( )
protected

Check if cooling/fanning/heating actions are required; returns true if so.

Definition at line 1024 of file thermostat_climate.cpp.

◆ dehumidification_required_()

bool esphome::thermostat::ThermostatClimate::dehumidification_required_ ( )
protected

Definition at line 1107 of file thermostat_climate.cpp.

◆ delayed_climate_action()

climate::ClimateAction esphome::thermostat::ThermostatClimate::delayed_climate_action ( )

Returns the climate action that is being delayed (check climate_action_change_delayed(), first!)

Definition at line 120 of file thermostat_climate.cpp.

◆ drying_action_ready_()

bool esphome::thermostat::ThermostatClimate::drying_action_ready_ ( )
protected

Definition at line 874 of file thermostat_climate.cpp.

◆ dump_config()

void esphome::thermostat::ThermostatClimate::dump_config ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 1505 of file thermostat_climate.cpp.

◆ dump_preset_config_()

void esphome::thermostat::ThermostatClimate::dump_preset_config_ ( const char * preset_name,
const ThermostatClimateTargetTempConfig & config )
protected

Definition at line 1133 of file thermostat_climate.cpp.

◆ fan_mode_change_delayed()

bool esphome::thermostat::ThermostatClimate::fan_mode_change_delayed ( )

Definition at line 115 of file thermostat_climate.cpp.

◆ fan_mode_ready_()

bool esphome::thermostat::ThermostatClimate::fan_mode_ready_ ( )
protected

Definition at line 881 of file thermostat_climate.cpp.

◆ fan_mode_timer_callback_()

void esphome::thermostat::ThermostatClimate::fan_mode_timer_callback_ ( )
protected

Definition at line 942 of file thermostat_climate.cpp.

◆ fanning_action_ready_()

bool esphome::thermostat::ThermostatClimate::fanning_action_ready_ ( )
protected

Definition at line 883 of file thermostat_climate.cpp.

◆ fanning_off_timer_callback_()

void esphome::thermostat::ThermostatClimate::fanning_off_timer_callback_ ( )
protected

Definition at line 949 of file thermostat_climate.cpp.

◆ fanning_on_timer_callback_()

void esphome::thermostat::ThermostatClimate::fanning_on_timer_callback_ ( )
protected

Definition at line 954 of file thermostat_climate.cpp.

◆ fanning_required_()

bool esphome::thermostat::ThermostatClimate::fanning_required_ ( )
protected

Definition at line 1044 of file thermostat_climate.cpp.

◆ get_auto_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_auto_mode_trigger ( ) const

Definition at line 1471 of file thermostat_climate.cpp.

◆ get_cool_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_cool_action_trigger ( ) const

Definition at line 1460 of file thermostat_climate.cpp.

◆ get_cool_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_cool_mode_trigger ( ) const

Definition at line 1472 of file thermostat_climate.cpp.

◆ get_dry_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_dry_action_trigger ( ) const

Definition at line 1464 of file thermostat_climate.cpp.

◆ get_dry_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_dry_mode_trigger ( ) const

Definition at line 1473 of file thermostat_climate.cpp.

◆ get_fan_mode_auto_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_auto_trigger ( ) const

Definition at line 1480 of file thermostat_climate.cpp.

◆ get_fan_mode_diffuse_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_diffuse_trigger ( ) const

Definition at line 1486 of file thermostat_climate.cpp.

◆ get_fan_mode_focus_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_focus_trigger ( ) const

Definition at line 1485 of file thermostat_climate.cpp.

◆ get_fan_mode_high_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_high_trigger ( ) const

Definition at line 1483 of file thermostat_climate.cpp.

◆ get_fan_mode_low_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_low_trigger ( ) const

Definition at line 1481 of file thermostat_climate.cpp.

◆ get_fan_mode_medium_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_medium_trigger ( ) const

Definition at line 1482 of file thermostat_climate.cpp.

◆ get_fan_mode_middle_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_middle_trigger ( ) const

Definition at line 1484 of file thermostat_climate.cpp.

◆ get_fan_mode_off_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_off_trigger ( ) const

Definition at line 1479 of file thermostat_climate.cpp.

◆ get_fan_mode_on_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_on_trigger ( ) const

Definition at line 1478 of file thermostat_climate.cpp.

◆ get_fan_mode_quiet_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_mode_quiet_trigger ( ) const

Definition at line 1487 of file thermostat_climate.cpp.

◆ get_fan_only_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_only_action_trigger ( ) const

Definition at line 1465 of file thermostat_climate.cpp.

◆ get_fan_only_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_fan_only_mode_trigger ( ) const

Definition at line 1474 of file thermostat_climate.cpp.

◆ get_heat_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_heat_action_trigger ( ) const

Definition at line 1466 of file thermostat_climate.cpp.

◆ get_heat_cool_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_heat_cool_mode_trigger ( ) const

Definition at line 1476 of file thermostat_climate.cpp.

◆ get_heat_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_heat_mode_trigger ( ) const

Definition at line 1475 of file thermostat_climate.cpp.

◆ get_humidity_change_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_humidity_change_trigger ( ) const

Definition at line 1492 of file thermostat_climate.cpp.

◆ get_humidity_control_dehumidify_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_humidity_control_dehumidify_action_trigger ( ) const

Definition at line 1495 of file thermostat_climate.cpp.

◆ get_humidity_control_humidify_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_humidity_control_humidify_action_trigger ( ) const

Definition at line 1498 of file thermostat_climate.cpp.

◆ get_humidity_control_off_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_humidity_control_off_action_trigger ( ) const

Definition at line 1501 of file thermostat_climate.cpp.

◆ get_idle_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_idle_action_trigger ( ) const

Definition at line 1470 of file thermostat_climate.cpp.

◆ get_off_mode_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_off_mode_trigger ( ) const

Definition at line 1477 of file thermostat_climate.cpp.

◆ get_preset_change_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_preset_change_trigger ( ) const

Definition at line 1494 of file thermostat_climate.cpp.

◆ get_supplemental_cool_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_supplemental_cool_action_trigger ( ) const

Definition at line 1461 of file thermostat_climate.cpp.

◆ get_supplemental_heat_action_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_supplemental_heat_action_trigger ( ) const

Definition at line 1467 of file thermostat_climate.cpp.

◆ get_swing_mode_both_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_swing_mode_both_trigger ( ) const

Definition at line 1488 of file thermostat_climate.cpp.

◆ get_swing_mode_horizontal_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_swing_mode_horizontal_trigger ( ) const

Definition at line 1490 of file thermostat_climate.cpp.

◆ get_swing_mode_off_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_swing_mode_off_trigger ( ) const

Definition at line 1489 of file thermostat_climate.cpp.

◆ get_swing_mode_vertical_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_swing_mode_vertical_trigger ( ) const

Definition at line 1491 of file thermostat_climate.cpp.

◆ get_temperature_change_trigger()

Trigger * esphome::thermostat::ThermostatClimate::get_temperature_change_trigger ( ) const

Definition at line 1493 of file thermostat_climate.cpp.

◆ heat_deadband()

float esphome::thermostat::ThermostatClimate::heat_deadband ( )

Definition at line 79 of file thermostat_climate.cpp.

◆ heat_overrun()

float esphome::thermostat::ThermostatClimate::heat_overrun ( )

Definition at line 80 of file thermostat_climate.cpp.

◆ heating_action_ready_()

bool esphome::thermostat::ThermostatClimate::heating_action_ready_ ( )
protected

Definition at line 891 of file thermostat_climate.cpp.

◆ heating_max_run_time_timer_callback_()

void esphome::thermostat::ThermostatClimate::heating_max_run_time_timer_callback_ ( )
protected

Definition at line 959 of file thermostat_climate.cpp.

◆ heating_off_timer_callback_()

void esphome::thermostat::ThermostatClimate::heating_off_timer_callback_ ( )
protected

Definition at line 966 of file thermostat_climate.cpp.

◆ heating_on_timer_callback_()

void esphome::thermostat::ThermostatClimate::heating_on_timer_callback_ ( )
protected

Definition at line 972 of file thermostat_climate.cpp.

◆ heating_required_()

bool esphome::thermostat::ThermostatClimate::heating_required_ ( )
protected

Definition at line 1067 of file thermostat_climate.cpp.

◆ humidification_required_()

bool esphome::thermostat::ThermostatClimate::humidification_required_ ( )
protected

Definition at line 1120 of file thermostat_climate.cpp.

◆ humidity_hysteresis_valid()

bool esphome::thermostat::ThermostatClimate::humidity_hysteresis_valid ( )

Definition at line 135 of file thermostat_climate.cpp.

◆ hysteresis_valid()

bool esphome::thermostat::ThermostatClimate::hysteresis_valid ( )

Set point and hysteresis validation.

Definition at line 124 of file thermostat_climate.cpp.

◆ idle_action_ready_()

bool esphome::thermostat::ThermostatClimate::idle_action_ready_ ( )
protected

Is the action ready to be called? Returns true if so.

Definition at line 856 of file thermostat_climate.cpp.

◆ idle_on_timer_callback_()

void esphome::thermostat::ThermostatClimate::idle_on_timer_callback_ ( )
protected

Definition at line 978 of file thermostat_climate.cpp.

◆ limit_setpoints_for_heat_cool()

bool esphome::thermostat::ThermostatClimate::limit_setpoints_for_heat_cool ( )

Definition at line 140 of file thermostat_climate.cpp.

◆ locked_fan_mode()

climate::ClimateFanMode esphome::thermostat::ThermostatClimate::locked_fan_mode ( )

Returns the fan mode that is locked in (check fan_mode_change_delayed(), first!)

Definition at line 122 of file thermostat_climate.cpp.

◆ loop()

void esphome::thermostat::ThermostatClimate::loop ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 68 of file thermostat_climate.cpp.

◆ refresh()

void esphome::thermostat::ThermostatClimate::refresh ( )

Call triggers based on updated climate states (modes/actions)

Definition at line 82 of file thermostat_climate.cpp.

◆ set_cool_deadband()

void esphome::thermostat::ThermostatClimate::set_cool_deadband ( float deadband)

Definition at line 1327 of file thermostat_climate.cpp.

◆ set_cool_overrun()

void esphome::thermostat::ThermostatClimate::set_cool_overrun ( float overrun)

Definition at line 1328 of file thermostat_climate.cpp.

◆ set_cooling_maximum_run_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_cooling_maximum_run_time_in_sec ( uint32_t time)

Definition at line 1333 of file thermostat_climate.cpp.

◆ set_cooling_minimum_off_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_cooling_minimum_off_time_in_sec ( uint32_t time)

Definition at line 1337 of file thermostat_climate.cpp.

◆ set_cooling_minimum_run_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_cooling_minimum_run_time_in_sec ( uint32_t time)

Definition at line 1341 of file thermostat_climate.cpp.

◆ set_custom_preset_config()

void esphome::thermostat::ThermostatClimate::set_custom_preset_config ( std::initializer_list< CustomPresetEntry > presets)

Definition at line 1267 of file thermostat_climate.cpp.

◆ set_default_preset() [1/2]

void esphome::thermostat::ThermostatClimate::set_default_preset ( climate::ClimatePreset preset)

Definition at line 1319 of file thermostat_climate.cpp.

◆ set_default_preset() [2/2]

void esphome::thermostat::ThermostatClimate::set_default_preset ( const char * custom_preset)

Definition at line 1307 of file thermostat_climate.cpp.

◆ set_fan_mode_minimum_switching_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_fan_mode_minimum_switching_time_in_sec ( uint32_t time)

Definition at line 1345 of file thermostat_climate.cpp.

◆ set_fanning_minimum_off_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_fanning_minimum_off_time_in_sec ( uint32_t time)

Definition at line 1349 of file thermostat_climate.cpp.

◆ set_fanning_minimum_run_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_fanning_minimum_run_time_in_sec ( uint32_t time)

Definition at line 1353 of file thermostat_climate.cpp.

◆ set_heat_deadband()

void esphome::thermostat::ThermostatClimate::set_heat_deadband ( float deadband)

Definition at line 1329 of file thermostat_climate.cpp.

◆ set_heat_overrun()

void esphome::thermostat::ThermostatClimate::set_heat_overrun ( float overrun)

Definition at line 1330 of file thermostat_climate.cpp.

◆ set_heating_maximum_run_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_heating_maximum_run_time_in_sec ( uint32_t time)

Definition at line 1357 of file thermostat_climate.cpp.

◆ set_heating_minimum_off_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_heating_minimum_off_time_in_sec ( uint32_t time)

Definition at line 1361 of file thermostat_climate.cpp.

◆ set_heating_minimum_run_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_heating_minimum_run_time_in_sec ( uint32_t time)

Definition at line 1365 of file thermostat_climate.cpp.

◆ set_humidity_hysteresis()

void esphome::thermostat::ThermostatClimate::set_humidity_hysteresis ( float humidity_hysteresis)

Definition at line 1377 of file thermostat_climate.cpp.

◆ set_humidity_sensor()

void esphome::thermostat::ThermostatClimate::set_humidity_sensor ( sensor::Sensor * humidity_sensor)

Definition at line 1374 of file thermostat_climate.cpp.

◆ set_idle_minimum_time_in_sec()

void esphome::thermostat::ThermostatClimate::set_idle_minimum_time_in_sec ( uint32_t time)

Definition at line 1369 of file thermostat_climate.cpp.

◆ set_on_boot_restore_from()

void esphome::thermostat::ThermostatClimate::set_on_boot_restore_from ( thermostat::OnBootRestoreFrom on_boot_restore_from)

Definition at line 1321 of file thermostat_climate.cpp.

◆ set_preset_config()

void esphome::thermostat::ThermostatClimate::set_preset_config ( std::initializer_list< PresetEntry > presets)

Definition at line 1263 of file thermostat_climate.cpp.

◆ set_sensor()

void esphome::thermostat::ThermostatClimate::set_sensor ( sensor::Sensor * sensor)

Definition at line 1373 of file thermostat_climate.cpp.

◆ set_set_point_minimum_differential()

void esphome::thermostat::ThermostatClimate::set_set_point_minimum_differential ( float differential)

Definition at line 1324 of file thermostat_climate.cpp.

◆ set_supplemental_cool_delta()

void esphome::thermostat::ThermostatClimate::set_supplemental_cool_delta ( float delta)

Definition at line 1331 of file thermostat_climate.cpp.

◆ set_supplemental_heat_delta()

void esphome::thermostat::ThermostatClimate::set_supplemental_heat_delta ( float delta)

Definition at line 1332 of file thermostat_climate.cpp.

◆ set_supports_auto()

void esphome::thermostat::ThermostatClimate::set_supports_auto ( bool supports_auto)

Definition at line 1384 of file thermostat_climate.cpp.

◆ set_supports_cool()

void esphome::thermostat::ThermostatClimate::set_supports_cool ( bool supports_cool)

Definition at line 1385 of file thermostat_climate.cpp.

◆ set_supports_dehumidification()

void esphome::thermostat::ThermostatClimate::set_supports_dehumidification ( bool supports_dehumidification)

Definition at line 1447 of file thermostat_climate.cpp.

◆ set_supports_dry()

void esphome::thermostat::ThermostatClimate::set_supports_dry ( bool supports_dry)

Definition at line 1386 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_auto()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_auto ( bool supports_fan_mode_auto)

Definition at line 1408 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_diffuse()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_diffuse ( bool supports_fan_mode_diffuse)

Definition at line 1426 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_focus()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_focus ( bool supports_fan_mode_focus)

Definition at line 1423 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_high()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_high ( bool supports_fan_mode_high)

Definition at line 1417 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_low()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_low ( bool supports_fan_mode_low)

Definition at line 1411 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_medium()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_medium ( bool supports_fan_mode_medium)

Definition at line 1414 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_middle()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_middle ( bool supports_fan_mode_middle)

Definition at line 1420 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_off()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_off ( bool supports_fan_mode_off)

Definition at line 1405 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_on()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_on ( bool supports_fan_mode_on)

Definition at line 1402 of file thermostat_climate.cpp.

◆ set_supports_fan_mode_quiet()

void esphome::thermostat::ThermostatClimate::set_supports_fan_mode_quiet ( bool supports_fan_mode_quiet)

Definition at line 1429 of file thermostat_climate.cpp.

◆ set_supports_fan_only()

void esphome::thermostat::ThermostatClimate::set_supports_fan_only ( bool supports_fan_only)

Definition at line 1387 of file thermostat_climate.cpp.

◆ set_supports_fan_only_action_uses_fan_mode_timer()

void esphome::thermostat::ThermostatClimate::set_supports_fan_only_action_uses_fan_mode_timer ( bool fan_only_action_uses_fan_mode_timer)

Definition at line 1388 of file thermostat_climate.cpp.

◆ set_supports_fan_only_cooling()

void esphome::thermostat::ThermostatClimate::set_supports_fan_only_cooling ( bool supports_fan_only_cooling)

Definition at line 1392 of file thermostat_climate.cpp.

◆ set_supports_fan_with_cooling()

void esphome::thermostat::ThermostatClimate::set_supports_fan_with_cooling ( bool supports_fan_with_cooling)

Definition at line 1395 of file thermostat_climate.cpp.

◆ set_supports_fan_with_heating()

void esphome::thermostat::ThermostatClimate::set_supports_fan_with_heating ( bool supports_fan_with_heating)

Definition at line 1398 of file thermostat_climate.cpp.

◆ set_supports_heat()

void esphome::thermostat::ThermostatClimate::set_supports_heat ( bool supports_heat)

Definition at line 1401 of file thermostat_climate.cpp.

◆ set_supports_heat_cool()

void esphome::thermostat::ThermostatClimate::set_supports_heat_cool ( bool supports_heat_cool)

Definition at line 1381 of file thermostat_climate.cpp.

◆ set_supports_humidification()

void esphome::thermostat::ThermostatClimate::set_supports_humidification ( bool supports_humidification)

Definition at line 1453 of file thermostat_climate.cpp.

◆ set_supports_swing_mode_both()

void esphome::thermostat::ThermostatClimate::set_supports_swing_mode_both ( bool supports_swing_mode_both)

Definition at line 1432 of file thermostat_climate.cpp.

◆ set_supports_swing_mode_horizontal()

void esphome::thermostat::ThermostatClimate::set_supports_swing_mode_horizontal ( bool supports_swing_mode_horizontal)

Definition at line 1438 of file thermostat_climate.cpp.

◆ set_supports_swing_mode_off()

void esphome::thermostat::ThermostatClimate::set_supports_swing_mode_off ( bool supports_swing_mode_off)

Definition at line 1435 of file thermostat_climate.cpp.

◆ set_supports_swing_mode_vertical()

void esphome::thermostat::ThermostatClimate::set_supports_swing_mode_vertical ( bool supports_swing_mode_vertical)

Definition at line 1441 of file thermostat_climate.cpp.

◆ set_supports_two_points()

void esphome::thermostat::ThermostatClimate::set_supports_two_points ( bool supports_two_points)

Definition at line 1444 of file thermostat_climate.cpp.

◆ set_use_startup_delay()

void esphome::thermostat::ThermostatClimate::set_use_startup_delay ( bool use_startup_delay)

Definition at line 1380 of file thermostat_climate.cpp.

◆ setup()

void esphome::thermostat::ThermostatClimate::setup ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 11 of file thermostat_climate.cpp.

◆ start_timer_()

void esphome::thermostat::ThermostatClimate::start_timer_ ( ThermostatClimateTimerIndex timer_index)
protected

Start/cancel/get status of climate action timer.

Definition at line 898 of file thermostat_climate.cpp.

◆ supplemental_cooling_required_()

bool esphome::thermostat::ThermostatClimate::supplemental_cooling_required_ ( )
protected

Definition at line 1087 of file thermostat_climate.cpp.

◆ supplemental_heating_required_()

bool esphome::thermostat::ThermostatClimate::supplemental_heating_required_ ( )
protected

Definition at line 1097 of file thermostat_climate.cpp.

◆ switch_to_action_()

void esphome::thermostat::ThermostatClimate::switch_to_action_ ( climate::ClimateAction action,
bool publish_state = true )
protected

Switch the climate device to the given climate action.

Definition at line 482 of file thermostat_climate.cpp.

◆ switch_to_fan_mode_()

void esphome::thermostat::ThermostatClimate::switch_to_fan_mode_ ( climate::ClimateFanMode fan_mode,
bool publish_state = true )
protected

Switch the climate device to the given climate fan mode.

Definition at line 693 of file thermostat_climate.cpp.

◆ switch_to_humidity_control_action_()

void esphome::thermostat::ThermostatClimate::switch_to_humidity_control_action_ ( HumidificationAction action)
protected

Definition at line 655 of file thermostat_climate.cpp.

◆ switch_to_mode_()

void esphome::thermostat::ThermostatClimate::switch_to_mode_ ( climate::ClimateMode mode,
bool publish_state = true )
protected

Switch the climate device to the given climate mode.

Definition at line 766 of file thermostat_climate.cpp.

◆ switch_to_supplemental_action_()

void esphome::thermostat::ThermostatClimate::switch_to_supplemental_action_ ( climate::ClimateAction action)
protected

Definition at line 601 of file thermostat_climate.cpp.

◆ switch_to_swing_mode_()

void esphome::thermostat::ThermostatClimate::switch_to_swing_mode_ ( climate::ClimateSwingMode swing_mode,
bool publish_state = true )
protected

Switch the climate device to the given climate swing mode.

Definition at line 815 of file thermostat_climate.cpp.

◆ timer_active_()

bool esphome::thermostat::ThermostatClimate::timer_active_ ( ThermostatClimateTimerIndex timer_index)
protected

Definition at line 911 of file thermostat_climate.cpp.

◆ timer_cbf_()

std::function< void()> esphome::thermostat::ThermostatClimate::timer_cbf_ ( ThermostatClimateTimerIndex timer_index)
protected

Definition at line 919 of file thermostat_climate.cpp.

◆ timer_duration_()

uint32_t esphome::thermostat::ThermostatClimate::timer_duration_ ( ThermostatClimateTimerIndex timer_index)
protected

Definition at line 915 of file thermostat_climate.cpp.

◆ traits()

climate::ClimateTraits esphome::thermostat::ThermostatClimate::traits ( )
overrideprotectedvirtual

Return the traits of this controller.

Implements esphome::climate::Climate.

Definition at line 265 of file thermostat_climate.cpp.

◆ trigger_supplemental_action_()

void esphome::thermostat::ThermostatClimate::trigger_supplemental_action_ ( )
protected

Definition at line 628 of file thermostat_climate.cpp.

◆ validate_target_humidity()

void esphome::thermostat::ThermostatClimate::validate_target_humidity ( )

Definition at line 200 of file thermostat_climate.cpp.

◆ validate_target_temperature()

void esphome::thermostat::ThermostatClimate::validate_target_temperature ( )

Definition at line 145 of file thermostat_climate.cpp.

◆ validate_target_temperature_high()

void esphome::thermostat::ThermostatClimate::validate_target_temperature_high ( )

Definition at line 186 of file thermostat_climate.cpp.

◆ validate_target_temperature_low()

void esphome::thermostat::ThermostatClimate::validate_target_temperature_low ( )

Definition at line 172 of file thermostat_climate.cpp.

◆ validate_target_temperatures()

void esphome::thermostat::ThermostatClimate::validate_target_temperatures ( bool pin_target_temperature_high)

Definition at line 158 of file thermostat_climate.cpp.

Field Documentation

◆ auto_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::auto_mode_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to auto mode.

In auto mode, the controller will enable heating/cooling as supported/necessary and switch to idle when the temperature is within the thresholds/set points.

Definition at line 449 of file thermostat_climate.h.

◆ cool_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::cool_action_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to cooling action/mode.

A null value for this attribute means that the controller has no cooling action For example electric heat, where only heating (power on) and not-heating (power off) is possible.

Definition at line 419 of file thermostat_climate.h.

◆ cool_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::cool_mode_trigger_ {nullptr}
protected

Definition at line 421 of file thermostat_climate.h.

◆ cooling_deadband_

float esphome::thermostat::ThermostatClimate::cooling_deadband_ {0}
protected

Hysteresis values used for computing climate actions.

Definition at line 397 of file thermostat_climate.h.

◆ cooling_max_runtime_exceeded_

bool esphome::thermostat::ThermostatClimate::cooling_max_runtime_exceeded_ {false}
protected

Flags indicating if maximum allowable run time was exceeded.

Definition at line 376 of file thermostat_climate.h.

◆ cooling_overrun_

float esphome::thermostat::ThermostatClimate::cooling_overrun_ {0}
protected

Definition at line 398 of file thermostat_climate.h.

◆ custom_preset_config_

FixedVector<CustomPresetEntry> esphome::thermostat::ThermostatClimate::custom_preset_config_ {}
protected

The set of custom preset configurations this thermostat supports (eg. "My Custom Preset")

Definition at line 551 of file thermostat_climate.h.

◆ default_preset_

climate::ClimatePreset esphome::thermostat::ThermostatClimate::default_preset_ {}
protected

Default standard preset to use on start up.

Definition at line 308 of file thermostat_climate.h.

◆ dry_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::dry_action_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to dry (dehumidification) mode.

In dry mode, the controller is assumed to have both heating and cooling disabled, although the system may use its cooling mechanism to achieve drying.

Definition at line 427 of file thermostat_climate.h.

◆ dry_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::dry_mode_trigger_ {nullptr}
protected

Definition at line 428 of file thermostat_climate.h.

◆ fan_mode_auto_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_auto_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "auto" mode.

Definition at line 471 of file thermostat_climate.h.

◆ fan_mode_diffuse_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_diffuse_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "diffuse" position.

Definition at line 489 of file thermostat_climate.h.

◆ fan_mode_focus_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_focus_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "focus" position.

Definition at line 486 of file thermostat_climate.h.

◆ fan_mode_high_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_high_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "high" speed.

Definition at line 480 of file thermostat_climate.h.

◆ fan_mode_low_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_low_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "low" speed.

Definition at line 474 of file thermostat_climate.h.

◆ fan_mode_medium_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_medium_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "medium" speed.

Definition at line 477 of file thermostat_climate.h.

◆ fan_mode_middle_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_middle_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "middle" position.

Definition at line 483 of file thermostat_climate.h.

◆ fan_mode_off_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_off_trigger_ {nullptr}
protected

The trigger to call when the controller should switch off the fan.

Definition at line 468 of file thermostat_climate.h.

◆ fan_mode_on_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_on_trigger_ {nullptr}
protected

The trigger to call when the controller should switch on the fan.

Definition at line 465 of file thermostat_climate.h.

◆ fan_mode_quiet_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_mode_quiet_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the fan to "quiet" position.

Definition at line 492 of file thermostat_climate.h.

◆ fan_only_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_only_action_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to fan-only action/mode.

In fan-only mode, the controller is assumed to have both heating and cooling disabled. The system should activate the fan only.

Definition at line 461 of file thermostat_climate.h.

◆ fan_only_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::fan_only_mode_trigger_ {nullptr}
protected

Definition at line 462 of file thermostat_climate.h.

◆ heat_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::heat_action_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to heating action/mode.

A null value for this attribute means that the controller has no heating action For example window blinds, where only cooling (blinds closed) and not-cooling (blinds open) is possible.

Definition at line 435 of file thermostat_climate.h.

◆ heat_cool_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::heat_cool_mode_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to heat/cool mode.

In heat/cool mode, the controller will enable heating/cooling as necessary and switch to idle when the temperature is within the thresholds/set points.

Definition at line 443 of file thermostat_climate.h.

◆ heat_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::heat_mode_trigger_ {nullptr}
protected

Definition at line 437 of file thermostat_climate.h.

◆ heating_deadband_

float esphome::thermostat::ThermostatClimate::heating_deadband_ {0}
protected

Definition at line 399 of file thermostat_climate.h.

◆ heating_max_runtime_exceeded_

bool esphome::thermostat::ThermostatClimate::heating_max_runtime_exceeded_ {false}
protected

Definition at line 377 of file thermostat_climate.h.

◆ heating_overrun_

float esphome::thermostat::ThermostatClimate::heating_overrun_ {0}
protected

Definition at line 400 of file thermostat_climate.h.

◆ humidification_action_

HumidificationAction esphome::thermostat::ThermostatClimate::humidification_action_ {THERMOSTAT_HUMIDITY_CONTROL_ACTION_NONE}
protected

The current humidification action.

Definition at line 305 of file thermostat_climate.h.

◆ humidity_change_trigger_

Trigger* esphome::thermostat::ThermostatClimate::humidity_change_trigger_ {nullptr}
protected

The trigger to call when the target humidity changes.

Definition at line 507 of file thermostat_climate.h.

◆ humidity_control_dehumidify_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::humidity_control_dehumidify_action_trigger_ {nullptr}
protected

The trigger to call when dehumidification is required.

Definition at line 516 of file thermostat_climate.h.

◆ humidity_control_humidify_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::humidity_control_humidify_action_trigger_ {nullptr}
protected

The trigger to call when humidification is required.

Definition at line 519 of file thermostat_climate.h.

◆ humidity_control_off_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::humidity_control_off_action_trigger_ {nullptr}
protected

The trigger to call when (de)humidification should stop.

Definition at line 522 of file thermostat_climate.h.

◆ humidity_hysteresis_

float esphome::thermostat::ThermostatClimate::humidity_hysteresis_ {0}
protected

Hysteresis values used for computing humidification action.

Definition at line 403 of file thermostat_climate.h.

◆ humidity_sensor_

sensor::Sensor* esphome::thermostat::ThermostatClimate::humidity_sensor_ {nullptr}
protected

The sensor used for getting the current humidity.

Definition at line 412 of file thermostat_climate.h.

◆ idle_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::idle_action_trigger_ {nullptr}
protected

The trigger to call when the controller should switch to idle action/off mode.

In these actions/modes, the controller is assumed to have both heating and cooling disabled.

Definition at line 454 of file thermostat_climate.h.

◆ min_timer_duration_

const uint8_t esphome::thermostat::ThermostatClimate::min_timer_duration_ {1}
protected

Minimum allowable duration in seconds for action timers.

Definition at line 292 of file thermostat_climate.h.

◆ off_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::off_mode_trigger_ {nullptr}
protected

Definition at line 455 of file thermostat_climate.h.

◆ on_boot_restore_from_

OnBootRestoreFrom esphome::thermostat::ThermostatClimate::on_boot_restore_from_ {OnBootRestoreFrom::MEMORY}
protected

If set to DEFAULT_PRESET then the default preset is always used.

When MEMORY prior state will attempt to be restored if possible

Definition at line 312 of file thermostat_climate.h.

◆ preset_change_trigger_

Trigger* esphome::thermostat::ThermostatClimate::preset_change_trigger_ {nullptr}
protected

The trigger to call when the preset mode changes.

Definition at line 513 of file thermostat_climate.h.

◆ preset_config_

FixedVector<PresetEntry> esphome::thermostat::ThermostatClimate::preset_config_ {}
protected

The set of standard preset configurations this thermostat supports (Eg. AWAY, ECO, etc)

Definition at line 549 of file thermostat_climate.h.

◆ prev_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::prev_action_trigger_ {nullptr}
protected

A reference to the trigger that was previously active.

This is so that the previous trigger can be stopped before enabling a new one for each climate category (mode, action, fan_mode, swing_mode).

Definition at line 528 of file thermostat_climate.h.

◆ prev_fan_mode_

climate::ClimateFanMode esphome::thermostat::ThermostatClimate::prev_fan_mode_ {climate::CLIMATE_FAN_ON}
protected

Store previously-known states.

These are used to determine when a trigger/action needs to be called

Definition at line 297 of file thermostat_climate.h.

◆ prev_fan_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::prev_fan_mode_trigger_ {nullptr}
protected

Definition at line 529 of file thermostat_climate.h.

◆ prev_humidity_control_trigger_

Trigger* esphome::thermostat::ThermostatClimate::prev_humidity_control_trigger_ {nullptr}
protected

Definition at line 532 of file thermostat_climate.h.

◆ prev_mode_

climate::ClimateMode esphome::thermostat::ThermostatClimate::prev_mode_ {climate::CLIMATE_MODE_OFF}
protected

Definition at line 298 of file thermostat_climate.h.

◆ prev_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::prev_mode_trigger_ {nullptr}
protected

Definition at line 530 of file thermostat_climate.h.

◆ prev_swing_mode_

climate::ClimateSwingMode esphome::thermostat::ThermostatClimate::prev_swing_mode_ {climate::CLIMATE_SWING_OFF}
protected

Definition at line 299 of file thermostat_climate.h.

◆ prev_swing_mode_trigger_

Trigger* esphome::thermostat::ThermostatClimate::prev_swing_mode_trigger_ {nullptr}
protected

Definition at line 531 of file thermostat_climate.h.

◆ prev_target_humidity_

float esphome::thermostat::ThermostatClimate::prev_target_humidity_ {NAN}
protected

Store previously-known humidity and temperatures.

These are used to determine when a temperature/humidity has changed

Definition at line 388 of file thermostat_climate.h.

◆ prev_target_temperature_

float esphome::thermostat::ThermostatClimate::prev_target_temperature_ {NAN}
protected

Definition at line 389 of file thermostat_climate.h.

◆ prev_target_temperature_high_

float esphome::thermostat::ThermostatClimate::prev_target_temperature_high_ {NAN}
protected

Definition at line 391 of file thermostat_climate.h.

◆ prev_target_temperature_low_

float esphome::thermostat::ThermostatClimate::prev_target_temperature_low_ {NAN}
protected

Definition at line 390 of file thermostat_climate.h.

◆ sensor_

sensor::Sensor* esphome::thermostat::ThermostatClimate::sensor_ {nullptr}
protected

The sensor used for getting the current temperature.

Definition at line 410 of file thermostat_climate.h.

◆ set_point_minimum_differential_

float esphome::thermostat::ThermostatClimate::set_point_minimum_differential_ {0}
protected

Minimum differential required between set points.

Definition at line 394 of file thermostat_climate.h.

◆ setup_complete_

bool esphome::thermostat::ThermostatClimate::setup_complete_ {false}
protected

setup_complete_ blocks modifying/resetting the temps immediately after boot

Definition at line 383 of file thermostat_climate.h.

◆ supplemental_action_

climate::ClimateAction esphome::thermostat::ThermostatClimate::supplemental_action_ {climate::CLIMATE_ACTION_OFF}
protected

The current supplemental action.

Definition at line 302 of file thermostat_climate.h.

◆ supplemental_cool_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::supplemental_cool_action_trigger_ {nullptr}
protected

Definition at line 420 of file thermostat_climate.h.

◆ supplemental_cool_delta_

float esphome::thermostat::ThermostatClimate::supplemental_cool_delta_ {0}
protected

Maximum allowable temperature deltas before engaging supplemental cooling/heating actions.

Definition at line 406 of file thermostat_climate.h.

◆ supplemental_heat_action_trigger_

Trigger* esphome::thermostat::ThermostatClimate::supplemental_heat_action_trigger_ {nullptr}
protected

Definition at line 436 of file thermostat_climate.h.

◆ supplemental_heat_delta_

float esphome::thermostat::ThermostatClimate::supplemental_heat_delta_ {0}
protected

Definition at line 407 of file thermostat_climate.h.

◆ supports_auto_

bool esphome::thermostat::ThermostatClimate::supports_auto_ {false}
protected

Whether the controller supports auto/cooling/drying/fanning/heating.

A false value for any given attribute means that the controller has no such action (for example a thermostat, where only heating and not-heating is possible).

Definition at line 318 of file thermostat_climate.h.

◆ supports_cool_

bool esphome::thermostat::ThermostatClimate::supports_cool_ {false}
protected

Definition at line 320 of file thermostat_climate.h.

◆ supports_dehumidification_

bool esphome::thermostat::ThermostatClimate::supports_dehumidification_ {false}
protected

Whether the controller supports dehumidification and/or humidification.

A false value means that the controller has no such support.

Definition at line 372 of file thermostat_climate.h.

◆ supports_dry_

bool esphome::thermostat::ThermostatClimate::supports_dry_ {false}
protected

Definition at line 321 of file thermostat_climate.h.

◆ supports_fan_mode_auto_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_auto_ {false}
protected

Whether the controller supports fan auto mode.

A false value for this attribute means that the controller has no fan-auto action (for example a thermostat, where independent control of the fan is not possible).

Definition at line 343 of file thermostat_climate.h.

◆ supports_fan_mode_diffuse_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_diffuse_ {false}
protected

Definition at line 353 of file thermostat_climate.h.

◆ supports_fan_mode_focus_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_focus_ {false}
protected

Definition at line 352 of file thermostat_climate.h.

◆ supports_fan_mode_high_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_high_ {false}
protected

Definition at line 350 of file thermostat_climate.h.

◆ supports_fan_mode_low_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_low_ {false}
protected

Whether the controller supports various fan speeds and/or positions.

A false value for any given attribute means that the controller has no such fan action.

Definition at line 348 of file thermostat_climate.h.

◆ supports_fan_mode_medium_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_medium_ {false}
protected

Definition at line 349 of file thermostat_climate.h.

◆ supports_fan_mode_middle_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_middle_ {false}
protected

Definition at line 351 of file thermostat_climate.h.

◆ supports_fan_mode_off_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_off_ {false}
protected

Definition at line 337 of file thermostat_climate.h.

◆ supports_fan_mode_on_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_on_ {false}
protected

Whether the controller supports turning on or off just the fan.

A false value for either attribute means that the controller has no fan on/off action (for example a thermostat, where independent control of the fan is not possible).

Definition at line 336 of file thermostat_climate.h.

◆ supports_fan_mode_quiet_

bool esphome::thermostat::ThermostatClimate::supports_fan_mode_quiet_ {false}
protected

Definition at line 354 of file thermostat_climate.h.

◆ supports_fan_only_

bool esphome::thermostat::ThermostatClimate::supports_fan_only_ {false}
protected

Definition at line 322 of file thermostat_climate.h.

◆ supports_fan_only_action_uses_fan_mode_timer_

bool esphome::thermostat::ThermostatClimate::supports_fan_only_action_uses_fan_mode_timer_ {false}
protected

Special flag – enables fan_modes to share timer with fan_only climate action.

Definition at line 325 of file thermostat_climate.h.

◆ supports_fan_only_cooling_

bool esphome::thermostat::ThermostatClimate::supports_fan_only_cooling_ {false}
protected

Special flag – enables fan to be switched based on target_temperature_high.

Definition at line 327 of file thermostat_climate.h.

◆ supports_fan_with_cooling_

bool esphome::thermostat::ThermostatClimate::supports_fan_with_cooling_ {false}
protected

Special flags – enables fan_only action to be called with cooling/heating actions.

Definition at line 329 of file thermostat_climate.h.

◆ supports_fan_with_heating_

bool esphome::thermostat::ThermostatClimate::supports_fan_with_heating_ {false}
protected

Definition at line 330 of file thermostat_climate.h.

◆ supports_heat_

bool esphome::thermostat::ThermostatClimate::supports_heat_ {false}
protected

Definition at line 323 of file thermostat_climate.h.

◆ supports_heat_cool_

bool esphome::thermostat::ThermostatClimate::supports_heat_cool_ {false}
protected

Definition at line 319 of file thermostat_climate.h.

◆ supports_humidification_

bool esphome::thermostat::ThermostatClimate::supports_humidification_ {false}
protected

Definition at line 373 of file thermostat_climate.h.

◆ supports_swing_mode_both_

bool esphome::thermostat::ThermostatClimate::supports_swing_mode_both_ {false}
protected

Whether the controller supports various swing modes.

A false value for any given attribute means that the controller has no such swing mode.

Definition at line 359 of file thermostat_climate.h.

◆ supports_swing_mode_horizontal_

bool esphome::thermostat::ThermostatClimate::supports_swing_mode_horizontal_ {false}
protected

Definition at line 361 of file thermostat_climate.h.

◆ supports_swing_mode_off_

bool esphome::thermostat::ThermostatClimate::supports_swing_mode_off_ {false}
protected

Definition at line 360 of file thermostat_climate.h.

◆ supports_swing_mode_vertical_

bool esphome::thermostat::ThermostatClimate::supports_swing_mode_vertical_ {false}
protected

Definition at line 362 of file thermostat_climate.h.

◆ supports_two_points_

bool esphome::thermostat::ThermostatClimate::supports_two_points_ {false}
protected

Whether the controller supports two set points.

A false value means that the controller has no such support.

Definition at line 367 of file thermostat_climate.h.

◆ swing_mode_both_trigger_

Trigger* esphome::thermostat::ThermostatClimate::swing_mode_both_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the swing mode to "both".

Definition at line 495 of file thermostat_climate.h.

◆ swing_mode_horizontal_trigger_

Trigger* esphome::thermostat::ThermostatClimate::swing_mode_horizontal_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the swing mode to "horizontal".

Definition at line 501 of file thermostat_climate.h.

◆ swing_mode_off_trigger_

Trigger* esphome::thermostat::ThermostatClimate::swing_mode_off_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the swing mode to "off".

Definition at line 498 of file thermostat_climate.h.

◆ swing_mode_vertical_trigger_

Trigger* esphome::thermostat::ThermostatClimate::swing_mode_vertical_trigger_ {nullptr}
protected

The trigger to call when the controller should switch the swing mode to "vertical".

Definition at line 504 of file thermostat_climate.h.

◆ temperature_change_trigger_

Trigger* esphome::thermostat::ThermostatClimate::temperature_change_trigger_ {nullptr}
protected

The trigger to call when the target temperature(s) change(es).

Definition at line 510 of file thermostat_climate.h.

◆ timer_

std::array<ThermostatClimateTimer, THERMOSTAT_TIMER_COUNT> esphome::thermostat::ThermostatClimate::timer_
protected
Initial value:
{
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::cooling_max_run_time_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::cooling_off_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::cooling_on_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::fan_mode_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::fanning_off_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::fanning_on_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::heating_max_run_time_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::heating_off_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::heating_on_timer_callback_, this)),
ThermostatClimateTimer(false, 0, 0, std::bind(&ThermostatClimate::idle_on_timer_callback_, this)),
}
void cooling_max_run_time_timer_callback_()
set_timeout() callbacks for various actions (see above)

Climate action timers.

Definition at line 535 of file thermostat_climate.h.

◆ use_startup_delay_

bool esphome::thermostat::ThermostatClimate::use_startup_delay_ {false}
protected

Used to start "off" delay timers at boot.

Definition at line 380 of file thermostat_climate.h.


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