diff --git a/Sonoff-iFan03.md b/Sonoff-iFan03.md index b68327e7..2c817e96 100644 --- a/Sonoff-iFan03.md +++ b/Sonoff-iFan03.md @@ -39,4 +39,85 @@ To pair the remote hold down any button on the remote and apply power to the iFa ## Incorrect Fan Speed for US based Ceiling Fans -To correct the fan speeds for US based ceiling fans you need to remove the existing capacitors from the iFan03 (see picture 3 above) and replace them with equivalently electrically rated 5uF (microfarad) capacitors. **Do NOT do this if you are not comfortable using a soldering iron as improperly performing this action could increase the risk of bodily injury or property damage** \ No newline at end of file +To correct the fan speeds for US based ceiling fans you need to remove the existing capacitors from the iFan03 (see picture 3 above) and replace them with equivalently electrically rated 5uF (microfarad) capacitors. **Do NOT do this if you are not comfortable using a soldering iron as improperly performing this action could increase the risk of bodily injury or property damage** + +### HomeAssistant MQTT Fan config + +Credit to [finity](https://community.home-assistant.io/t/sonoff-ifan02-tasmota-mqtt-fan/64083/13) + +There are two different configurations that need to be used depending on the method of use in Home Assistant. + +To use the iFan03 along with the [Fan Control Entity Row](https://github.com/finity69x2/fan-control-entity-row) then use the configuration below: + +``` + - platform: mqtt + name: "iFan03-2 Test Fan" + command_topic: "cmnd/iFan03-2/FanSpeed" + speed_command_topic: "cmnd/iFan03-2/FanSpeed" + state_topic: "stat/iFan03-2/RESULT" + speed_state_topic: "stat/iFan03-2/RESULT" + state_value_template: > + {% if value_json.FanSpeed is defined %} + {% if value_json.FanSpeed == 0 -%}0{%- elif value_json.FanSpeed > 0 -%}4{%- endif %} + {% else %} + {% if states.fan.ifan03_2_test_fan.state == 'off' -%}0{%- elif states.fan.ifan03_2_test_fan.state == 'on' -%}4{%- endif %} + {% endif %} + speed_value_template: "{{ value_json.FanSpeed }}" + availability_topic: tele/iFan03-2/LWT + payload_off: "0" + payload_on: "4" + payload_low_speed: "1" + payload_medium_speed: "2" + payload_high_speed: "3" + payload_available: Online + payload_not_available: Offline + speeds: + - off + - low + - medium + - high +``` + +If you will not be using the Fan Control Row and will be using the regular toggle to control off & on and using the pop up "more info" window to control the speeds then use this configuration: + +``` + - platform: mqtt + name: "iFan03-2 Test Fan Popup" + command_topic: "cmnd/iFan03-2/FanSpeed" + speed_command_topic: "cmnd/iFan03-2/FanSpeed" + state_topic: "stat/iFan03-2/RESULT" + speed_state_topic: "stat/iFan03-2/RESULT" + state_value_template: > + {% if value_json.FanSpeed is defined %} + {% if value_json.FanSpeed == 0 -%}0{%- elif value_json.FanSpeed > 0 -%}ON{%- endif %} + {% else %} + {% if states.fan.ifan03_2_test_fan_popup.state == 'off' -%}0{%- elif states.fan.ifan03_2_test_fan_popup.state == 'on' -%}ON{%- endif %} + {% endif %} + speed_value_template: "{{ value_json.FanSpeed }}" + availability_topic: tele/iFan03-2/LWT + payload_off: "0" + payload_on: "ON" + payload_low_speed: "1" + payload_medium_speed: "2" + payload_high_speed: "3" + payload_available: Online + payload_not_available: Offline + speeds: + - off + - low + - medium + - high +``` + +### HomeAssistant MQTT switch config for fan light + +``` + - platform: mqtt + name: "iFan03-2 Light" + command_topic: "cmnd/iFan03-2/power1" + state_topic: "stat/iFan03-2/POWER1" + qos: 1 + payload_on: "ON" + payload_off: "OFF" + retain: false +``` \ No newline at end of file