ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
friedrich.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace esphome::friedrich {
6
7// Extension point for other units: add new models here and branch on model_ where they differ.
8// The default must stay MW12Y3H so existing configurations do not change.
9enum class Model : uint8_t {
10 MODEL_MW12Y3H, // MW12Y3H built from a remote that only provided Fahrenheit
11};
12
14 public:
15 // The unit reports temperatures in Fahrenheit (see traits()); the unit only accepts even values.
16 static constexpr uint8_t TEMP_MIN = 60; // actually 64 for anything but heating
17 static constexpr uint8_t TEMP_MAX = 88;
18 static constexpr uint8_t TEMP_STEP = 2;
19 static constexpr uint8_t STATE_MESSAGE_LENGTH = 14;
20
26
27 void set_model(Model model) { this->model_ = model; }
28
29 protected:
30 void setup() override;
31 void dump_config() override;
34 void transmit_state() override;
36 void transmit_off_();
37
40
42 void transmit_(const uint8_t *data, uint8_t len);
43
45};
46
47} // namespace esphome::friedrich
ClimateIR(float minimum_temperature, float maximum_temperature, float temperature_step=1.0f, bool supports_dry=false, bool supports_fan_only=false, climate::ClimateFanModeMask fan_modes=climate::ClimateFanModeMask(), climate::ClimateSwingModeMask swing_modes=climate::ClimateSwingModeMask(), climate::ClimatePresetMask presets=climate::ClimatePresetMask())
Definition climate_ir.h:25
void transmit_state() override
Transmit via IR the state of this climate controller.
static constexpr uint8_t TEMP_STEP
Definition friedrich.h:18
static constexpr uint8_t TEMP_MAX
Definition friedrich.h:17
bool on_receive(remote_base::RemoteReceiveData src) override
Parse incoming message.
climate::ClimateTraits traits() override
void transmit_off_()
Transmit via IR power off command.
static constexpr uint8_t STATE_MESSAGE_LENGTH
Definition friedrich.h:19
static constexpr uint8_t TEMP_MIN
Definition friedrich.h:16
void transmit_(const uint8_t *data, uint8_t len)
Transmit message as IR pulses.
@ CLIMATE_SWING_OFF
The swing mode is set to Off.
@ CLIMATE_SWING_VERTICAL
The fan mode is set to Vertical.
@ CLIMATE_FAN_MEDIUM
The fan mode is set to Medium.
@ CLIMATE_FAN_AUTO
The fan mode is set to Auto.
@ CLIMATE_FAN_LOW
The fan mode is set to Low.
@ CLIMATE_FAN_QUIET
The fan mode is set to Quiet.
@ CLIMATE_FAN_HIGH
The fan mode is set to High.
const void size_t len
Definition hal.h:68
const void * src
Definition hal.h:68