Tuya 气候设备
tuya 气候平台根据 tuya 组件创建一个气候设备。
Tuya 气候需要先配置 Tuya 组件。
[11:45:14][C][tuya:041]: Tuya:[11:45:14][C][tuya:056]: Datapoint 1: switch (value: OFF)[11:45:14][C][tuya:058]: Datapoint 2: int value (value: 65)[11:45:14][C][tuya:058]: Datapoint 3: int value (value: 54)[11:45:14][C][tuya:062]: Datapoint 4: enum (value: 1)[11:45:14][C][tuya:056]: Datapoint 5: switch (value: OFF)[11:45:14][C][tuya:056]: Datapoint 6: switch (value: OFF)[11:45:14][C][tuya:062]: Datapoint 102: enum (value: 0)[11:45:14][C][tuya:062]: Datapoint 103: enum (value: 1)[11:45:14][C][tuya:074]: Product: 'N8bUqOZ8HBQjU0K02.0.1'在此控制器(BAC-002-ELW)上,数据点如下:
- 1 代表气候设备的开关状态。
- 2 代表目标温度。
- 3 代表当前温度。
- 4 代表定时模式,但目前尚无法在 ESPHome 中使用。
- 5 代表 ECO 模式开关。
- 6 代表儿童锁开关。(使用 Tuya 组件来控制此项)
- 102 代表 HVAC 模式(加热、冷却、仅风扇等)。
- 103 代表风扇速度(自动、低、中、高等)。
基于此,可以按如下方式创建气候设备:
climate: - platform: tuya name: "My Climate Device" switch_datapoint: 1 target_temperature_datapoint: 2 current_temperature_datapoint: 3 supports_heat: true supports_cool: true active_state: datapoint: 102 cooling_value: 0 heating_value: 1 fanonly_value: 2 fan_mode: datapoint: 103 auto_value: 0 high_value: 1 medium_value: 2 low_value: 3 preset: eco: datapoint: 5 temperature: 28-
supports_heat (可选,布尔值):指定设备是否具有加热模式。默认为
true。 -
supports_cool (可选,布尔值):指定设备是否具有冷却模式。默认为
false。 -
switch_datapoint (必填,整数):气候开关(设备开/关)的数据点 ID 编号。
-
active_state (可选):活动状态检测(或 HVAC 模式设置与报告)的配置。
-
preset (可选):预设的配置。
-
eco (可选):节能预设的配置。
- datapoint (必填,整数):节能操作的数据点 ID 编号。
- temperature (可选,整数):节能预设的温度设定值。
-
sleep (可选):睡眠预设的配置
- datapoint (必填,整数):睡眠操作的数据点 ID 编号。
-
-
swing_mode (可选):摆动(导风)模式的配置。
- vertical_datapoint (可选,整数):垂直摆动操作的数据点 ID 编号。
- horizontal_datapoint (可选,整数):水平摆动操作的数据点 ID 编号。
-
fan_mode (可选):风扇模式/风扇速度的配置。
- datapoint (必填,整数):风扇值状态的数据点 ID 编号。
- auto_value (可选,整数):风扇处于
auto速度时设备报告的数据点值。 - low_value (可选,整数):风扇处于
low速度时设备报告的数据点值。 - medium_value (可选,整数):风扇处于
medium速度时设备报告的数据点值。 - middle_value (可选,整数):风扇处于
middle速度时设备报告的数据点值。(如果你有一个Turbo选项,则可以设置为设备的high值。) - high_value (可选,整数):风扇处于
high速度时设备报告的数据点值。(有时也称为Turbo)。
-
heating_state_pin (可选,Pin):指示设备正在加热的输入引脚——见下文。仅在未配置 active_state_datapoint 时使用。
-
cooling_state_pin (可选,Pin):指示设备正在冷却的输入引脚——见下文。仅在未配置 active_state_datapoint 时使用。
-
target_temperature_datapoint (必填,整数):目标温度的数据点 ID 编号。
-
current_temperature_datapoint (必填,整数):当前温度的数据点 ID 编号。
-
temperature_multiplier (可选,浮点数):用于修改输入和输出温度值的乘数——见下文。
-
reports_fahrenheit (可选,布尔值):如果设备以华氏度报告温度,则设为
true。ESPHome 期望所有气候温度均以摄氏温度表示,否则在发布到 Home Assistant 时会发生意外的转换。默认为false。
如果设备的当前温度和目标温度使用不同的乘数,temperature_multiplier 可以替换为以下两项:
-
current_temperature_multiplier (可选,浮点数):用于修改当前温度值的乘数。
-
target_temperature_multiplier (可选,浮点数):用于修改目标温度值的乘数。
-
Climate 中的所有其他选项。
活动状态检测
Section titled “活动状态检测”部分 Tuya 气候设备没有用于设置和报告 HVAC 模式的数据点,而是使用数据点来报告其活动状态(当前动作)。在这种情况下,只需使用 active_state 配置即可。
如果你的设备使用数据点设置 HVAC 模式,但没有用于报告活动状态的数据点,可以修改硬件使继电器输出可以被 ESP 读取。有关所需修改的更多细节,请参见此讨论。然后可以使用 heating_state_pin 和/或 cooling_state_pin 配置变量来检测当前状态。
如果以上变量均未设置,活动状态将根据当前温度与目标温度的差值来推断:
- 如果 supports_heat 为
True且当前温度比目标温度低 1 °C 以上,则设备应处于加热状态。 - 如果 supports_cool 为
True且当前温度比目标温度高 1 °C 以上,则设备应处于冷却状态。
部分 Tuya 气候设备以乘数因子来报告温度。这是因为 MCU 仅使用 整数进行数据传输,要得到 .5 的温度值需要在 ESPHome 端除以 2。