ITHO Daalderop FAN RF remote with C1101 and ESP8266

I did mess up my ESPEasy 8266 that was used for this since ages, but as I’m working on some ESPHome things for work thought it was a nice ‘if it’s broken, lets fix it’ moment. For those of you interested in test-driving and/or improving: https://github.com/CoMPaTech/esphome_c1101 and yes it is based of off @jodur’s library and approach! (Tnx for all the usefull clues in there!)

It’s definitely not final or complete but thought I’d share it here or those with courage :slight_smile:

I love esphome and I tried your work compatech. but the first time compiling worked, and after that I saw you fix in a issue and tried that. but after the first time I can’t compile without errors.

I hope you continue you work and let many people enjoy it;)

Hi Remco,

Spotted your issue @ github … if you’re still allowed to edit it use 3 code-quotes above and below what you pasted (you only used 1 and on the same line) - that way github formats it better

Let me have a look!

Looks like https://github.com/esphome/issues/issues/683#issuecomment-535222063 might be helpful (although fix should be in a beta of esphome since 4 days)

@CoMPaTech, nice to see that there is effort to put this functionality in ESP-Home.
Why not exposing the component as a Fan? Esphome seems to support this component.
You only have to link the actions to the corrsponding commands of the fan.

Now why didn’t that click earlier @jodur :slight_smile: Great thought :stuck_out_tongue:

I’ll dive into https://developers.home-assistant.io/docs/en/entity_fan.html and esphome fan example right away

Unfortunately fan (within esphome) doesn’t seem to be customizable like switches can. But we can ‘fix’ that using templates in HA

Have a look at https://github.com/CoMPaTech/esphome_c1101
(added configuration example, but also updated the itho.yaml to handle the timers)

1 Like

I know there is not a template fan as with covers and switches in Esphome, but by reading the topics below, you could use the standard Esphome fan component with custom float output to create this functionallity. In this way you don’t need any configuration in Homeassistant.

https://github.com/esphome/feature-requests/issues/285
https://github.com/esphome/feature-requests/issues/60

Unless I’m misreading you, the first example is sort of what I’ve just build. The second example takes a known approach using custom outputs. It’s a viable option but it still works around building a proper (custom) fan in esphome.

I’d understand that - like Daniel mentioned in issue #1 on Github that you’d rather not have the additional switches present, but at some point in building your HA-home you’ll be switching to customizing your lovelace frontend anyway, so redundant switches will no longer be visisble. Going with a non-additional switch route: we’ll have to work around a few things in ESPhome I guess, as those examples actually read a value from the GPIO pin, which is different to how the communication with the C1101 works if I remember correctly from last year.

Very usefull manual. Is it still up to date? I was looking for a manual like this. i want to order the hardware. is it also possible with the esp CH340 CH340G NodeMcu V3?

Hi Dennis, i’ve still running the setup as described in the manual. I cannot confirm if the hardware you mentioned will work but give it a try. It wouldn’t cost you a fortune :wink:

Instead of running ESP Easy you could try the ESP home with the config of ComPaTech.

The advantage of all fully integrated fan on Esphome is, that you don’t have to configure anything in homeassistant and that you wil have a plug and play experience.

Sure you have to poke arround the fan-component as long there is no fan-template component, but it should not be that complex. You only have to create a custom float output and use this output in the standard fan component. Within the fan component you can define the float value for low, medium and high. In the custom float output you then decode the values and call the corresponding speedsettings. When i have some time left i wil setup my testboard up again to play with it. My current setup is still running the old esp-easy setup that i didn’t touch now for almost 2 years and i am migrating slowly all my esp-devices to esphome.

see also example: https://gist.github.com/quazzie/09ee3ef2c419ecbcf979a7410062481b

@jodur have a look at https://github.com/CoMPaTech/esphome_c1101_alt

There should be something better than using the text-sensor, but the good news is it works (as in … I can control the unit from a functional perspective this way).

