iFan02 and iFan03 stopped working

Hi,

I have been using iFan02/03 successfully in HA for quite some time. After our winter when I wanted to use it the first time it “stopped” working. I assume an update caused something to stop work.

image

Above image is from UI. Clicking on any of the speeds have no results.

Through the Tasmota UI i switched on a fan and then from HA going into the fan details from the UI it reports that the fan is on. See below image.

image

I am using the fan-control-entity-row resource in Lovelace.

Thanks

I assume you are on the latest version of HA?

if so then the fan control schema has changed. It no longer uses speeds to set the speed of the fan. It now uses percentages to set the speed.

And so for that reason the fan control entity row will no longer work because it it uses the fan.set_speed service (which is deprecated).

If all that is true then you need to change to using the fan percent button row

However, depending on how you set up the fans in HA (discovery or manual set up of an MQTT fan) then you might also need to change the fan configuration in HA to use the new control schema.

Here is a thread I made for that:

hopefully you can glean the info you need out of that.

Firstly thank you for your assistance it is greatly appreciated. I followed your steps and have a final question.

In the details using the dropdown i can now select the speeds :slight_smile:

In lovelace the buttons do not interact when clicking on it using fan-percent-button-row resource?

Thanks

I haven’t updated yet to the latest HA but it’s my understanding that the speed_list should no longer be working. And if you have converted your fan to using percents then there should no longer be any drop down showing a speed list.

Are you sure you converted to the new percentages and are no longer using the speeds?

if you are still using old speeds (low, med, high) the the fan percent button row won’t work.

if you are using the fan control entity row it won’t work with the fan using percents as the speeds.

So I guess you need to figure out which control mode your fan is actually using before we can move any further.

Also unless you tag me in your post or click the “reply” button from one of my posts I don’t get a notification that you replied to me.

@finity please find my response.

I use MQTT to register the devices.

I attached a few images to illustrate my setup. Apologies - doing this from a tablet so not a well structured reply.

You are using the preset mode version of the mqtt fan configuration.

I originally came up with that version when it looked like we would be able to use speed names as preset modes. But I’m honestly not sure if that is usable as it is now. I think I remember seeing that named speeds are precluded being used as preset modes.

But even if they still work for presets you can’t use the percent button row with using the preset mode version of the fan. you need to use the “fan preset button row” to control a fan using presets.

Feel free to use that plugin and test it as your fan is set up now (using presets) and let me know if it still works since I haven’t had the chance to test it and just assumed it no longer worked that way.

It will definitely help others out to know so let us know either way if it works or not.

If not then you need to change your fan config to use the percent control model and use the percent button row…

Hi @finity , i reverted to full precent implementation. All is working fine now!

Thanks for your assistance - it is really appreciated.

1 Like

I went off all willy-nilly and this works with the alexxsonoff integration with ifan03s stock firmware. Not that it really matters much, but making some progress. and might as well share it, since its a big mess/ lol

fans2

scripts:

kitchen_fan_off:
  sequence:
  - service: fan.turn_off
    data:
      entity_id: fan.kitchen
kitchen_fan_on:
  sequence:
  - service: fan.turn_on
    data:
      entity_id: fan.kitchen
kitchen_fan_set_speed:
  sequence:
  - service: fan.set_percentage
    data:
      entity_id:
      - fan.kitchen
      - fan.living
      percentage: '{{percentage}}'
  - service: input_select.select_option
    data:
      entity_id: input_select.kitchen_fan_speed
      option: '{{percentage}}'


group_fan_off:
  sequence:
  - service: fan.turn_off
    entity_id:
    - fan.kitchen
    - fan.living
  - service: input_boolean.turn_off
    entity_id: input_boolean.group_fan_state
group_fan_on:
  sequence:
  - service: fan.turn_on
    entity_id:
    - fan.kitchen
    - fan.living
  - service: input_boolean.turn_on
    entity_id: input_boolean.group_fan_state
group_fan_set_speed:
  sequence:
  - service: fan.turn_on
    entity_id:
    - fan.kitchen
    - fan.living
  - service: input_boolean.turn_on
    entity_id: input_boolean.group_fan_state
  - service: fan.set_percentage
    data:
      entity_id:
      - fan.kitchen
      - fan.living
      percentage: '{{percentage}}'
  - service: input_select.select_option
    data:
      entity_id: input_select.group_fan_set_speed
      option: '{{percentage}}'

input_select:

kitchen_fan_speed:
  options:
    - "0"
    - "33"
    - "66"
    - "100"

group_fan_set_speed:
  options:
    - "0"
    - "33"
    - "66"
    - "100"

the entity names are off in places here cause i just grabbed the relevant coding, so just use logic and rename them if anyone trys using this code.

1 Like