116 if (restore.has_value()) {
117 restore->apply(
this);
126 auto call_mode =
call.get_mode();
127 if (call_mode.has_value())
128 this->
mode = *call_mode;
129 auto call_target =
call.get_target_temperature();
130 if (call_target.has_value())
151 switch (this->
mode) {
181 auto *data = transmit.get_data();
This class is used to encode all control actions on a climate device.
ClimateMode mode
The active mode of the climate device.
float target_temperature
The target temperature of the climate device.
float current_temperature
The current temperature of the climate device, as reported from the integration.
void publish_state()
Publish the state of the climate device, to be called from integrations.
optional< ClimateDeviceRestoreState > restore_state_()
Restore the state of the climate device, call this from your setup() method.
void set_visual_max_temperature(float visual_max_temperature)
void add_feature_flags(uint32_t feature_flags)
void set_visual_temperature_step(float temperature_step)
void set_visual_min_temperature(float visual_min_temperature)
void set_supported_modes(ClimateModeMask modes)
void add_supported_mode(ClimateMode mode)
void add_on_state_callback(F &&callback)
Add a callback that will be called every time a filtered value arrives.
float state
This member variable stores the last state that has passed through all filters.
void transmit_state_()
Transmit via IR the state of this climate controller.
climate::ClimateTraits traits() override
Return the traits of this controller.
void control(const climate::ClimateCall &call) override
Override control to change settings of the climate device.
remote_transmitter::RemoteTransmitterComponent * transmitter_
@ CLIMATE_SUPPORTS_CURRENT_TEMPERATURE
@ CLIMATE_MODE_HEAT
The climate device is set to heat to reach the target temperature.
@ CLIMATE_MODE_COOL
The climate device is set to cool to reach the target temperature.
@ CLIMATE_MODE_HEAT_COOL
The climate device is set to heat/cool to reach the target temperature.
@ CLIMATE_MODE_OFF
The climate device is off.
const uint8_t YASHIMA_BASE_BYTE1
const uint8_t YASHIMA_MODE_COOL_BYTE5
const uint8_t YASHIMA_MODE_AUTO_BYTE5
const uint8_t YASHIMA_TEMP_MIN
const uint16_t YASHIMA_HEADER_MARK
const uint8_t YASHIMA_BASE_BYTE8
const uint16_t YASHIMA_HEADER_SPACE
const uint32_t YASHIMA_GAP
ESPHOME_LOG_TAG(TAG, "yashima.climate")
const uint8_t YASHIMA_MODE_HEAT_BYTE5
const uint8_t YASHIMA_MODE_DRY_BYTE0
const uint8_t YASHIMA_FAN_HIGH_BYTE2
const uint8_t YASHIMA_TEMP_RANGE
const uint8_t YASHIMA_TEMP_MAX
const uint8_t YASHIMA_FAN_AUTO_BYTE2
const uint16_t YASHIMA_BITS
const uint16_t YASHIMA_BIT_MARK
const uint32_t YASHIMA_CARRIER_FREQUENCY
const uint8_t YASHIMA_BASE_BYTE3
const uint16_t YASHIMA_ZERO_SPACE
const uint8_t YASHIMA_MODE_OFF_BYTE5
const uint8_t YASHIMA_BASE_BYTE2
const uint8_t YASHIMA_BASE_BYTE5
const uint8_t YASHIMA_MODE_AUTO_BYTE0
const uint8_t YASHIMA_MODE_FAN_BYTE0
const uint8_t YASHIMA_MODE_OFF_BYTE0
const uint8_t YASHIMA_MODE_DRY_BYTE5
const uint8_t YASHIMA_BASE_BYTE4
const uint8_t YASHIMA_MODE_FAN_BYTE5
const uint16_t YASHIMA_STATE_LENGTH
const uint16_t YASHIMA_ONE_SPACE
const uint8_t YASHIMA_FAN_LOW_BYTE2
const uint8_t YASHIMA_FAN_MEDIUM_BYTE2
const uint8_t YASHIMA_BASE_BYTE6
const uint8_t YASHIMA_MODE_COOL_BYTE0
const uint8_t YASHIMA_TEMP_MAP_BYTE1[YASHIMA_TEMP_RANGE]
const uint8_t YASHIMA_BASE_BYTE7
const uint8_t YASHIMA_MODE_HEAT_BYTE0
const uint8_t YASHIMA_BASE_BYTE0
A bit is a mark (one_mark or zero_mark, both bit_mark unless set) and a space (one_space or zero_spac...