Something to improve is divergence between ‘High’ and ‘Full’ (but that goes for the original repo as well) and the difference between ‘off’ and ‘low’ - as my unit doesn’t have an ‘off’ (besides unplugging) :slight_smile:

Let me know if this is what your are looking for!

@Denman2103 @Arnout YMMV as usual, but it’s just another esp-board - be careful about ordering the top board though as I recall there are different versions (433 vs 868 Mhz) out there and depending on your unit you’ll need the other one.

I don’t really recall when they stopped using the 433, but my old ITHO had that and we could throw away all remotes. So just by assumption (and no guarantees on anything) the units over the last years should be 868’s … then again, like Arnout mentioned, it’s not the biggest fortune giveaway - it might be the waiting time :slight_smile:

@CoMPaTech, this is exaclty what i meant. I wil start playing arround with it as soon as i have my bread-bord with wemos and c1101 setup up again. Thnxs!

@jodur your welcome, but I recon it needs some fiddling (and beware of ‘full’ vs ‘high’ - not sure if all units talk the same language on that particular part)

Hi All,

I used the tutorial from this LINK

I have created my Wemos D1 + C1101 module. I can give the commands as follow to my ITHO Fan:

http://192.168.100.71/control?cmd=STATE,1 # low
http://192.168.100.71/control?cmd=STATE,2 # medium
http://192.168.100.71/control?cmd=STATE,3 # high
http://192.168.100.71/control?cmd=STATE,13 #high timer 10 min
http://192.168.100.71/control?cmd=STATE,23 #high timer 20 min
http://192.168.100.71/control?cmd=STATE,33 #high timer 30 min

Only what I not get work is the “ITHO Fan Status FAN Device”
I only see a switch to turn off the Fan. I cant select speed

Can someone help me with this?

ITHO Timer Sensor

- platform: mqtt
  name: "ITHO Timer"
  state_topic: "ITHO/Fan/Timer"
  value_template: "{{value}}"
  unit_of_measurement: 's'

ITHO Speed Sensor

- platform: mqtt
  name: "ITHO Speed"
  state_topic: "ITHO/Fan/State"
  value_template: >-
    {% if value|float == 0 %}
      Standby
    {% elif value|float  == 1 %}
      Laag
    {% elif value|float  == 2 %}
      Medium
    {% elif value|float  == 3 %}
      Hoog
    {% else %}
      Hoog(T)
    {% endif %}

ITHO Fan Status FAN Device

- platform: mqtt
  name: "ITHO Afzuig"
  state_topic: "ITHO/Fan/State"
  command_topic: "ITHO/Fan/cmd"
  speed_state_topic: "ITHO/Fan/State"
  speed_command_topic: "ITHO/Fan/cmd"
  qos: 0
  payload_on: "State 1"
  payload_off: "State 0"
  payload_low_speed: "State 1"
  payload_medium_speed: "State 2"
  payload_high_speed: "State 3"
  speeds:
    - low
    - medium
    - high
  state_value_template: >-
    {% if value|float == 0 %}
      State 0
    {% else %}
      State 1
    {% endif %}
  speed_value_template: >-
    {% if value|float == 0 %}
      State 0
    {% elif value|float == 1 %}
      State 1
    {% elif value|float == 2 %}
      State 2
    {% else %}
      State 3
    {% endif %}

For all those who have an older ITHO device like me (2007) I found the solution in this repo.

1 Like

@CoMPaTech,

I finally got my breadbord up again with an ESP and a C1101 and was able to fiddle arround with the code you provided, to make a ESPHOME version.

I slightly modified it, to add back the missing features it had against the original ESPEASY plugin.

Added:

  • Timer countdown, when a timerfunction is called
  • LastID, so you are able to see which control device issued the last command (Toilet, Kitchen, Bathroom etc… (max. 3 devices is implemented, but could easily be adjuster to more devices)

https://github.com/jodur/ESPHOME-ITHO

3 Likes

Nice! Good improvements!