mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-25 10:17:23 +00:00
Revert "Revert "Support preset modes and percentage for mqtt fan (#17048)""
This reverts commit 29ac6acf328e622538609f40a4e410254edd21d1.
This commit is contained in:
parent
f44ec4c702
commit
5b68cc0898
@ -160,6 +160,9 @@ Supported abbreviations:
|
|||||||
'osc_cmd_t': 'oscillation_command_topic',
|
'osc_cmd_t': 'oscillation_command_topic',
|
||||||
'osc_stat_t': 'oscillation_state_topic',
|
'osc_stat_t': 'oscillation_state_topic',
|
||||||
'osc_val_tpl': 'oscillation_value_template',
|
'osc_val_tpl': 'oscillation_value_template',
|
||||||
|
'pct_cmd_t': 'percentage_command_topic',
|
||||||
|
'pct_stat_t': 'percentage_state_topic',
|
||||||
|
'pct_val_tpl': 'percentage_value_template',
|
||||||
'pl': 'payload',
|
'pl': 'payload',
|
||||||
'pl_arm_away': 'payload_arm_away',
|
'pl_arm_away': 'payload_arm_away',
|
||||||
'pl_arm_home': 'payload_arm_home',
|
'pl_arm_home': 'payload_arm_home',
|
||||||
@ -196,6 +199,10 @@ Supported abbreviations:
|
|||||||
'pow_cmd_t': 'power_command_topic',
|
'pow_cmd_t': 'power_command_topic',
|
||||||
'pow_stat_t': 'power_state_topic',
|
'pow_stat_t': 'power_state_topic',
|
||||||
'pow_stat_tpl': 'power_state_template',
|
'pow_stat_tpl': 'power_state_template',
|
||||||
|
'pr_mode_cmd_t': 'preset_mode_command_topic',
|
||||||
|
'pr_mode_stat_t': 'preset_mode_state_topic',
|
||||||
|
'pr_mode_val_tpl': 'preset_mode_value_template',
|
||||||
|
'pr_modes': 'preset_modes',
|
||||||
'r_tpl': 'red_template',
|
'r_tpl': 'red_template',
|
||||||
'ret': 'retain',
|
'ret': 'retain',
|
||||||
'rgb_cmd_tpl': 'rgb_command_template',
|
'rgb_cmd_tpl': 'rgb_command_template',
|
||||||
@ -211,6 +218,8 @@ Supported abbreviations:
|
|||||||
'pos_tpl': 'position_template',
|
'pos_tpl': 'position_template',
|
||||||
'spd_cmd_t': 'speed_command_topic',
|
'spd_cmd_t': 'speed_command_topic',
|
||||||
'spd_stat_t': 'speed_state_topic',
|
'spd_stat_t': 'speed_state_topic',
|
||||||
|
'spd_rng_min': 'speed_range_min',
|
||||||
|
'spd_rng_max': 'speed_range_max',
|
||||||
'spd_val_tpl': 'speed_value_template',
|
'spd_val_tpl': 'speed_value_template',
|
||||||
'spds': 'speeds',
|
'spds': 'speeds',
|
||||||
'src_type': 'source_type',
|
'src_type': 'source_type',
|
||||||
|
@ -132,21 +132,6 @@ payload_available:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: online
|
default: online
|
||||||
payload_high_speed:
|
|
||||||
description: The payload that represents the fan's high speed.
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
default: high
|
|
||||||
payload_low_speed:
|
|
||||||
description: The payload that represents the fan's low speed.
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
default: low
|
|
||||||
payload_medium_speed:
|
|
||||||
description: The payload that represents the fan's medium speed.
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
default: medium
|
|
||||||
payload_not_available:
|
payload_not_available:
|
||||||
description: The payload that represents the unavailable state.
|
description: The payload that represents the unavailable state.
|
||||||
required: false
|
required: false
|
||||||
@ -172,6 +157,35 @@ payload_oscillation_on:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: oscillate_on
|
default: oscillate_on
|
||||||
|
percentage_command_topic:
|
||||||
|
description: The MQTT topic to publish commands to change the fan speed state based on a percentage.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
percentage_state_topic:
|
||||||
|
description: The MQTT topic subscribed to receive fan speed based on percentage.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
percentage_value_template:
|
||||||
|
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from fan percentage speed.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
preset_mode_command_topic:
|
||||||
|
description: The MQTT topic to publish commands to change the preset mode.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
preset_mode_state_topic:
|
||||||
|
description: The MQTT topic to publish commands to change the preset mode.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
preset_mode_value_template:
|
||||||
|
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the preset_mode payload.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
preset_modes:
|
||||||
|
description: List of preset modes this fan is capable of running at. Common examples include `auto`, `smart`, `whoosh`, `eco` and `breeze`.
|
||||||
|
required: false
|
||||||
|
type: [list]
|
||||||
|
default: []
|
||||||
qos:
|
qos:
|
||||||
description: The maximum QoS level of the state topic.
|
description: The maximum QoS level of the state topic.
|
||||||
required: false
|
required: false
|
||||||
@ -182,22 +196,16 @@ retain:
|
|||||||
required: false
|
required: false
|
||||||
type: boolean
|
type: boolean
|
||||||
default: true
|
default: true
|
||||||
speed_command_topic:
|
speed_range_min:
|
||||||
description: The MQTT topic to publish commands to change speed state.
|
description: The minimum of numeric output range (`off` not included, so `speed_range_min` - 1 represents 0%).
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: integer
|
||||||
speed_state_topic:
|
default: 1
|
||||||
description: The MQTT topic subscribed to receive speed state updates.
|
speed_range_max:
|
||||||
|
description: The maximum of numeric output range (representing 100%).
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: integer
|
||||||
speed_value_template:
|
default: 100
|
||||||
description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the speed payload."
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
speeds:
|
|
||||||
description: "List of speeds this fan is capable of running at. Valid entries are `off`, `low`, `medium` and `high`."
|
|
||||||
required: false
|
|
||||||
type: [string, list]
|
|
||||||
state_topic:
|
state_topic:
|
||||||
description: The MQTT topic subscribed to receive state updates.
|
description: The MQTT topic subscribed to receive state updates.
|
||||||
required: false
|
required: false
|
||||||
@ -224,10 +232,10 @@ In this section you find some real-life examples of how to use this fan.
|
|||||||
|
|
||||||
### Full configuration
|
### Full configuration
|
||||||
|
|
||||||
The example below shows a full configuration for a MQTT fan.
|
The example below shows a full configuration for a MQTT fan using percentage and preset modes.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example using percentage based speeds with preset modes configuration.yaml
|
||||||
fan:
|
fan:
|
||||||
- platform: mqtt
|
- platform: mqtt
|
||||||
name: "Bedroom Fan"
|
name: "Bedroom Fan"
|
||||||
@ -235,19 +243,21 @@ fan:
|
|||||||
command_topic: "bedroom_fan/on/set"
|
command_topic: "bedroom_fan/on/set"
|
||||||
oscillation_state_topic: "bedroom_fan/oscillation/state"
|
oscillation_state_topic: "bedroom_fan/oscillation/state"
|
||||||
oscillation_command_topic: "bedroom_fan/oscillation/set"
|
oscillation_command_topic: "bedroom_fan/oscillation/set"
|
||||||
speed_state_topic: "bedroom_fan/speed/state"
|
percentage_state_topic: "bedroom_fan/speed/percentage_state"
|
||||||
speed_command_topic: "bedroom_fan/speed/set"
|
percentage_command_topic: "bedroom_fan/speed/percentage"
|
||||||
|
preset_mode_state_topic: "bedroom_fan/speed/preset_mode_state"
|
||||||
|
preset_mode_command_topic: "bedroom_fan/speed/preset_mode"
|
||||||
|
preset_modes:
|
||||||
|
- "auto"
|
||||||
|
- "smart"
|
||||||
|
- "whoosh"
|
||||||
|
- "eco"
|
||||||
|
- "breeze"
|
||||||
qos: 0
|
qos: 0
|
||||||
payload_on: "true"
|
payload_on: "true"
|
||||||
payload_off: "false"
|
payload_off: "false"
|
||||||
payload_oscillation_on: "true"
|
payload_oscillation_on: "true"
|
||||||
payload_oscillation_off: "false"
|
payload_oscillation_off: "false"
|
||||||
payload_low_speed: "low"
|
speed_range_min: 1
|
||||||
payload_medium_speed: "medium"
|
speed_range_max: 100
|
||||||
payload_high_speed: "high"
|
|
||||||
speeds:
|
|
||||||
- "off"
|
|
||||||
- low
|
|
||||||
- medium
|
|
||||||
- high
|
|
||||||
```
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user